Mongoを特定のIPにのみアクセスできるようにするにはどうすればよいですか?
私はiptablesを試しました
iptables -A INPUT -s 192.168.2.111 -p tcp --destination-port 27016 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -d 192.168.2.111 -p tcp --source-port 27016 -m state --state ESTABLISHED -j ACCEPT
.
しかし、何正確にうん?どうやってできるか否定的な他のすべてのIP? 「未登録」を許可してブロックし続けるには、IPを追加するためにiptablesをどのように編集できますか?このiptables設定を永久に作成するにはどうすればよいですか?
英語で話すように頑張ります。
ベストアンサー1
しかし、これが正確に何をするのでしょうか?
これは2つの別々のルールに過ぎず、何の意味もありません。
他のすべてのIPを拒否する方法は?
2つの方法があります。最初拒否ポリシーの設定:
iptables -P INPUT DROP
iptables -P OUTPUT DROP
ただし、すべてのルールをリセットするとサーバーが切断されるため、これは最善の方法ではありません。使用第二方法:
「すべて許可」ポリシーとすべてのトラフィックを拒否するチェーンの最後の規則が必要です。
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
some rule...
some rule...
some rule...
iptables -A INPUT --destination $host --jump DROP
iptables -A OUTPUT --source $host --jump DROP
ここで$host
- ホストのIPアドレスです。
「未登録」を許可してブロックし続けるには、IPを追加するためにiptablesをどのように編集できますか?
単一のルールに複数のアドレスまたはIPサブネットを追加できます。たとえば、
iptables -A INPUT --source 192.168.2.111,192.168.2.1,192.168.56.0/24 --destination $host --protocol tcp --dport 27016 --jump ACCEPT
このiptables設定を永久に作成するにはどうすればよいですか?
そしてiptables-persistent
気づく:すべての入出力トラフィックを拒否または削除する場合は、サーバーに正しく接続するための承認ルールを定義する必要があります。
のためssh
:
iptables -A INPUT --source 192.168.2.111 --protocol tcp --dport 22 --jump ACCEPT
iptables -A OUTPUT --match conntrack --ctstate ESTABLISHED,RELATED --jump ACCEPT
特にリモートサーバーでiptablesを慎重に使用してください。問題が発生すると、そのサーバーに直接アクセスできません。