サーバーのiptablesルールを確認してください。

サーバーのiptablesルールを確認してください。

このシステムはほとんど構成なしでUbuntu 14.04bを実行しています。
少なくともファイアウォールを持ってくるのが良いアイデアだと思います。 iptablesが私の選択になります。

IMHOインターフェイスが事前に実行されている場合は、/etc/network/interfaces次のようなものを使用してiptables生成ファイルを介してルールをロードする方が良いでしょう
pre-up iptables-restore < /etc/iptables.rules
iptables-save何かを変更する必要がある場合はポストダウンから)。

しかし、2つの点が私を怒らせました。

  • まず、私のファイルが正しく動作するかどうかはわかりません(下記参照)。
  • 第二に、私が最後にiptablesを使用したとき、IPv6はまったく問題ではありませんでした! ip6tablesがあることはわかりましたが、両方のテーブルに同じルールファイルを使用できるかどうかはわかりません...それはうまくいきますが、悲しいことに本当だと信じるのは簡単すぎるようです。

以下は私のルールファイルです。奇妙な、非論理的、または望ましくない内容を指摘できる人はいますか?

ご覧のとおり、箱の中にApacheがあります。ネットワークサーバー(ドメイン名があるのでドメイン名システム通過しなければならない)、MySQLサーバー(リモートアクセス機能を含む)、SFTPサーバー(FTPは今かなり昔ながらのようです。)メールサーバー(サフィックス、おそらく監督者のメーリングリストがまだ存在する場合)絶対にアクセス可能でなければならない渡すSSH(このサーバーへのSSHアクセスを失う余裕はありません。コンソールなしで400km離れた専用デバイスです。)

# Generated by iptables-save v1.4.21 on Wed Sep 28 15:08:21 2016
*raw
:PREROUTING ACCEPT [30261051:8737714396]
:OUTPUT ACCEPT [28933128:15186346449]
COMMIT
# Completed on Wed Sep 28 15:08:21 2016
# Generated by iptables-save v1.4.21 on Wed Sep 28 15:08:21 2016
*nat
:PREROUTING ACCEPT [8040256:1000464908]
:INPUT ACCEPT [8040256:1000464908]
:OUTPUT ACCEPT [357964:47801350]
:POSTROUTING ACCEPT [357964:47801350]
COMMIT
# Completed on Wed Sep 28 15:08:21 2016
# Generated by iptables-save v1.4.21 on Wed Sep 28 15:08:21 2016
*mangle
:PREROUTING ACCEPT [30261051:8737714396]
:INPUT ACCEPT [30261051:8737714396]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [28933128:15186346449]
:POSTROUTING ACCEPT [28933128:15186346449]
COMMIT
# Completed on Wed Sep 28 15:08:21 2016
# Generated by iptables-save v1.4.21 on Wed Sep 28 15:08:21 2016
*filter
:INPUT ACCEPT [10752:1386943]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [18529:5801236]
# Do not kill established connections
-A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
-A OUTPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

#INPUT rules
#SSH & SFTP
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
#HTTP server
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
#HTTPS
-A INPUT -i eth0 -p tcp -m tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT
#Echo
-A INPUT -p icmp -m icmp --icmp-type 0 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
#DNS
-A INPUT -i eth0 -p udp -m udp --sport 53 -j ACCEPT
#SMTP
-A INPUT -i eth0 -p tcp -m tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
#SQL in
-A INPUT -i eth0 -p tcp -m tcp --dport 3306 -m state --state NEW,ESTABLISHED -j ACCEPT
#IMAP
-A INPUT -i eth0 -p tcp -m tcp --dport 143 -m state --state NEW,ESTABLISHED -j ACCEPT
#IMAP sur SSL
-A INPUT -i eth0 -p tcp -m tcp --dport 993 -m state --state NEW,ESTABLISHED -j ACCEPT
#POP3
-A INPUT -i eth0 -p tcp -m tcp --dport 110 -m state --state NEW,ESTABLISHED -j ACCEPT
#POP3 sur SSL
-A INPUT -i eth0 -p tcp -m tcp --dport 995 -m state --state NEW,ESTABLISHED -j ACCEPT
#Limit HTTP flood
-A INPUT -p tcp -m tcp --dport 80 -m limit --limit 25/min --limit-burst 100 -j ACCEPT
#Loopback
-A INPUT -i lo -j ACCEPT

#OUTPUTS
#SSH & SFTP
-A OUTPUT -o eth0 -p tcp -m tcp --sport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
#HTTP
-A OUTPUT -o eth0 -p tcp -m tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT
#HTTPS
-A OUTPUT -o eth0 -p tcp -m tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
#echo
-A OUTPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A OUTPUT -p icmp -m icmp --icmp-type 0 -j ACCEPT
#DNS
-A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT
#SMTP
-A OUTPUT -o eth0 -p tcp -m tcp --sport 25 -m state --state ESTABLISHED -j ACCEPT
#SQL out
-A OUTPUT -o eth0 -p tcp -m tcp --sport 3306 -m state --state ESTABLISHED -j ACCEPT
#IMAP
-A OUTPUT -o eth0 -p tcp -m tcp --sport 143 -m state --state ESTABLISHED -j ACCEPT
#IMAP sur SSL
-A OUTPUT -o eth0 -p tcp -m tcp --sport 993 -m state --state ESTABLISHED -j ACCEPT
#POP3
-A OUTPUT -o eth0 -p tcp -m tcp --sport 110 -m state --state ESTABLISHED -j ACCEPT
#POP3 sur SSL
-A OUTPUT -o eth0 -p tcp -m tcp --sport 995 -m state --state ESTABLISHED -j ACCEPT
#Doublons by legacy script.
#Remove?
-A OUTPUT -p tcp -m tcp --dport 53
-A OUTPUT -p udp -m udp --dport 53
-A OUTPUT -p tcp -m tcp --dport 53 -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -j ACCEPT
#Loopback
-A OUTPUT -o lo -j ACCEPT

#End of config. Make it happen!
COMMIT
# Completed on Wed Sep 28 15:08:21 2016

助けてくれてありがとう!

ベストアンサー1

保存iptablesファイルはどのIPも参照しないため、ip6tablesそのIPも使用できます。最善の方法は、at2分以内(または適切であると判断された時間)にファイアウォールルールをリセットするタスクを実行することです。

# echo "service iptables stop" | at now + 2 minutes

次に、IPv4 および IPv6 ファイルに iptables ルールを適用します。

# iptables-restore < iptables-save-file
# ip6tables-restore < iptables-save-file

今すぐアクセスできない場合は、ジョブがatファイアウォールを無効にするまで2分間待ってから、手動でルールセットの設定を開始してください。動作する場合は、新しいファイアウォールを実行してservice iptables saveお楽しみください。service ip6tables save

また、既存のファイルは実際にトラフィックを拒否、拒否、または削除しないことにも注意してください。すべてのチェーンのデフォルトポリシーは、またはターゲットのACCEPT追跡ルールがないため、やや非効率的なファイアウォール構成に見えます。DROPREJECT

おすすめ記事