OpenVPNサーバーを除くすべてのインターネット接続をブロックします。

OpenVPNサーバーを除くすべてのインターネット接続をブロックします。

OpenVPNに接続していない場合は、すべてのインターネット接続をブロックしたいと思います。もちろん、VPNサーバーへの接続を許可する必要があります。

VPNサーバーIPとのトラフィックを許可し、すべて削除ルールを使用してこれを実行できますかiptables

iptables@tachomiが提案した解決策を試しましたが、ルールを設定するとインターネットに接続されていません。iptables-save状態:

# Generated by iptables-save v1.6.0 on Wed Feb  3 00:53:32 2016
*filter
:INPUT DROP [247:40343]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [153:25961]
-A INPUT -s 127.0.0.1/32 -p tcp -j ACCEPT
-A INPUT -s 127.0.0.1/32 -p tcp -j ACCEPT
-A INPUT -s 127.0.0.1/32 -p udp -j ACCEPT
-A INPUT -s 127.0.0.1/32 -p udp -j ACCEPT
-A INPUT -s <VPN_SERVER_IP>/32 -p tcp -j ACCEPT
-A INPUT -s <VPN_SERVER_IP>/32 -p udp -j ACCEPT
-A OUTPUT -d <VPN_SERVER_IP>/32 -p tcp -j ACCEPT
-A OUTPUT -d <VPN_SERVER_IP>/32 -p udp -j ACCEPT
COMMIT
# Completed on Wed Feb  3 00:53:32 2016

ベストアンサー1

ローカル接続とRELATED, ESTABLISHED接続プロトコルを許可して起動します。

$ sudo iptables -A INPUT -p tcp -s 127.0.0.1 -j ACCEPT
$ sudo iptables -A INPUT -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
$ sudo iptables -A INPUT -p udp -m state --state RELATED,ESTABLISHED -j ACCEPT
$ sudo iptables -A INPUT -p icmp -m state --state RELATED,ESTABLISHED -j ACCEPT

これにより、インターネット接続が可能になります。

デフォルトチェーンポリシーの設定

$ sudo iptables -P INPUT DROP
$ sudp iptables -P OUTPUT DROP

これにより、すべての種類のインバウンド/アウトバウンドトラフィックが拒否されます。

VPN接続を許可する

$ sudo iptables -A INPUT -s [VPN ip connection] -j ACCEPT
$ sudo iptables -A OUPUT -d [VPN ip connection] -j ACCEPT

これにより、VPN接続が許可されます。

SSH経由で接続する場合は、IPアドレスがローカルホストとしても機能することを許可する必要があります。

修正する:

他の接続ルールの場合は許可します。

HTTPを例にしてみましょう。

$ sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
$ sudo iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT  

個人的なおすすめ

私がすることは、iptablesルールのバックアップを使用して$ sudo iptables-save > iptables_backupから、すべての変更に対してvimを使用してルールを編集し、iptablesリストアを使用することです$ sudo iptables-restore < iptables_backup。これは繰り返しの規則を避けるための個人的な慣行にすぎません。

おすすめ記事