使用iptables限制IP访问ssh

我想允许某个IP地址或整个networking(源)通过ssh连接到达我的服务器,并删除所有其他未经授权的源IP地址。

iptables -A INPUT -m state --state NEW,ESTABLISHED,RELATED --source xxxx -p tcp --dport 22 -j ACCEPT 

只能从xxxx访问

 iptables -A INPUT -m state --state NEW,ESTABLISHED,RELATED -p tcp --dport 22 -j DROP 

丢弃所有其他数据包到端口22

 iptables -A INPUT -p tcp -s 12.34.56.78/16 --dport ssh -j ACCEPT iptables -A INPUT -p tcp --dport ssh -j REJECT 

还有其他方法可以做到,但是当我们对其他规则一无所知的时候,这是最简单的。

有时候命令行IpTables的语法可能会有点多学习/消化。 如果你是新的(ISH)到Linuxpipe理; 你可能会考虑安装类似webmin的东西。 你可以使用他们的gui来创build你的规则,然后返回并检查“/ etc / sysconfig / iptables”文件并查看实际的语法。

然后,我会build议使用Webmin&IpTableslocking只访问您希望的那些特定的IP地址。 您可以使用与其他海报所回答的语法相同的语法,只需将PORT更改为您设置Webmin的任何内容即可使用。 (希望是标准端口以外的东西:10000)。