仮想化したい強力な専用サーバーがありました。アイデアは、ホストシステムにProxmox VEをインストールしてから、各用途に適した仮想マシン(私のウェブサイト用、Gitリポジトリ用など)を作成することです。
私はちょうどiptablesで遊び始め、時間が悪いことを認めなければなりません。私は小さなスクリプトを書いた。
#!/bin/bash
# Empty any existing rule
iptables -F
iptables -t nat -F
iptables -t mangle -F
# Remove personnal chains
iptables -X
iptables -t nat -X
iptables -t mangle -X
# Enable ESTABLISHED and RELATED communications, accepts answers
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Enable ping
iptables -A OUTPUT -p icmp -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p icmp -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p icmp -m limit --limit 5/s -j ACCEPT
# Enable remote acccess through SSH
iptables -A INPUT -p TCP --dport ssh -j ACCEPT
iptables -A INPUT -p TCP --dport http -j ACCEPT
# ACCEPT DNS
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
# Web output (HTTP & HTTPS)
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp --dport 443 -j ACCEPT
# Open ports for proxmox input
iptables -I INPUT -p tcp --dport 8006 -j ACCEPT
iptables -I INPUT -p tcp --dport 5900 -j ACCEPT
iptables -I INPUT -p tcp --dport 5999 -j ACCEPT
iptables -I INPUT -p tcp --dport 3128 -j ACCEPT
# Default to DROP
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
ここにはまだフラックスルーティングはありません。私の目標は、まずProxmoxが安全な環境で正しく動作するために必要なすべてのポートを開くことです。
スクリプトを実行すると、proxmoxのWeb UI(8006)が表示されますが、ログインすることはできません。 Proxmox では、「ログインに失敗しました。もう一度お試しください」というメッセージが表示されます。すべてのルールが消えると、すべてがうまく機能します。
誰でも助けることができますか?
ベストアンサー1
内部通信がiptablesによってブロックされないように、ループバックデバイスのすべてを許可するルールが必要です。
iptables -I INPUT -i lo -j ACCEPT
iptables -I OUTPUT -o lo -j ACCEPT