openssh服务的部署及安全优化

一、openssh功能概述

openssh是一个服务,开启了openssh服务,就对外开放了远程连接的接口,是SSH(Secure Shell)协议的免费开源软件,软件安装的名称为Openssh-server,配置文件在/etc/ssh/sshd_conf,默认端口为22,客户端命令为ssh,服务端命令为sshd
可以使用命令rpm -qa | grep open来查看系统中是否安装了openssh-server软件,如果安装了则可以实现远程连接

二、ssh命令的用法

命令为ssh 服务端用户@服务端ip
常见的参数如下表

-l 指定登录用户
-i 指定**
-x 开启图形
-p 指定端口
-f 后台运行
-o 指定连接参数
-t 指定连接跳板

在实验ssh命令之前首先需要搭建实验环境,及使两个虚拟机servera以及workstation之间建立联系,首先在workstation虚拟机中输入命令nm-connection-editor,将ip地址设置为真机ip地址加100,然后在servera虚拟机中同样输入命令nm-connection-editor,将ip地址设置为真机ip地址加200,可以通过命令ip addr show查看ip是否设置成功,然后将workstation作为服务端,将servera作为客户端,在客户端中输入命令ping 服务端ip查看网络是否互通,再在servera中输入ssh [email protected]服务端ip进行连接
在下图中[email protected]为服务端,[email protected]为客户端,在客户端中输入命令ssh -l root 服务端地址输入服务端root用户密码可以在客户端中进入服务端,但是此时远程连接之后的界面是无图形界面,进入服务端后输入gedit后会显示警告,不能进入图形模式
openssh服务的部署及安全优化加上参数-X后能够进入gedit图形界面
openssh服务的部署及安全优化openssh服务的部署及安全优化可以直接在执行ssh命令时在参数后加上gedit则连接完成后打开gedit,在客户端过滤gedit进程,没有执行
openssh服务的部署及安全优化在服务端过滤gedit进程显示存在这个进程,所以远程连接成功
openssh服务的部署及安全优化远程连接并在后台运行gedit界面
openssh服务的部署及安全优化[email protected]作为跳板去连接服务端[email protected],需要输入连接的两个用户的密码能够远程连接成功
openssh服务的部署及安全优化当客户端连接了服务端后,服务端可以通过命令w -i来查看有哪些客户连接了它,上述实验中通过跳板[email protected]连接服务端后在服务端中显示跳板连接了服务端而不是客户端
openssh服务的部署及安全优化参数-o可以指定连接参数可以连接远程命令参数RemoteCommand在打开服务端gedit
openssh服务的部署及安全优化openssh服务的部署及安全优化

三、openssh key

加密方法:
1、生成**,命令为ssh-******
2、上传**,命令为ssh-copy-id -i keyfile 要锁的服务端用户端口
一般ssh-******生成的文件中存在两个文件,/root/.ssh/id_rsa是存放私钥的文件,一般用于客户端,/root/.ssh/id_rsa.pub是存放公钥的文件,一般用于服务端,上传**中的keyfile是存放公钥的文件

文件 功能
~/.ssh/authorized_keys 用于保存用户的公钥文件
~/.ssh/known_hosts 辨别服务器的唯一散列码
~/.ssh/id_rsa 用户的私钥文件
~/.ssh/id_rsa.pub 用户的公钥文件

此实验中虚拟机servera为服务端,workstation为客户端
生成**
openssh服务的部署及安全优化将公钥上传
openssh服务的部署及安全优化
在客户端中远程连接服务端
openssh服务的部署及安全优化在真机中连接服务端需要输入密码
openssh服务的部署及安全优化在服务端servera中输入命令vim /etc/ssh/sshd_config更改配置文件中密码认证PasswdAuthentication为no,及不允许远程连接时密码登录,如果有私钥则直接完成远程连接,如果没有私钥则直接显示权限限制,不能通过登录密码完成远程连接

openssh服务的部署及安全优化
openssh服务的部署及安全优化openssh服务的部署及安全优化再次在真机中远程连接服务端显示权限限制并且不允许输入密码连接
openssh服务的部署及安全优化通过scp命令可将私钥文件传输为真机,需要输入真机用户密码
openssh服务的部署及安全优化openssh服务的部署及安全优化再次将真机连接服务端servera,显示连接成功
openssh服务的部署及安全优化更换公钥可以将保存公钥的文件~/.ssh/authorized_keys重命名为一个新的文件
openssh服务的部署及安全优化在客户端连接服务端失败
openssh服务的部署及安全优化

四、sshd服务常用相关配置参数

配置文件为
/etc/ssh/sshd_config
配置参数主要包括

port 22 监听端口
protocol 2 指定协议版本
ListenAddress 绑定ip
HostKey 绑定HostKey**路径
PermitRootLogin 设定超级用户是否能登录
PubkeyAuthentication 公钥认证开关
PasswdAuthentication 密码认证开关
AllowUsers 用户白名单
DenyUsers 用户黑名单