如何在 Arch Linux 系统上保障 SSH 服务器的安全性

OpenSSH 是一种安全的远程登录协议,能够在不安全的网络上建立安全通道。它使系统管理员能够通过安全通道远程管理 Linux 服务器。它采用客户端-服务器架构,并允许用户远程连接到 SSH 服务器。与未加密的协议不同,SSH 会对流量、登录会话和密码进行加密。OpenSSH 是最受欢迎且应用最广泛的协议之一。

在这篇文章中,我们将展示如何在 Arch Linux 系统上设置安全的 SSH 服务器。

步骤 1 – 配置存储库

在 Arch Linux 系统中,默认的存储库已过时,因此您需要修改默认的镜像列表。您可以通过编辑镜像列表配置文件来完成此操作:​​​​​​​

nano /etc/pacman.d/mirrorlist

删除所有行,并添加以下行:

## Score: 0.7, United States
Server = http://mirror.us.leaseweb.net/archlinux/$repo/os/$arch
## Score: 0.8, United States
Server = http://lug.mtu.edu/archlinux/$repo/os/$arch
Server = http://mirror.nl.leaseweb.net/archlinux/$repo/os/$arch
## Score: 0.9, United Kingdom
Server = http://mirror.bytemark.co.uk/archlinux/$repo/os/$arch
## Score: 1.5, United Kingdom
Server = http://mirrors.manchester.m247.com/arch-linux/$repo/os/$arch
Server = http://archlinux.dcc.fc.up.pt/$repo/os/$arch
## Score: 6.6, United States
Server = http://mirror.cs.pitt.edu/archlinux/$repo/os/$arch
## Score: 6.7, United States
Server = http://mirrors.acm.wpi.edu/archlinux/$repo/os/$arch
## Score: 6.8, United States
Server = http://ftp.osuosl.org/pub/archlinux/$repo/os/$arch
## Score: 7.1, India
Server = http://mirror.cse.iitk.ac.in/archlinux/$repo/os/$arch
## Score: 10.1, United States
Server = http://mirrors.xmission.com/archlinux/$repo/os/$arch

保存并关闭文件,然后使用以下命令更新所有软件包索引:

pacman -Syu

步骤 2 – 更改 SSH 默认端口

默认情况下,SSH 监听 22 端口,因此容易受到 DDoS 攻击。在这种情况下,建议将默认 SSH 端口更改为大于 1024 的端口。

要更改 SSH 端口,请编辑 SSH 配置文件。

nano /etc/ssh/sshd_config

找出以下直线:

Port 22

然后,将其替换为以下这行:

Port 8087

保存并关闭文件,然后重启 SSH 服务以使更改生效。

systemctl restart sshd

步骤 3 – 禁用 SSH root 登录

root 用户拥有对文件系统的无限制访问权限,因此 root 账户是黑客最青睐的目标。您可以通过编辑 SSH 配置文件来禁用 root 用户通过 SSH 登录。

nano /etc/ssh/sshd_config

找出以下直线:

#PermitRootLogin prohibit-password

已将其替换为以下代码行。

PermitRootLogin no

保存并关闭文件,然后重启 SSH 服务以使更改生效。

步骤 4 – 限制 SSH 访问

此外,仅向有限用户授予远程 SSH 服务器访问权限也是一种良好的实践。您可以通过 SSH 配置文件定义允许列表和拒绝列表。

nano /etc/ssh/sshd_config

添加以下行:

AllowUsers user1 user2 user3

保存并关闭文件,然后重启 SSH 服务以应用更改。

systemctl restart sshd

步骤 5 – 启用基于密钥的身份验证

使用 SSH 密钥而非密码来验证 SSH 服务器身份是一个好主意。为此,首先需要编辑 SSH 配置文件并启用基于密钥的身份验证。

nano /etc/ssh/sshd_config

修改以下这行代码:

PubkeyAuthentication yes

保存并关闭文件,然后重启 SSH 服务。

systemctl restart sshd

