1 如何提高Linux ssh安全性-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何提高Linux ssh安全性

CHANBAEK 来源:TIAP 作者:TIAP 2023-02-25 17:01 次阅读

ssh 是访问远程服务器最常用的方法之一,同时,其也是 Linux 服务器受到攻击的最常见的原因之一。

不过别误会... 我们并不是说 ssh 有什么安全漏洞,相反,它在设计上是一个非常安全的协议。 但是安全起见,我们在配置 ssh 的时候,作为一个好习惯,不应该使用它的默认配置。 毕竟,默认配置是大家都知道的。

今天我们分享几个可以提高 ssh 安全性的实用方法。 不过需要注意,下面提到的方法,大家选取适合自己的,不需要全部都用,其中某些方法可能会与其他的不兼容。

例如,如果禁用基于密码的 ssh 登录,则无需使用 Fail2Ban 方案。

如果你了解 ssh 基础知识,那么就会知道 ssh 配置文件位于 /etc/ssh/sshd_config,下面我们提到的大多数操作都需要编辑此配置文件,在真正动手修改配置文件之前,最好做一下备份。 另外,对于 ssh 配置文件所作的任何更改,都需要重启 ssh 服务才能生效。

接下来我们详细看一下。

1,禁用空密码

在 Linux 中,用户账户可以不设置任何密码(或者为空密码)。 这些用户尝试使用 ssh,也不需要密码。

这是一个极大的安全隐患,我们应该禁止使用空密码。 方法是在配置文件 /etc/ssh/sshd_config 中,将 PermitEmptyPasswords 选项配置为 no:

PermitEmptyPasswords no

2,修改 ssh 的默认端口

ssh 的默认端口为 22,大多数攻击脚本都是围绕这个端口写的。 更改这个默认端口会增加 ssh 的安全性,因为会极大的减少攻击者的数量。

在配置文件中搜索端口信息,并将其更改为其他值:

Port 567

修改完成后需要记住你修改的端口(毕竟你还需要使用这个端口来登录的)。

3,禁止 ssh 使用 root 用户登录

老实说,Linux 系统应该禁止 root 用户登录,因为这是有风险的,其不会留下审计信息。 这就是 sudo 机制存在的原因。

如果系统添加了 sudo 用户,最好使用 sudo 用户通过 ssh 连接,而不是 root 用户。

要禁止 root 用户通过 ssh 访问,可以修改 PermitRootLogin 选项为 no:

PermitRootLogin no

4,禁用 ssh 协议 1

如果你使用的是比较旧的 Linux 版本,在某些低版本的 ssh 可能仍然有 ssh 协议 1 可用,该协议存在已知的漏洞,不能再使用。

较新版本的 ssh 会自动启用 ssh 协议 2,可以检查一下该配置:

Protocol 2

5,配置空闲超时间隔

空闲超时间隔是 ssh 连接可以在没有任何活动的情况下保持活动状态的时间。 这种空闲会话也是一种安全风险,所以需要配置合适的空闲超时时间间隔。

超时间隔以秒为单位,默认值是0。 我们可以将其更改为300,即保持 5 分钟的超时间隔。

ClientAliveInterval 300

在此间隔之后,ssh 服务器将向客户端发送一条活动消息。 如果没有得到响应,连接将关闭,最终用户将注销。

还可以配置在断开连接之前,发送活动消息的次数:

ClientAliveCountMax 2

6,仅允许特定用户进行 ssh 访问

当涉及到安全时,我们应该遵循最低特权原则,不要在不需要的时候给予权利。

比如,我们在 Linux 系统上可能会有若干个用户,但并不是所有用户都需要通过 ssh 访问系统。 所以我们可以设置只有少数用户可以通过 ssh 访问系统,从而限制所有其他用户。 如下配置所示:

AllowUsers User1 User2

另外,还可以配置某个用户组可访问 ssh:

AllowGroups ssh_group

此外,也可以配置 DenyUsers 和 DenyGroups 来拒绝某些用户和组来通过 ssh 访问。

7,禁用 X11 转发

X11 或 X 显示服务器是图形环境的基本框架。 X11 转发允许您通过 ssh 使用 GUI 应用程序。

基本上,客户机在服务器上运行 GUI 应用程序,但由于 X11 转发,机器之间打开了一个通道,GUI 应用程序旧显示在了客户机上。

基于此,X11 协议是有安全隐患的。 所以如果不需要它,应该禁用 ssh 中的 X11 转发。

X11Forwarding no

8,自动减轻暴力攻击

为防止 ssh 暴力攻击,可以使用比如 Fail2Ban 这样的安全工具。

Fail2Ban 可检查来自不同 IP 地址的失败登录尝试。如果这些错误尝试在设置的时间间隔内超过阈值,它将禁止该 IP 在特定时间段内访问 SSH。

我们可以根据自己的需求来配置这些需求。

9,禁用基于密码的 ssh 登录

无论做了怎样的配置,你都会在 Linux 服务器上看到通过 ssh 进行的失败登录尝试。攻击者很聪明,他们使用的脚本通常都会处理类似 Fail2Ban 工具的默认设置。

