本文共 989 字,大约阅读时间需要 3 分钟。
linux系统的远程登录非常灵活,root可以根据需要限制某些账户的登录,linux远程登录使用的是SSH协议,要限制IP登录,主要是修改与sshd服务相关联的配置文件,具体有以下几种:
1. 白名单形式要求: 只允许 192.168.0.1 和 192.168.0.10 登陆 其他全部禁止
实现:
(1) vim /etc/hosts.allow //增加如下内容 sshd: 192.168.0.1, 192.168.0.10 或者设置一个网段: sshd:192.168.1.,192.168.0.:allow //允许1.0和0.0网段内的所有用户登录(2)vim /etc/hosts.deny //增加如下内容
sshd: ALL2.黑名单形式
要求: 只限制192.168.0.1登陆上来,其他全部放行
实现:
vim /etc/hosts.deny //增加如下内容 sshd: 192.168.0.1保存配置文件后就成功了。
我们可以这样理解这两个文件工作原理: 当客户端的IP登陆服务器的时候,先去匹配hosts.allow, 如果这里面有这个IP,则直接放行,如果没有这个IP,则看hosts.deny, 如果这里面有该IP(ALL包括一切IP)则拒绝,如果deny中也没有匹配,则也会放行。也就是说,如果这两个文件中都没有限定的IP,则会放行! 3. 特殊:如果两个文件中都是 :“sshd: ALL” 会出现什么情况? 由于先去匹配hosts.allow,所以全部允许。针对root:
(1)让root账户不能使用密码只能使用密钥远程登陆: 打开sshd配置文件 vim /etc/ssh/sshd_config 在最后面增加一行 : PermitRootLogin without-password 保存配置文件后重启sshd服务 :service sshd restart(2)不允许root账户远程登陆,而普通账户可以:
有时为了特殊需求,只允许普通账户登陆Linux,而不允许root账户登陆,而普通账户登陆后,然后再su 到root下是可以的。打开sshd的配置文件 vim /etc/ssh/sshd_config 加入一行:PermitRootLogin no
重启sshd服务: service sshd restart
转载地址:http://tvnhb.baihongyu.com/