前言
是学习linux以来接触到的第一个服务。
Openssh功能概述
openssh是SSH(Secure Shell)协议的免费开源软件,但是还有其他的软件,比如说telnet.
软件安装名称:Openssh-server
配置文件:/etc/ssh/sshd_conf
默认端口:22(ip相当于计算机向外界开启的一个大门,而端口就相当于室内的小门)
客户端命令:ssh
在做这个实验的过程中我们需要两台虚拟机,我们将两台虚拟机分别称为servera和workstation分别称为测试端和配置端。
将这两个主机的ip地址分别设置成172.25.254.100和172.25.254.200
ip addr show
rpm -qa | grep openssh-server 查看openssh是否安装
ssh命令
ssh remoteUSER@remoteIP
- -l 指定登陆用户
- -i 指定密钥(暂时无法验证)
- -x 开启图形(在所连接的远程主机上开启图形界面)
ssh -l root 172.25.254.70 -X - -p 指定端口
ssh -l root 172.25.254.70 -p 22 - -f 后台运行(不占用终端)
- -o 指定连接参数
ssh -l root 172.25.254.70 -X gedit
ssh -l root 172.25.254.70 -X -o RemoteCommand=gedit - -t 指定连接跳板(本台主机通过1连接到70,但70主机会觉得是1连接的而不是本台主机所连接的)
ssh -t [email protected] ssh [email protected]
注意:w -i用来监控本台主机的被连接信息
Openssh服务的key认证
密码认证
- 至少6个字符
- 有数字,下划线,字母,特殊符号等
- 易泄漏
- 可被暴力破解
- 密码容易丢失
密钥认证
- 新型认证方式,分为公钥和私钥
- 公钥上传服务器
- 私钥配对认证,不会被盗用
- 攻击者一般无法通过密钥登陆服务器
Openssh KEY
- 支持rsa及dsa加密
- 加密算法
- 生成密钥 ssh-keygen
- 上传密钥 ssh-copy-id -i keyfile remoteUSER@remoteIP
Openssh服务的安全优化
配置文件
- /etc/ssh/sshd_config
配置参数
- Port 22 监听端口
- Protocol 2 指定协议版本
- ListenAddress 绑定IP
- HostKey 设定HostKey密钥路径
- PermitRootLogin 设定超级用户是否能登录
- PubkeyAuthentication 公钥认证开关
- PasswordAuthentication 密码认证开关
- AllowUsers 用户白名单
- DenyUsers 用户黑名单
后记
还需继续练习