文章目录
1.Openssh的功能
- sshd服务的用途
作用:可以实现通过网络在远程主机中开启安全shell的操作
Secure SHell ===>ssh #客户端
Secure SHell daemon ===>sshd #服务端
- 安装包
openssh-server - 主配置文件
/etc/ssh/sshd_conf - 默认端口
port 22 - 客户端命令
ssh
2.ssh
- 基本用法
-l | 指定登陆用户 |
-i | 指定私钥 |
-X | 开启图形 |
-f | 后台运行 |
-o | 指定连接参数 |
-t | 指定连接跳板 |
##
ssh [-l 远程主机用户] <ip | hostname>
#通过ssh命令在30主机中开启远程shell
ssh -l root 192.163.43.30
#首次连接30主机时不检测HOSTKEY(不用输入yes或no)
ssh -l root@192.168.43.30 -o StrictHostKeyChecking=no
#指定连接跳板
ssh -l root 192.168.43.30 -t ssh -l root 192.168.43.40
- 跳板:
3.sshd key认证
3.1.认证类型
- 对称加密
- 加密和解密是同一串字符
- 用户密码认证
- 密码容易泄露(可暴力破解)或忘记
- 非对称加密
- 加密用公钥,解密用私钥
- 安全 不会被盗用 攻击者无法通过无秘钥方式登陆服务器
- 不会忘记密码
3.2.创建非对称加密秘钥
(20主机)
-
方法1:
ssh-keygen
-
方法2:
ssh-keygen -f /root/.ssh/id_rsa -P “”
3.3.对服务器加密
- 传输秘钥
ssh-copy-id -i id_rsa.pub root@192.168.43.30
cd .ssh
- 测试连接
ssh root@192.168.43.30
传输成功之后不需要密码
4.sshd安全优化参数详解
设置:
setenforce 0
getenforce
===> Permissive
systemctl disable --now firewalld
4.1.配置文件/etc/ssh/sshd_config
vim /etc/ssh/sshd_config
17 Port 2222 #设定端口为2222
46 PermitRootLogin yes| no #对超级用户登陆允许或禁止
47 AllowUsers lee #用户白名单
48 DenyUsers lee #用户黑名单
74 PasswordAuthentication yes | no #开启或关闭原始密码认证方式
4.2.修改端口号
在30主机中修改端口号22—>2222
20主测试连接:
4.3.禁止超级用户登陆
配置文件改为PermitRootLogin no
vim /etc/ssh/sshd_config
systemctl restart sshd
4.4.用户白名单
vim /etc/ssh/sshd_config
systemctl restart sshd
4.5.用户黑名单
vim /etc/ssh/sshd_config
systemctl restart sshd
4.6.关闭原始密码认证方式
vim /etc/ssh/sshd_config
systemctl restart sshd