学习目标
• 1.1 Openssh功能介绍
• 1.2 ssh命令
• 1.3 Openssh服务的key认证
• 1.4 Openssh服务的安全优化
用两太虚拟机实验,workstations为试验机试验机,servera为服务机,进行试验
1.1 Openssh功能概述
Openssh
OpenSSH 是 SSH (Secure SHell) 协议的免费开源软件
软件安装名称
• Openssh-server
配置文件
• /etc/ssh/sshd_config
默认端口
• 22
客户端命令
• ssh
1.2 ssh命令的用法
ssh命令
ssh remoteUSER@remoteIP
• -l 指定登录用户 ssh -l root 172.25.254.119
• -i 指定密钥
• -x 开启图形 ssh -l root 172.25.254.119 -X gedit # -X后,gedit才可以打开
• -p 指定端口 ssh -l root 172.25.254.119 -p 666
• -f 后台运行 ssh -f -l root 172.25.254.119 -X gedit #在后台执行,不占用窗口
• -o 指定连接参数 ssh -l root 172.25.254.119 -o StrictHostkeyChecking=no #不询问yes/no
• -t 指定连接跳板 ssh -t root@172.25.254.1 ssh root root@172.25.254.70 #以1为跳板,连接到119,在119进行 w -i时会显示1访问过它的地址,而不是本机。
1.3 Openssh服务的key认证
Openssh认证方式
密码认证
• 至少6个字符
• 包含数字,字母,下划线特殊符号等
• 易泄漏
• 可被暴力破解
• 密码容易丢失
密钥认证
• 新型认证方式,分为公钥及私钥
• 公钥上传服务器
• 私钥配对认证,不会被盗用
• 攻击者一般无法通过密钥登录服务器
Openssh KEY
支持rsa及dsa加密
加密方法
• 生成密钥 ssh-keygen
• 上传密钥 ssh-copy-id –i keyfile remoteUSER@remoteIP
关于Openssh的文件
• 内容
文件 功能
~/.ssh/authorized_keys 用于保存用户的公钥文件
~/.ssh/known_hosts 辨别服务器的唯一散列码
~/.ssh/id_dsa 用户的私钥文件
~/.ssh/id_rsa.pub 用户的公钥文件
操作步骤:
先在server机 :setenforce 0
1.workstation虚拟机上操作
ssh-keygen -f /root/.ssh/id_rsa -P “”
ls => /root/.ssh/id_rsa 私钥 /root/.ssh/id_rsa.pub 公钥
2.workstation虚拟机上操作
ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.254.219 #servera虚拟机
3.
workstation ssh root@172.25.254.172.219
真机 ssh root@172.25.254.172.219 passwd
4.servera上操作
vim /etc/ssh/sshd_config
第73行 PasswordAuthentication no
systemctl reload sshd
5.真机 ssh root@172.25.254.172.219 perm deny!!
6.workstation scp /root/.ssh/id_rsa kiosk@172.25.254.19:/home/kiosk/.ssh
7.真机 ssh root@172.25.254.219
1.4 Openssh服务的安全优化
sshd服务常用相关配置参数
配置文件
• /etc/ssh/sshd_config
配置参数
• Port 22 监听端口
• Protocol 2 指定协议版本
• ListenAddress 绑定IP
• HostKey 设定HostKey密钥路径
• PermitRootLogin 设定超级用户是否能登录
• PubkeyAuthentication 公钥认证开关
• PasswordAuthentication 密码认证开关
• AllowUsers 用户白名单 #当设置AllowUsers student 时,其它主机远程连接这台主机时,只能以student用户身份运行,而不能使用root身份
• DenyUsers 用户黑名单 #与白名单相对