当前位置:首页 > 服务器技术 > 正文

Linux网络SSH服务配置(从零开始搭建安全远程登录环境)

在现代 Linux 系统管理中,SSH(Secure Shell) 是最常用的远程登录和文件传输协议。它通过加密通信保障数据安全,是系统管理员不可或缺的工具。本教程将手把手教你如何在 Linux 系统上配置 SSH 服务,即使你是刚接触 Linux 的小白,也能轻松上手。

Linux网络SSH服务配置(从零开始搭建安全远程登录环境) SSH服务配置 Linux远程登录 安全Shell设置 OpenSSH教程 第1张

一、什么是 SSH?

SSH(Secure Shell)是一种网络协议,用于在不安全的网络中安全地远程登录到另一台计算机。它替代了传统的 telnet、rlogin 等明文传输协议,所有数据都经过加密处理,有效防止窃听、连接劫持等攻击。

二、安装 OpenSSH 服务

大多数 Linux 发行版默认已安装 OpenSSH 客户端,但服务端(sshd)可能未安装。下面以 Ubuntu/Debian 和 CentOS/RHEL 为例说明安装方法。

Ubuntu / Debian 系统:

sudo apt updatesudo apt install openssh-server -y

CentOS / RHEL / Rocky Linux 系统:

sudo yum install openssh-server -y# 或者使用 dnf(较新版本)sudo dnf install openssh-server -y

三、启动并启用 SSH 服务

安装完成后,需要启动 SSH 服务,并设置开机自启,确保系统重启后仍可远程访问。

# 启动 SSH 服务sudo systemctl start sshd# 设置开机自启sudo systemctl enable sshd# 检查服务状态sudo systemctl status sshd

如果看到绿色的 “active (running)”,说明 SSH 服务已成功运行。

四、基本安全配置(修改 SSH 配置文件)

为了提升系统安全性,建议对 SSH 进行一些基础加固。配置文件位于 /etc/ssh/sshd_config

使用你喜欢的编辑器(如 nano 或 vim)打开配置文件:

sudo nano /etc/ssh/sshd_config

以下是一些推荐的安全设置(找到对应行,取消注释并修改):

  • 更改默认端口(可选但推荐):
    Port 2222(避免使用默认的 22 端口,减少自动化扫描攻击)
  • 禁止 root 直接登录
    PermitRootLogin no
  • 仅允许特定用户登录(可选):
    AllowUsers your_username
  • 禁用密码登录(推荐使用密钥认证)
    PasswordAuthentication no

修改完成后,保存文件并重启 SSH 服务使配置生效:

sudo systemctl restart sshd

五、配置防火墙(开放 SSH 端口)

如果你启用了防火墙(如 ufw 或 firewalld),需要放行 SSH 端口。

Ubuntu(使用 ufw):

# 如果使用默认端口 22sudo ufw allow 22/tcp# 如果你改成了 2222sudo ufw allow 2222/tcp

CentOS(使用 firewalld):

# 默认端口sudo firewall-cmd --permanent --add-service=ssh# 自定义端口(如 2222)sudo firewall-cmd --permanent --add-port=2222/tcp# 重载防火墙sudo firewall-cmd --reload

六、从客户端连接测试

现在你可以从另一台电脑使用 SSH 客户端连接你的 Linux 服务器了。

# 默认端口 22ssh username@服务器IP地址# 自定义端口(如 2222)ssh -p 2222 username@服务器IP地址

如果一切配置正确,你将成功登录到远程服务器!

七、总结

通过本教程,你已经掌握了如何在 Linux 系统上安装、启动并安全配置 SSH服务配置。无论是进行日常运维还是远程开发,Linux远程登录 都变得既安全又便捷。记住,良好的 安全Shell设置 能有效抵御网络攻击,而 OpenSSH教程 中提到的最佳实践应成为你系统管理的常规操作。

提示:生产环境中建议结合密钥认证、Fail2ban 等工具进一步提升安全性。