リバースプロキシを立てるとき、つい :8080 のように書いてしまいがちですが、
これだと全インタフェースで待ち受けます。外から直接叩ける必要がないなら、
bind で絞っておいたほうが安全です。
localhost:8080 {
bind 127.0.0.1
root * /var/www/html
file_server
}
実際にどこで待ち受けているかは ss で確認できます。
ss -lntp | grep 8080
0.0.0.0:8080 なら全インタフェース、
127.0.0.1:8080 ならローカル限定です。
設定を変えたあとは毎回これを見るようにしています。
前段に別のものが立っている構成だと、後段を直接叩ける必要はありません。 開いているポートは、そのまま攻撃面になります。使っていないものは閉じる、 というだけの話なのですが、設定ファイルをコピーして使い回すと うっかり残っていることが多いです。
一度、別ホストから直接叩けてしまうことに後から気づいて、
慌てて直したことがあります。以降は ss の結果を
設定とセットで残すようにしました。