服务器远程登录设置指南
在运维工作中,通过 SSH (Secure Shell) 协议进行远程登录是最常见且最安全的方式,本指南将详细介绍如何在 Linux 服务器上配置远程登录。
准备工作
在开始之前,请确保你具备以下条件:
- 服务器的 IP 地址。
- 服务器的 用户名 和 密码(或 SSH 密钥)。
- 服务器已安装并运行 SSH 服务。
第一步:安装 SSH 服务
大多数 Linux 发行版在安装时会默认安装 SSH,如果没有,请根据你的系统执行以下命令:
-
Ubuntu / Debian 系列:
- 更新软件包列表:
sudo apt update - 安装 OpenSSH Server:
sudo apt install openssh-server
- 更新软件包列表:
-
CentOS / RHEL / Fedora 系列:
- 安装 OpenSSH Server:
sudo yum install openssh-server
- 安装 OpenSSH Server:
-
检查服务状态:
- 使用命令:
sudo systemctl status ssh - 如果显示 active (running),说明服务已正常启动。
- 使用命令:
第二步:配置 SSH 服务
为了提高安全性或更改默认设置,你需要编辑 SSH 的配置文件。
- 配置文件路径:
/etc/ssh/sshd_config - 编辑命令:
sudo nano /etc/ssh/sshd_config(也可以使用vi或vim)
常见的配置项说明:
- Port 22:默认端口为 22,为了安全,建议修改为一个非标准端口(如 2222)。
- PermitRootLogin:控制是否允许 root 用户直接登录,建议设置为
no,通过普通用户登录后再使用sudo切换。 - PasswordAuthentication:控制是否允许使用密码登录,如果使用密钥登录,建议将其设置为
no。
修改完成后,必须重启服务使配置生效:
sudo systemctl restart ssh
第三步:配置防火墙
如果服务器启用了防火墙,必须允许 SSH 端口通过,否则远程连接会被拦截。
-
使用 UFW (Ubuntu/Debian):
- 允许 22 端口:
sudo ufw allow 22/tcp - 如果修改了端口(如 2222):
sudo ufw allow 2222/tcp - 启用防火墙:
sudo ufw enable
- 允许 22 端口:
-
使用 Firewalld (CentOS/RHEL):
- 允许 SSH 服务:
sudo firewall-cmd --permanent --add-service=ssh - 如果修改了端口:
sudo firewall-cmd --permanent --add-port=2222/tcp - 重新加载配置:
sudo firewall-cmd --reload
- 允许 SSH 服务:
第四步:客户端连接方法
配置完成后,你可以从本地电脑进行连接。
-
Linux / macOS / Windows (PowerShell/CMD):
- 使用命令:
ssh 用户名@服务器IP
- 如果使用了非标准端口:
ssh -p 端口号 用户名@服务器IP
- 使用命令:
Windows 专用工具:
- PuTTY:经典的轻量级 SSH 客户端。
- Xshell:功能强大的专业终端工具。
- MobaXterm:集成了 SSH、FTP、X11 等功能的综合工具。
第五步:安全加固建议(重要)
为了防止暴力破解攻击,强烈建议执行以下安全措施:
- 使用 SSH 密钥对登录:通过
ssh-keygen生成密钥,并将公钥上传至服务器,禁用密码登录。 - 修改默认端口:将端口从 22 改为其他随机端口,可以避开大部分自动化扫描脚本。
- 禁用 Root 直接登录:强制使用普通用户登录,增加攻击难度。
- 安装 Fail2Ban:这是一个自动监控日志并封禁多次尝试密码错误 IP 的工具。
首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/488543.html



