ssh管理

白名单形式

要求: 只允许 192.168.0.1 和 192.168.0.10 登陆 其他全部禁止

实现:

  1. vim /etc/hosts.allow //增加如下内容

sshd: 192.168.0.1, 192.168.0.10

  1. vim /etc/hosts.deny //增加如下内容

sshd: ALL

黑名单形式

要求: 只限制192.168.0.1登陆上来,其他全部放行

实现:

vim /etc/hosts.deny //增加如下内容

sshd: 192.168.0.1

保存配置文件后就可以啦,不用重启。 不用再去编辑 /etc/hosts.allow 了

我们可以这样理解这两个文件工作原理:

当客户端的IP登陆服务器的时候,先去匹配hosts.allow,

如果这里面有这个IP,则直接放行,如果没有这个IP,则看hosts.deny,

如果这里面有该IP(ALL包括一切IP)则拒绝,如果deny中也没有匹配,则也会放行。

也就是说,如果这两个文件中都没有限定的IP,则会放行!

请思考:

如果两个文件中都是 sshd: ALL 会出现什么情况?

免密登录

ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.10

生成私钥

ssh-keygen -t rsa -b 4096 -C “your_email@example.com