步骤 6 – 禁用密码登录

禁用密码验证并启用密钥验证也是一个好主意。

nano /etc/ssh/sshd_config

找到并修改以下这行代码:

PasswordAuthentication no

保存并关闭文件,然后重启 SSH 服务以应用更改。

systemctl restart sshd

结论

本文介绍了如何在 Arch Linux 上保护 OpenSSH 服务器。希望本指南能帮助您保护 SSH 服务器的安全。如您在云计算方面遇到问题,欢迎咨询余初云!

原创文章,作者:余初云,如若转载,请注明出处:https://blog.jidcy.com/jsjc/2278.html

Like (0)
Previous 2026年4月3日 上午11:05
Next 2026年4月3日 下午2:10

相关推荐

  • 选择共享虚拟主机建站好不好?

    在数字化办公普及的当下,不少企事业单位都将搭建官方网站纳入计划表,在搭建网站时,很多站长采用虚拟主机是觉得虚拟主机使用起来非常方便,但一些站长也觉得虚拟主机的性能不如云服务器。今天…

    2026年5月21日
    0
  • Web攻击:详解SQL注入、XSS等九种注入攻击

    注入攻击属于众多攻击方式当中的一种,在这类攻击中,攻击者会向程序输入恶意的数据内容,解析引擎则会将这些恶意输入当作命令或查询语句的一部分加以处理,进而在无形中改变了程序原本的执行流…

    2026年7月10日
    0
  • 如何更新Ubuntu和Debian版本

    过时的操作系统一旦停止接收安全补丁,便会成为攻击者眼中的”软柿子”。那些心怀不轨的人往往专门盯着这类系统下手——利用已知漏洞悄无声息地渗透服务器,进而窃取用…

    2026年5月11日
    0
  • 理解带宽、延迟和流量

    在线观看电影、参加视频通话或部署云应用时,有三个无形因素决定了体验的流畅程度:带宽、延迟和流量。这些术语经常被混淆,但它们描述的是网络性能的不同方面。 带宽:定义与实际意义 带宽定…

    2026年4月17日
    0
  • Windows 重置 MySQL Root 根密码

    知晓服务器的 MySQL Root 密码,可用于登录数据库控制台手动创建数据库、新建用户并关联数据库、为数据库用户分配对应权限等操作。 若遗忘 MySQL Root 用户密码,可按…

    2026年5月26日
    0
  • IPv4与IPv6:互联网网络层协议的演进与迁移路径

    众所周知,Internet是当前全球规模最大、影响力最广的计算机网络,其网络层作为核心支撑部分,主要涵盖了网际协议(IP)、路由协议以及互联网控制报文协议(ICMP)等关键内容。 …

    2026年4月23日
    0
  • 如何在 Linux 上重置 MySQL 的 Root 根密码

    服务器的 MySQL Root 密码,可用于登录数据库控制台手动创建数据库、新建用户并关联数据库、为指定数据库分配用户权限等操作。 若遗忘 MySQL Root 用户密码,可按照下…

    2026年5月26日
    0
  • 保护性DNS是什么?

    保护性 DNS (PDNS) 是利用现有 DNS 协议和架构来分析 DNS 查询并采取措施减轻威胁的安全服务。保护性DNS 从源头上阻止对恶意软件、勒索软件、网络钓鱼攻击、病毒、恶…

    2026年5月25日
    0
  • Linux常用到的归档与压缩命令盘点

    在日常运维工作中,不可避免会打包压缩和解压文件,Linux上有多个类似功能的命令,如 tar、gzip、bzip2、xz、zip,今天就跟大家一起区分一下并学会如何高效实用它们。 …

    2026年5月7日
    0
  • 机架、刀片、塔式服务器介绍

    服务器属于一类计算装置,专门用于响应请求并向其他程序、设备或客户端供给服务与功能。一般而言,服务器拥有比普通电脑更强的运算能力、更高的内存以及更大的存储容量。借助服务器,客户端能够…

    2026年6月11日
    0