sedを使用してCSF-LFDポートを安全に変更する

sedを使用してCSF-LFDポートを安全に変更する

説明のとおりCSF-LFDをインストールしました。ここ。次/etc/csf/csf.confの2つのコードブロックがあります。

# Allow incoming TCP ports
TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995,2077,2078,2079,2080,2082,2083,2086,2087,2095,2096"

# Allow outgoing TCP ports
TCP_OUT = "20,21,22,25,37,43,53,80,110,113,443,587,873,993,995,2086,2087,2089,2703"

"22, 80, 443, 9000"私のNginxサーバー環境がこれらのポートからの着信データのみを許可するように、2つのポートグループを変更する必要があります。

最良かつ安全な方法は何ですかsed

私はこれが良いアプローチだと思います。

sed -i 's/^TCP_IN = .*/TCP_IN = "22, 80, 443, 9000"/' /etc/csf/csf.conf
sed -i 's/^TCP_OUT = .*/TCP_OUT = "22, 80, 443, 9000"/' /etc/csf/csf.conf

ただし、csf.confファイルが大きく変更可能性が高いことを考慮すると、より良いアプローチがある可能性があります。

答え1

一度だけ通過すれば完了です。sed:

sed -Ei 's/^(TCP_(IN|OUT) = ).*/\1"22, 80, 443, 9000"/' /etc/csf/csf.conf
  • (IN|OUT)IN- 代替グループ、一致、または部分OUT文字列の正規表現
  • \1- 逆参照、最初のキャプチャされたグループ参照(...)

関連情報