为了避免某些持续的暴力攻击,我们可以选择基于密钥的 ssh 登录。即将远程客户端系统的公钥添加到 ssh 服务器上的已知密钥列表中。通过这种方式,这些客户端机器可以访问ssh,而无需输入用户帐户密码。

完成此设置后,就可以禁用基于密码的 ssh 登录。然后只有具有指定 ssh 密钥的客户机才可以通过 ssh 访问服务器。

在使用这种方法之前,请确保已将自己的公钥添加到服务器,并且该方法有效。否则,如果你使用的是 Linode 这样的云服务器,而没有对服务器的物理访问权限,那么就可能失去对远程服务器的访问权限。

关于如何禁止使用密码进行 ssh 连接,我们在之后会专门写篇文章介绍。

10,使用 ssh 的双因素身份验证

要将 ssh 安全提升一个级别,还可以启用双因素身份验证。比如可以通过手机电子邮件或第三方阿姨应用程序接收一次性密码。

其他

可以使用以下命令查看 ssh 服务器的所有参数

sshd -T

通过这种方式,我们可以查看目前的参数配置,来检查是否需要更改,参数来增强 ssh 服务器的安全性。

另外,还需要保持 ssh 的系统更新,以修复一些可能的已知漏洞。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11292

    浏览量

    209315
  • 服务器
    +关注

    关注

    12

    文章

    9123

    浏览量

    85320
  • 安全性
    +关注

    关注

    0

    文章

    93

    浏览量

    19142
  • 文件
    +关注

    关注

    1

    文章

    565

    浏览量

    24725
  • SSH
    SSH
    +关注

    关注

    0

    文章

    188

    浏览量

    16335
收藏 人收藏

    评论

    相关推荐

    ssh连接

    和实现,二者互不兼容。SSH2比SSH1在安全性,功能和性能 上提高了很多,所以目前被广泛使用的SSH2。 1.
    发表于 03-28 16:38

    怎么提高SRAM工艺FPGA的设计安全性

    随着FPGA的容量、性能以及可靠提高及其在消费电子、汽车电子等领域的大规模应用,FPGA设计的安全性问题越来越引起人们的关注。相比其他工艺FPGA而言,处于主流地位的SRAM工艺FPGA有一些
    发表于 08-23 06:45

    如何提高SRAM工艺FPGA的设计安全性

    随着FPGA的容量、性能以及可靠提高及其在消费电子、汽车电子等领域的大规模应用,FPGA设计的安全性问题越来越引起人们的关注。
    发表于 09-30 07:23

    如何提高SRAM工艺FPGA的设计安全性

    随着FPGA的容量、性能以及可靠提高及其在消费电子、汽车电子等领域的大规模应用,FPGA设计的安全性问题越来越引起人们的关注。
    发表于 10-18 07:12

    嵌入式设备如何提高安全性

      随着越来越多的嵌入式设备接入网络并成为物联网的一部分,网络黑客们开始利用这些连接,以达到自己不可告人的目的。因此,嵌入式设备必须提高安全性,以防止黑客复制IP、盗窃数据或侵入系统,可是对于嵌入式
    发表于 06-30 11:05

    如何在提高精度和延长运行时间的同时提高电池的安全性?

    如何在提高精度和延长运行时间的同时提高电池的安全性
    发表于 03-16 11:36

    如何利用电子技术提高汽车舒适安全性

    如何利用电子技术提高汽车舒适安全性?电子技术的导入会成为今后技术开发的关键
    发表于 05-13 06:28

    如何提高电动汽车的效率和安全性

    如何提高电动汽车的效率和安全性
    发表于 11-09 07:51

    linux操作系统的安全性

    linux操作系统的安全性 计算机系统安全性的内涵 操作系统的安全性功能 操作系统的安全机制
    发表于 04-28 15:05 0次下载

    Linux安全性分析说明

    很多人看到系统修复模式这节内容时,都会有所感慨:Linux的密码破解太容易了,这样的操作系统还安全吗?Linux不是以安全性著称的吗?
    发表于 07-14 14:17 862次阅读
    <b class='flag-5'>Linux</b>的<b class='flag-5'>安全性</b>分析说明

    设计LSM钩子提升Linux漏洞安全性

    Tracee是一个用于Linux的运行时安全性和取证的开源项目,用于解决常见的Linux安全性问题。
    的头像 发表于 07-11 10:55 934次阅读

    车内传感 AI 提高安全性

    车内传感 AI 提高安全性
    的头像 发表于 12-28 09:51 651次阅读

    如何修改Linux系统的SSH端口

    SSH 是一种网络协议,用于与 Linux 系统进行远程安全通信。默认情况下,SSH 服务使用端口 22。
    的头像 发表于 03-20 16:46 2471次阅读

    Linux中常用的6种SSH身份验证方法

    。由于远程访问可能涉及到安全问题,因此 Linux 提供了多种身份验证方法来保护 SSH 连接的安全性。本文将介绍 Linux 中常用的 6
    的头像 发表于 05-12 14:42 3084次阅读

    Linux上建立SSH安全连接的10种方法

    建立 SSH 安全连接的方法是通过 SSH (Secure Shell) 协议建立的加密通道,用于在服务器和客户机之间的安全通信。SSH
    的头像 发表于 05-29 10:29 6130次阅读