CentOS 下设置SSH只容许特定用户从特定的IP登陆,其它未经容许的用户和IP都不能登陆。html
演示环境linux
192.168.1.81:CentOS 6vim
192.168.0.222:Win 10centos
192.168.1.135:Win 8.1ssh
未作任何设置时192.168.0.222和192.168.1.135都能登陆192.168.1.81。
192.168.0.222
192.168.1.135
rest
示例1:只容许192.168.0.222登陆192.168.1.81htm
# vim /etc/hosts.allow最后一行加入:ip
sshd:192.168.0.222:allow //多个IP能够按照此格式写多行get
# vim /etc/hosts.deny最后一行加入:登录
sshd:ALL //除了上面容许登陆的IP,其它IP都拒绝登陆
# service sshd restart
192.168.0.222能正常登陆
192.168.1.135不能正常登陆
示例2:只容许192.168.1网段的主机登陆192.168.1.81
# vim /etc/hosts.allow最后一行加入
sshd:192.168.1.*:allow
# vim /etc/hosts.deny最后一行加入:
sshd:ALL
# service sshd restart
192.168.0.222不能正常登陆
192.168.1.135能正常登陆
示例3:只容许192.168.0.222以keyso用户身份、192.168.1.135以root用户身份登陆192.168.1.81
# vim /etc/ssh/sshd_config最后一行加入
AllowUsers keyso@192.168.0.222 root@192.168.1.135 //多个用户名@IP之间使用空格分隔
# service sshd restart
192.168.0.222以默认的root用户身份不能正常登陆
192.168.0.222以keyso用户身份能正常登陆
192.168.1.135以默认的root用户身份能正常登陆