SSH
ssh安全
1.限制ssh远程登录的时候直接以root帐号登录:
修改配置文件/etc/ssh/sshd_config,加上一个record: PermitRootLogin no
这 样设置后重启ssh service,/etc/init.d/sshd restart即可生效,生效后我们就不能直接以root的方式登录了,我们需要用一个普通的帐号来登录,然后用su来切换到root帐号,注意 su和su - 是有一点小小区别的。(据本人观察,关键在于环境变量的不同,su -的环境变量更全一些)
2.更改SSH的默认端口(修改以后要注意使用setup命令后,iptables端口开放情况)
更改SSH端口号(修改后使用setup时要注意)
假如要改SSH的默认端口(22),那么你只要修改:/etc/ssh/sshd_config这个文件,这里把#Port 22这个字段前面的#去掉,再把22改成自己要设的端口就行了,不过千万别设和现已有的端口相同哦,以防造成未知后果。
然后执行/etc/rc.d/init.d/sshd restart ,把ssh服务重启就行了
如果修改后,不能联接上,记得在防火墙上把修改后的端口打开,并重启防火墙
3. 只允许通过指定的网络接口来访问SSH服务,(如果一服务器有多个IP的时候)
仍然是修改/etc/ssh/sshd_config 加上一个record:ListenAddress 192.168.1.15
这样就只允许别人通过连接改服务器上的网络接口获得的IP192.168.1.15去连接该服务器的ssh服务了。
4.限制空密码登录
如果有的系统account设置的是空密码,如果ssh没有做相应的设置,那么登录ssh的时候就算帐号的密码是空的也是可以登录的,我们仍该设置上面的那个文件 ,把#PermitEmptyPasswords no的#去掉即可
5. 只允许某些用户通过 ssh 访问主机. user@host 也可用于限制指定用户通过指定主机访问.
AllowUsers alex ref me@hostna
仅允许alex ref 或者hostname这个机器上的me这个user去连接该服务器的ssh服务
6. 仅允许某个组的成员通过 ssh 访问主机. AllowGroups 和 AllowUsers 对于拒绝访问主机有同样的效果. 当称它们为 “DenyUsers” 和 “DenyGroups” 时不要觉得奇怪.
AllowGroups wheel admin
7.禁用版本1协议, 因为其设计缺陷, 很容易使密码被黑掉. 更多信息, 参阅 ssh协议问题报告 或 Xforce 通告.
Protocol 2
8.为用户连接到 ssh 服务器增加一个标题(它将从文件读取), 在一些国家, 登入给定系统前, 给出未经授权或者用户监视警告信息, 将会受到法律的保护.
Banner /etc/some_file