一、实验环境的部署
实验需要两台主机需要建立通讯
删除ssh配置文件
rm -fr ~/.ssh/
二、sshd服务对于企业的重要意义
作用:
可以实现通过网络在远程主机中开启安全shell的操作
Secure SHell | ===>ssh | 客户端 |
---|---|---|
Secure SHell daemon | ===>sshd | 服务端 |
三、sshd服务的基本信息
安装包
openssh-server
配置文件
/etc/ssh/sshd config
查看端口的命令 netstat
-a | 表示所有 |
---|---|
-n | 表示不做解析 |
-t | 表示tcb协议 |
-u | 表示udb协议 |
-p | 显示进程的名字 |
-e | 显示进程的扩展信息 |
四、sshd服务的客户端使用
切换远程主机
ssh | -l | root | ip |
---|
105主机会向当前主机发送身份公钥,并保存此公钥到~/.ssh/know_hosts
105主机持有私钥当客户主机再次连接时会对客户主机进行身份验证
当连接因为认证问题被拒绝时
vim ~/.ssh/know_hosts 在此文件中删除报错提示相应的行即可
ssh 常用参数
-l | 指定登陆用户 |
---|---|
-i | 指定私钥 |
-X | 开启图形 |
-f | 后台运行 |
-o | 指定连接参数 |
-t | 指定连接跳板 |
“-o” ssh -l root 172.25.254.x -o “StrictHostKeyChecking=no” 首次连接不许要输入yes
“-t” ssh -l root 172.25.254.1 -t ssh -l root 172.25.254.105
五、sshd服务的key认证
1、认证类型
a.对称加密
加密和解密是同一串字符
容易泄漏
可暴力破解
容易遗忘
b.非对称加密
加密用公钥,解密用私钥
不会被盗用
攻击者无法通过无密钥方式登陆服务器
2、生成非对称加密密钥
命令ssh-keygen
非交互式生成公钥私钥
ssh-keygen -f /root/.ssh/id_rsa -P “”
3.对服务器加密
ssh-copy-id -i /root/.ssh/id rsa.pub root ip
#测试#
ssh lee@172.25.254.105 ##登陆lee用户不需要输入密码
六、sshd服务的安全优化
关闭火墙
systemctl disable --now firewalld
setenforce 0
Port 2222 | 设定端口为2222 |
---|---|
PermitRootLogin yes/no | 对超级用户登陆是否禁止 |
PasswordAuthentication yes/no | 是否开启原始密码认证方 |
AllowUsers lee | 用户白名单 |
DenyUsers lee | 用户黑名单 |