私が持っているiptablesルールのリストは次のとおりです。
# firewall-cmd --direct --get-all-rules
ipv4 filter INPUT 0 -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
...
...
ipv4 filter INPUT 1 -d 127.0.0.1 -p tcp -m tcp --dport 4118 -j ACCEPT
ipv4 filter INPUT 2 -i lo -j DROP
ipv4 filter FORWARD 0 -j DROP
ipv4 filter OUTPUT 0 -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
...
...
ipv4 filter OUTPUT 1 -d 127.0.0.1 -p tcp -m tcp --dport 4118 -j ACCEPT
ipv4 filter OUTPUT 2 -o lo -j DROP
dsaコマンドを起動すると、次のエラーメッセージが表示されます。
dsa_control
couldn't connect to 127.0.0.1:4118 (-1: Socket reset)
ss -ntl
以下を提供します。
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 0.0.0.0:111 0.0.0.0:*
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 128 [::]:111 [::]:*
LISTEN 0 5 *:4118 *:*
LISTEN 0 128 [::]:22 [::]:*
DROP入出力ルールを削除すると、すべてがうまく機能します。これらのDROPルールがまだIP 127.0.0.1をブロックする方法を知っていますか?
答え1
実際にはルールが抜けました。 --sportに加えて、必要に応じてポートを開くには、--dportオプションを追加する必要がありました。