私は最初にiptablesに触れ、設定方法が混乱しています。イーサネットカードは2つですが、IPアドレスは4つあるようです。問題ありません。私のネットワーク/インターフェースでは、すべてenp2s0f0にあるようです。サーバーに入るネットワークがenp2s0f0と同じであると仮定すると、そのうちの2つをenp2s0f1インターフェースに変更できますか?
iptablesにeth0(私の場合はenp2s0f0)を指定すると、各IPのルールをどのように作成する必要がありますか?
私がやろうとしているのは、次のようにネットワーク/インターフェースでifaceを指定することです。ただし、特に enp2s0f0:0 に設定すると、enp2s0f0 iptables はターゲットを「Anywhere」とマークします。
iptables -A INPUT -i enp2s0f0 -p tcp --dports 80,443 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o enp2s0f0 -p tcp --sports 80,443 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -i enp2s0f0:0 -p tcp --dports 80,443 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o enp2s0f0:0 -p tcp --sports 80,443 -m state --state ESTABLISHED -j ACCEPT
私のインターフェースを示す私の出力は次のとおりです。
$ls /sys/class/net
enp2s0f0 enp2s0f1 lo
$cat /etc/network/interfaces
auto lo
iface lo inet loopback
# The primary network interface
auto enp2s0f0
iface enp2s0f0 inet static
address xx.xx.xx.76
netmask 255.255.255.0
network xx.xx.xx.0
broadcast xx.xx.xx.255
gateway xx.xx.xx.1
auto enp2s0f0:0
iface enp2s0f0:0 inet static
address xx.xx.xx.77
netmask 255.255.255.0
network xx.xx.xx.0
broadcast xx.xx.xx.255
auto enp2s0f0:1
iface enp2s0f0:1 inet static
address xx.xx.xx.78
netmask 255.255.255.0
network xx.xx.xx.0
broadcast xx.xx.xx.255
auto enp2s0f0:2
iface enp2s0f0:2 inet static
address xx.xx.xx.79
netmask 255.255.255.0
network xx.xx.xx.0
broadcast xx.xx.xx.255
私
答え1
私は次の行を引用しますman iptables
:
[!] -p, --protocol protocol
The protocol of the rule or of the packet to check.
[!] -s, --source address[/mask][,...]
Source specification. Address can be either a network name, a hostname,
a net‐work IP address (with /mask), or a plain IP address.
[!] -d, --destination address[/mask][,...]
Destination specification.
私はそれぞれ2つの固定IPを持つ2つのインターフェイスがある状況を考えています。そうできるからです。したがって、特定のIPを一致させたい場合は、ルールを並べ替えることができます。
iptables -A INPUT -i enp2s0f0 -p tcp -s 0.0.0.0 -d <IP> --dports 80,443 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o enp2s0f0 -p tcp -s <IP> -d 0.0.0.0 --sports 80,443 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -i enp2s0f1 -p tcp -s 0.0.0.0 -d <IP> --dports 80,443 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o enp2s0f1 -p tcp -s <IP> -d 0.0.0.0 --sports 80,443 -m state --state ESTABLISHED -j ACCEPT
もちろん、<IP>
コンピュータのIPを変更する必要があります。0.0.0.0
変更される特定のIPとの接続のみを許可したい場合。