私はRHELバージョン6.4サーバーのファイアウォールを設定していますが、目的はサービスの種類に関係なく、リモートデバイスがTCPポート6162に接続できるようにすることです。
iptablesルールは次のとおりです(iptables -L --line-numbers
)。 iptablesサービスが再起動されました。
num target prot opt source destination
1 ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
2 ACCEPT icmp -- anywhere anywhere
3 ACCEPT all -- anywhere anywhere
4 ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
5 ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:6160
6 ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:patrol-coll
Chain FORWARD (policy ACCEPT)
num target prot opt source destination
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
sytem-config-firewall
また、下図のように希望のポートを設定しました。
奇妙なことは次のとおりです。
ファイアウォール/iptablesをどのように設定しても、ポート6162は開きません。 RHEL 6.4サーバーの同じIPサブネットにあるWindows / Linuxリモートホスト上のTelnetクライアントを使用してテストされました。ポート6162への接続は拒否されますが、他のポート(ポート6160など)は機能します。
TCP ポート 6162 は常に「patrol-coll」のように見えますが、厳密には「patrol-coll」だけでなく、あらゆる種類のサービスがポート 6162 に接続できるようにしたいと思います。サービスの種類が接続に影響するかどうかわかりません...
誰でもOS側の接続の問題を解決するためのヒントをいくつか提供できますか?
注1:の出力はnetstat -tulpn
以下の通りです。
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 2538/rpcbind
tcp 0 0 192.9.110.1:1521 0.0.0.0:* LISTEN 4806/tnslsnr
tcp 0 0 0.0.0.0:37426 0.0.0.0:* LISTEN 4493/ora_d000_SOGOE
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2917/sshd
tcp 0 0 0.0.0.0:46775 0.0.0.0:* LISTEN 4686/ora_d000_SOGOL
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 2737/cupsd
tcp 0 0 127.0.0.1:10808 0.0.0.0:* LISTEN 3126/veeamservice
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3007/master
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 4046/sshd
tcp 0 0 127.0.0.1:199 0.0.0.0:* LISTEN 2869/snmpd
tcp 0 0 0.0.0.0:37449 0.0.0.0:* LISTEN 2657/rpc.statd
tcp 0 0 :::111 :::* LISTEN 2538/rpcbind
tcp 0 0 :::6160 :::* LISTEN 2886/veeamdeploymen
tcp 0 0 :::40976 :::* LISTEN 2657/rpc.statd
tcp 0 0 :::22 :::* LISTEN 2917/sshd
tcp 0 0 ::1:631 :::* LISTEN 2737/cupsd
tcp 0 0 ::1:25 :::* LISTEN 3007/master
tcp 0 0 ::1:6010 :::* LISTEN 4046/sshd
udp 0 0 0.0.0.0:111 0.0.0.0:* 2538/rpcbind
udp 0 0 127.0.0.1:2547 0.0.0.0:* 4495/ora_s000_SOGOE
udp 0 0 0.0.0.0:631 0.0.0.0:* 2737/cupsd
udp 0 0 0.0.0.0:1017 0.0.0.0:* 2538/rpcbind
udp 0 0 127.0.0.1:13179 0.0.0.0:* 4660/ora_pmon_SOGOL
udp 0 0 10.50.89.26:123 0.0.0.0:* 2925/ntpd
udp 0 0 192.9.110.1:123 0.0.0.0:* 2925/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 2925/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 2925/ntpd
udp 0 0 0.0.0.0:28426 0.0.0.0:* 4672/ora_lgwr_SOGOL
udp 0 0 0.0.0.0:18843 0.0.0.0:* 2657/rpc.statd
udp 0 0 0.0.0.0:161 0.0.0.0:* 2869/snmpd
udp 0 0 127.0.0.1:22464 0.0.0.0:* 4688/ora_s000_SOGOL
udp 0 0 0.0.0.0:9798 0.0.0.0:* 4479/ora_lgwr_SOGOE
udp 0 0 0.0.0.0:713 0.0.0.0:* 2657/rpc.statd
udp 0 0 127.0.0.1:48982 0.0.0.0:* 4467/ora_pmon_SOGOE
udp 0 0 127.0.0.1:26208 0.0.0.0:* 4686/ora_d000_SOGOL
udp 0 0 127.0.0.1:54112 0.0.0.0:* 4493/ora_d000_SOGOE
udp 0 0 :::111 :::* 2538/rpcbind
udp 0 0 :::1017 :::* 2538/rpcbind
udp 0 0 fe80::20c:29ff:fe74:83b5:123 :::* 2925/ntpd
udp 0 0 fe80::20c:29ff:fe74:83bf:123 :::* 2925/ntpd
udp 0 0 ::1:123 :::* 2925/ntpd
udp 0 0 :::123 :::* 2925/ntpd
udp 0 0 :::46340 :::* 2657/rpc.statd```
答え1
ポート6160は、Veeamインストーラサービスを実行しているかのように動作します(プロセス名は出力に似ていますveeamdeploymen*
)netstat -tulpn
。
まだポート6162で実行されているサービスがないため、ポートを開いたように見えますが、ポートは開かれません。なめらかファイアウォール設定にあります。
「ファイアウォールでポートを開きます」と言うこともできますが、これは少し誤った表現です。ファイアウォールは実際にはそうではありません。開いているポートの代わりに可能です。詰まったアプリケーションがポートを開いてもそのポートにアクセスできません。ネットワークサービスを実行していない場合、すべてのネットワークポートはオペレーティングシステムによってのみ閉じられ、ファイアウォールはそれを変更できません。
正当なネットワークポートアクセスを2回効果的に設定する必要があること(一度はサービス自体を有効にしてからやる(ファイアウォール設定では)ファイアウォールは、誤って意図しないアクセスを許可するリスクを最小限に抑えることができます。
ファイアウォールは、どのリモートアプリケーションまたはサービスが接続しようとしているかを確実に確認できません。これを許可するプロトコルがあっても、リモートシステムは常に嘘をつくでしょう。このService
フィールドは通常/etc/services
。
一部のファイアウォール管理ソリューションでは、より簡単な構成のためにポート番号グループを「サービス」として事前定義することもできます。
テスト用にポートを一時的に開くには、nc
「netcat」ユーティリティ(パッケージ名)を使用して次のことを実行できます。
着信TCP接続用にポート6162を開くには:
nc -kl 6162
またはUDPパケット用のポートを開く場合:
nc -kul 6162
コマンドが停止すると(Ctrl+Cまたはkill
コマンドを使用)、着信データを処理するプロセスがなくなり、ポートは自動的に再び閉じます。ネットワーク接続を介してポートに送信されたすべてのデータは標準出力に送信されます。これを望まない場合は、コマンドライン>/dev/null
に追加できます。nc
注:ポートTCP / 6162はVeeam Data Moverのデフォルトポートですが、システムに表示されるサービス名は、他のpatrol-coll
ソフトウェアがこのポートを使用するように構成されている可能性があることを示します。 (おそらくBMC Patrolモニタリングソフトウェアの統計コレクタですか?)