当前位置: 当前位置:首页 > 探索 > Linux服务—openssh—学习笔记 正文

Linux服务—openssh—学习笔记

2024-05-02 11:56:42 来源:工力悉敌网 作者:综合 点击:843次

Linux服务—openssh—学习笔记

1. 什么是学习 SSH

为 Secure Shell 的缩写,是建立在应用层基础上的安全协议。SSH是笔记较为可靠的专为远程登录会话和其他网络服务提供安全性的协议。利用用 SSH 协议可以有效防止远程管理过程中的学习信息泄露问题。

OpenSSH 服务是笔记 SSH 协议的免费开源实现,可以用来进行远程控制, 或在计算机之间传送文件。OpenSSH提供了服务端后台程序和客户端工具,用来加密远程控制和文件传输过程中的学习数据,并由此来代替原来的类似服务。

通过使用SSH,你可以把所有传输的笔记数据进行加密,这样可以较好地抑制"中间人"这种攻击,也可能够防御DNS欺骗和IP欺骗。

使用SSH,还有一个额外的学习好处就是传输的数据是经过压缩的,所以可以加快传输的速度。

接下来介绍使用其传输文件的笔记命令。

命令:将本机文件复制到远程服务器上(上传)
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
命令格式:
在这里插入图片描述
在这里插入图片描述
将远程服务器上的学习文件复制到本机(下载)
命令格式:
在这里插入图片描述
注意:

  • 如果远程服务器openssh有特殊限制,scp便要走特殊端口,具体用什么端口视情况而定,命令格式如下:
  • 使用scp要注意所使用的用户是否具有可读取远程服务器相应文件的权限
  • 如果是拷贝文件夹添加参数

2. 安装 openssh

openssh默认已经安装于centos中,无须额外的安装。相关的笔记软件包可以通过以下命令进行查询。

在这里插入图片描述

3. 服务的学习状态/停止/启动

可使用命令查看和设置openssh服务的状态。

注意:如果服务关闭,则无法远程登录服务器。笔记
在这里插入图片描述

4. 配置免密码(公私钥认证)登录

服务主要有两种登录方式:第一种为密码口令登录,第二种为公钥登录。学习
linux下可以用用命令生成公钥/私钥对。笔记
若有机器A,B。学习现想A(客户机)通过ssh免密码登录到B(服务器)。 在A机(客户机)下使用命令生成公钥/私钥对。在执行此命令后将在目录下将生成和文件。
在这里插入图片描述
进入文件夹内可以看到如下密钥文件

