SSH服务与tcp wrappers实验
SSH服务与tcp wrappers实验
实验环境:
一台linux(ssh client)
一台linux(ssh server)
实验步骤:
1.配置IP,测试连通性
2.在客户端创建用户yuzly1,登录创建的用户,用公钥生成工具生成公钥,#注意记得输入私钥密语,不设置默认为空
3.查看生成的公钥
4.在服务端创建一个账户,然后登录创建的账户yuzly2,然后在该账户宿主目录下创建.ssh目录(如果是在root账户下创建/home/yuzly2/,ssh目录,需要修改目录所有者以及所属组为yuzly2),并把.ssh所属组的权限中w去掉,不然无法完成实验
5.在客户端,把公钥文件传给服务器
scp id_rsa.pub yuzly2@192.168.133.137:/home/yuzly2/.ssh/authorized_keys
6.在服务端查看公钥
7.在服务端设置,登录root账户,修改/etc/ssh/sshd_config配置文件,关闭密码验证,启用公钥验证
8.修改服务器端,/home/yuzly2/.ssh目录的所属组的权限,不然在客户端测试会失败
9.在客户端测试,输入私钥密语,成功连接服务器
10.切换别的账户登录test,再次连接服务端,提示拒绝,这是因为服务端没有当前用户的公钥
11.因为服务端有yuzly1账户的公钥,现在在客户端把/home/yuzly1/.ssh目录下的所有文件复制到/home/test/目录,然后修改文件的所有者以及所属组
12.在客户端测试,登录服务器,输入私钥密语,成功登录
tcp wrappers限制特定的客户端通过ssh登录服务器
1.查看ssh服务是否支持tcp wrappers
2.在/etc/hosts.deny添加一条记录,拒绝sshd服务
3.在客户端测试,访问被拒绝
4.在/etc/hosts.allow添加一条记录,允许sshd服务 #因为tcp wrappers的策略应用机制就是先检查hosts.allow,找到匹配就允许访问,不再检查hosts.deny文件
5.在客户端测试,成功登录