Centos 7にファイアウォールをインストールして設定するスクリプトを作成しました。
ほとんどのルールは正常に動作しますが、nmapスキャンを実行すると、SSHポートはまだ「open」と表示されます。大きな問題ではなく、ポートを変更することはあいまいなセキュリティにすぎないことを知っていますが、その理由を知りたいです。
firewall-cmd --zone=dmz --add-masquerade --permanent
firewall-cmd --zone=dmz --add-interface=eth0
firewall-cmd --zone=internal --add-port=${MONGO}/tcp --permanent
firewall-cmd --zone=internal --add-port=${CHAT}/tcp --permanent
firewall-cmd --zone=internal --add-port=${NFS_CLIENT}/tcp --permanent
firewall-cmd --zone=internal --add-port=${NODE_EX}/tcp --permanent
firewall-cmd --zone=dmz --add-forward- port=port=${22}:proto=tcp:toport=${22123} --permanent
firewall-cmd --zone=dmz --add-port=${RSSH}/tcp --permanent --permanent
Starting Nmap 7.40 ( https://nmap.org ) at 2017-10-04 17:33 BST
Nmap scan report for
Host is up (0.45s latency).
Not shown: 997 filtered ports
PORT STATE SERVICE
22/tcp open ssh
8083/tcp open us-srv
8086/tcp closed d-s-n
sudo firewall-cmd --list-all
dmz (active)
target: default
icmp-block-inversion: no
interfaces: eth0 eth1
sources:
services:
ports: 22123/tcp 8086/tcp 8083/tcp
protocols:
masquerade: yes
forward-ports: port=22:proto=tcp:toport=22123:toaddr=
source-ports:
icmp-blocks:
rich rules:
すべてのアイデアを歓迎します。ありがとう
答え1
転送中のポートを削除する必要がありますが、ポートを転送しても実際にポートは閉じません。次のコードを試してください。
sudo firewall-cmd --permanent --remove-port=22/tcp
firewall-cmd --reload
に電話をかけると、sudo firewall-cmd --list-all
削除したポートはリストされたポートの下に表示されなくなり、転送は引き続き機能します。残念ながら、ポートはまだopenとしてマークされていますnmap
。ポート転送を削除しないと、これを防ぐことは不可能だと思います。解決策を見つけたら、答えを更新します。