一、Openssh的功能二、ssh
1. 实验环境搭建2.基本用法3.ssh 常用参数# 三、sshd key认证
1.认证类型2.生成非对称加密密钥3.对服务器加密 四.sshd 安全优化参数详解
1. 修改端口2.是否禁止超级用户登录3.是否开启原始认证方式4. 用户白名单/黑名单
一、Openssh的功能
1.sshd服务的用途
作用:
可以实现通过网络在远程主机中开启安全shell的操作
Secure SHell ===>ssh 客户端
Secure SHell daemon ===>sshd 服务端
2.安装包
openssh-server
3.主配置文件
/etc/ssh/sshd_conf
4.默认端口
22
5.客户端命令
ssh
nodea充当服务器,nodeb充当客户端。修改nodea与nodeb的主机名,并配置端口IP
配置nodea(172.25.254.100主机):
配置nodeb(172.25.254.200主机):
ssh [-l 远程主机用户]ssh -l root 172.25.254.100 ##通过ssh命令在100主机中以root身份开启远程shell
身份证明生成过程确认:
The authenticity of host ‘172.25.254.100 (172.25.254.100)’ can’t be established.
ECDSA key fingerprint is SHA256:***************
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
当收入yes后:
100主机会向当前主机发送身份公钥,并保存此公钥到~/.ssh/known_hosts
100主机持有私钥当客户主机再次连接时会对客户主机进行身份验证.
如果身份验证改变,主机100拒绝连接:
vim ~/.ssh/know_hosts ##在此文件中删除报错提示相应的行即可3.ssh 常用参数#
ssh -l #指定登陆用户 -i #指定私钥 -X #开启图形 -f #后台运行 -o #指定连接参数 ssh -l root@172.25.254.x -o "StrictHostKeyChecking=no" 首次连接不许要输入yes -t #指定连接跳板 ssh -l root 172.25.254.50 -t ssh -l root 172.25.254.100
1.对称加密
加密和解密是同一串字符
容易泄漏
可暴力破解
容易遗忘
2.非对称加密
加密用公钥,解密用私钥
不会被盗用
攻击者无法通过无密钥方式登陆服务器
方法1:
$ ssh-keygen //交互式
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): ##输入保存密钥文件
Enter passphrase (empty for no passphrase): ##密钥密码
Enter same passphrase again: ##确认密码
Your identification has been saved in /root/.ssh/id_rsa. ##私钥
Your public key has been saved in /root/.ssh/id_rsa.pub. ##公钥
The key fingerprint is:
SHA256:********
The key’s randomart image is:
方法二
$ssh-keygen -f /root/.ssh/id_rsa -P ""3.对服务器加密
ssh-copy-id -i /root/.ssh/id_rsa.pub username@serverip ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.254.100
对服务机100加密:
授权主机200免密登录:
setenforce 0 systemctl disable --now firewalld Port 2222 #设定端口为2222 PermitRootLogin yes|no #对超级用户登陆是否禁止 PasswordAuthentication yes|no #是否开启原始密码认证方式 AllowUsers lee #用户白名单 DenyUsers lee #用户黑名单1. 修改端口
vim /etc/ssh/sshd_config
用户白名单:
用户黑名单:



