阻止Linux iptables中的特定客户端

所以我在我的虚拟机中使用Linux时遇到了困难。 基本上我想实现的是单向阻止FTP连接1个客户端访问networking。 我的意思是说:客户端1可以连接到服务器,但不能接收任何文件…或者只是阻止连接,客户端无法访问服务器,这将工作。

我不想使用状态过滤,就像尽可能基本的iptables。 从谷歌search很多,我根本无法得到我的规则工作.. :(这是我到目前为止,不起作用。

这是我有的设置:

Client 1 Server [X]-----ftp,ping-----------[O] .118 .207 

 iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP iptables -A INPUT -p 192.168.1.118 -p tcp -i eth0 --dport 20 -j ACCEPT iptables -A INPUT -p 192.168.1.118 -p tcp -i eth0 --dport 21 -j ACCEPT iptables -A OUTPUT-p 192.168.1.118 -p tcp -o eth0 --dport 5000:50000 -j ACCEPT iptables -A OUTPUT-p 192.168.1.118 -p tcp -i eth0 --sport 5000:50000 -j ACCEPT 

因此,ping应该从192.168.1.118开始工作,而FTP(连接和reciving),但是其他客户端受到影响并拒绝访问FTP。 我不知道我要如何解决这个规则..你看到任何明显的故障与iptables? 会真的很感激一些帮助:)

我认为你需要! 从ip你不想让

 iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP iptables -A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT iptables -A OUTPUT -p tcp -o eth0 --sport 22 -j ACCEPT iptables -A INPUT -p tcp ! -d 192.168.1.118 -i eth0 --dport 20:21 -j ACCEPT iptables -A OUTPUT -p tcp ! -d 192.168.1.118 -o eth0 --dport 5000:50000 -j ACCEPT iptables -A OUTPUT -p tcp ! -d 192.168.1.118 -o eth0 --sport 5000:50000 -j ACCEPT