SSH 为 Secure Shell 的缩写, 由 IETF 的网络小组 (Network Working Group) 所制定.
SSH 是目前较可靠, 专为远程登录会话和其他网络服务提供安全性的协议. 利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题.
环境部署:
两台 linux(redhat6.5)系统
客户机 ip 地址 192.168.100.88
服务器 ip 地址 192.168.100.66
实验效果:
禁止远程登陆管理员(root)
仅允许 zhangsan,lisi 用户登陆访问, 且仅 zhangsan 可以切换至 root 用户进行控制.
基于口令的安全验证
一, 服务器配置
关闭防火墙和 selinux
- [root@redhat ~]# service iptables stop
- [root@redhat ~]# setenforce 0
2. 编辑主配置文件 sshd_config
[root@redhat ~]# vim /etc/ssh/sshd_config // 修改配置文件
3. 创建用户 zhangsan lisi
- [root@redhat ~]# useradd zhangsan // 创建用户
- [root@redhat ~]# echo "123123" | passwd stdin zhangsan // 密码
- [root@redhat ~]# useradd lisi // 创建用户
- [root@redhat ~]# echo "123123" | passwd --stdin lisi // 密码
4.zhangsan 用户加入 wheel 组, 改 pam 模块
- [root@redhat ~]# gpasswd -a zhangsan wheel // 用户加入 wheel 组
- [root@redhat ~]# vim /etc/pam.d/su // 编辑 pam 模块
重启 ssh 服务(它是默认启动的, 这里重启)
[root@redhat ~]# service sshd restart
二, 客户机测试:
1. 禁止远程直接登陆管理员 (root) 用户
2.zhangsan,lisi 用户都可以远程登陆, 但只有信任用户 zhangsan 可以切换到管理员(root).
总结:
sshd 服务为什么要关闭 root 远程登陆, sshd 服务默认允许 root 用户登陆的, 意味着只要知道你的 root 密码就可以远程登陆你的服务器, 这是非常不安全的.
来源: http://blog.51cto.com/13777111/2145840