![在这里插入图片描述](https://img-blog.csdnimg.cn/
在B机器(服务器)开启证书的验证,默认是开启的。 若没有开启可修改ssh配置文件,,将文本中有关和的条目修改为如下内容:

在这里插入图片描述
随后重启服务
A机器(客户机)使用命令拷贝密钥文件到B机器(服务器)。
在这里插入图片描述
随后客户机访问服务器,我们会发现直接无密码登录。
在这里插入图片描述
而如果我们此时使用另外一台主机登录,我们会发现可以通过密码的方式登录。我们可以修改配置文件中的 值为,可以禁止使用密码的方式。
在这里插入图片描述

5. openssh 配置文件

登录服务器将配置的公钥删除,以免影响后面实验。

在这里插入图片描述
恢复openssh配置文件,重启服务

5.1 修改 SSH 默认端口

所需命令:

OpenSSH常用配置文件有两个和 。

为客户端配置文件。

为服务端配置文件。

取消注释,并修改端口为2222(ssh默认端口为22)
在这里插入图片描述
设置好之后,保存退出,并重启SSH服务。

我们通过客户机访问,会发现默认的22端口已经无法访问,需要使用 的方式进行访问。
在这里插入图片描述

5.2 配置ssh日志

所需命令:

表示当有人使用ssh登录系统时,ssh会记录信息,记录类型为AUTHPRIV。

表示设置记录sshd日志信息的级别。
在这里插入图片描述
一项,规定了服务日志的性质,也规定了服务日志存储的默认路径。ssh配置文件的这一字段一般是不需要修改的。

设置描述默认日志文件local0BIG-IP 特定消息/var/log/ltmlocal1EM 特定消息 APM 特定消息/var/log/em /var/log/apmloacl2GTM 和链路控制器特定消息/var/log/gtmlocal3ASM 特定消息/var/log/asmloacl4ITCM 门户和服务器 (iControl) 特定消息/var/log/ltmloacl5包过滤特定消息/var/log/pktfilterloacl6HTTPD 特定消息/var/log/httpd/httpd_errorsloacl7Linux 特定的引导消息/var/log/boot.logcroncron进程相关的消息/var/log/crondaemon与系统守护进程相关的消息(包括namedntpd/var/log/daemon.logkern内核消息/var/log/kern.logmail邮件系统消息/var/log/maillogauth不包含敏感信息的用户身份验证消息/var/log/secureauthpriv包含敏感信息的用户身份验证消息/var/log/secureuser与用户进程相关的消息/var/log/user.log

表示设置记录sshd日志信息的级别。可以理解为设置了日志的详细程度。

等级描述冗长度emerg紧急系统紧急信息最低限度alert需要管理员干预的严重错误低的crit严重错误,包括硬件和文件系统故障低的err非关键但可能非常重要的错误消息低的warning至少应该记录以供审查的警告消息中等的notice包含有用但可能会被忽略的消息中等的info包含有用但可能会被忽略的消息高的debug仅用于故障排除的消息最大值

你可以将此条注释取消,将其修改为,重启ssh服务(systemctl restart sshd.service),观察修改前后日志(tail -f /var/log/secure)详细度的变化。

5.3 禁止root登录

所需命令:

在部分,取消注释并修改为 ,这一设置决定了是否允许root用户登录,将yes改为no,则root不能登录 。
在这里插入图片描述

在这里插入图片描述
但是重启服务后仍然使用密码登陆成功
在这里插入图片描述
这是因为需要修改的是另外的文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
之后不要马上重启,先生成key后,拷贝的服务器,防止后面无法连接

之后重启服务后,使用kali远程连接,可以通过密钥直接免密登陆,使用另一台机器再连接服务器,输入正确密码后还是无法连接

也可以修改禁止root登陆后,添加一个新账户并设置密码,再重启ssh服务,在客户机上使用root登录则会提示权限拒绝,而使用普通用户则成功登录

5.4 配置长时间无人操作自动断开ssh链接

所需命令:

,设置了指定时间内没有成功登录,将会断开连接,若无单位则默认时间为秒。图中默认为2分钟,如需调整可取消注释,调整为自己想要设定的值。
在这里插入图片描述
在这个配置文件的末尾加上

执行命令,使配置文件生效。
在这里插入图片描述
可以看到,当命令终端超过10秒无人操作,ssh连接自动断开了。

5.5 开启空口令登录

配置文件的,默认设置禁止空口令登录,将其取消掉注释并将改为,更改完后记得重启sshd服务使配置文件生效

注:使用空口令登录须开启密码认证
在这里插入图片描述
添加新用户测试

在这里插入图片描述
测试空口令登录成功
在这里插入图片描述

5.6 访问速度调优

所需命令:

将此两行改为no可解决ssh链接慢的问题
在这里插入图片描述
在这里插入图片描述

5.7 启用密码策略

启用密码策略有两个配置文件: 第一个是 修改文件里的策略:

第二个配置文件为:修改文件里的策略:

配置文件长这样:
在这里插入图片描述
在这里插入图片描述
密码策略这里修改后,只对新建用户生效。

6. ssh 的日志

ssh服务的日志存储于。 大家可以自由定制所想查看的日志,例如模拟登录失败,登录成功等不同方式,以观察日志的不同变化。 状态:

  • Failed password 为密码错误
  • Accept password 为登录成功
  • disconnected by user 为断开链接
作者:热点
------分隔线----------------------------
头条新闻
图片新闻
新闻排行榜