文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>SSH的登录限制

SSH的登录限制

时间:2007-03-11  来源:CUDev

1、ip限制
从网络来的数据包首先要经过iptables,所以可以在iptables上面加上规则来限制ip的访问

打算用
/etc/hosts.deny
/etc/hosts.allow

比如只限制3个外网,1个内网IP连接

怎么写哦?

解决办法:

直接在/etc/hosts.deny里面加一行
sshd: ALL EXCEPT xxx.xxx.xxx.xxx(允许的ip或网段)
sshd: ALL EXCEPT xxx.xxx.xxx.xxx/255.255.255.0(允许的网段) 就可以了.
要注意网段的书写格式

上面是TCP Wrappers的过滤机制,它由tcpd程序控制,有点类似TCP包的检验程序,这个程序的主要参数文件在/etc/hosts.allow及 /etc/hosts/hosts.deny两个文件中,必须要某个软件支持tcpd(TCP Wrappers)的功能才能接受TCP Wrappers的校验。

数据包的校验顺序首先是/etc/hosts.allow,然后才是/etc/hosts/hosts.deny。所以我们通常的设置方法是:在 /etc/hosts/hosts.allow里针对某些服务与数据包来源开启它们的使用权限;在/etc/hosts/hosts.deny里将该服务 的其它来源过滤掉。

注意:如果您在/etc/hosts/hosts.allow里没有设置,那么TCP Wrappers默认的动作是allow(通过校验并进入主机)。

简单的语法如下:

<服务名称>:
特别注意:其中“服务名称”其实就是程序文件名,比如telnet程序的服务名称是“in.etlnetd”、ssh的是“sshd”;network可以使用192.168.0.0/255.255.255.0,但不可以使用192.168.0.0/24。

针对楼主的需求,我认为/etc/hosts.allow应该这样写:
sshd: 192.168.0.0/255.255.255.0,202.101.73.0/255.255.255.0,202.101.74.0/255.255.255.0,202.101.75.0/255.255.255.0
在/etc/hosts.deny里写上:
sshd: ALL
PS:上面的IP是我假想而来,第一个代表内网,后面3个代表外网,应用时,换成你的实际IP即可。

最后还有点补充的是,个人认为数据包进入主机的第一道关卡应该是iptables,第二道才是TCP Wrappers,如果已经越过iptables,说明已登入你的主机了,下一步只是通过TCP Wrappers来进行TCP包校验,那么如果这个支持TCP Wrappers功能的程序有漏洞,结果是什么不用我说了吧。所以而是先从iptables进行限制,把TCP Wrappers作为个补充应该更安全些。

2、限制用户登录

vi /etc/sshd_config
在最后一行加入一行,me 为指定的用户
AllowUsers me
重启SSH

如果是多个用户的话:AllowUsers A B C

注意中间是空格,而不是分号



3、指定尝试密码次数
vi /etc/sshd_config
修必
MaxAuthTries  3
将默认的值改掉即可 Fedora 默认可以允许做3次尝试
重启SSH

相关阅读 更多 +
排行榜 更多 +
汉房手机版

汉房手机版

生活实用 下载
瓜子二手车检瓜子评估检测系统

瓜子二手车检瓜子评估检测系统

生活实用 下载
电e宝

电e宝

生活实用 下载