上一篇
如何开启远程连接linux
- Linux
- 2025-08-04
- 5
SSH服务,配置防火墙放行端口22,用客户端工具输入IP、用户名及密码/密钥即可远程连接Linux
是关于如何开启远程连接Linux系统的详细指南,涵盖多种方法和场景:
SSH命令行连接(最常用)
安装与启动SSH服务端
- Debian/Ubuntu系:执行
sudo apt update && sudo apt install openssh-server
完成安装;若为CentOS/Red Hat则使用sudo yum install openssh-server
,随后通过sudo systemctl start sshd
启动服务,并运行sudo systemctl enable sshd
使其开机自启。 - 状态验证:输入
sudo systemctl status sshd
确认服务正常运行,此时可通过其他终端尝试连接。
客户端连接方式
- Linux/macOS原生支持:直接在本地终端运行
ssh username@目标IP地址
(如ssh alice@192.168.1.100
),首次连接需接受服务器指纹并输入密码。 - Windows工具推荐:PuTTY、MobaXterm或FinalShell均提供图形化界面操作,以PuTTY为例,配置步骤如下表:
| 参数项 | 值示例 | 说明 |
|———————|—————————-|—————————–|
| Host Name (or IP) | root@121.40.XX.XX | 格式为“用户名@公网IP” |
| Port | 22 | SSH默认端口 |
| Connection type | SSH | 必须选择此项 |
| Saved Sessions | test | 自定义会话名称便于后续复用 | - 免密登录设置:在本地生成密钥对(
ssh-keygen -t rsa
),默认路径保存至~/.ssh/id_rsa
(私钥)和~/.ssh/id_rsa.pub
(公钥);执行ssh-copy-id username@目标IP地址
将公钥推送到服务器,此后登录无需输入密码。
安全增强建议
- 修改默认端口:编辑配置文件
sudo nano /etc/ssh/sshd_config
,定位Port参数改为非标准端口(如2222),重启服务使生效(sudo systemctl restart sshd
)。 - 禁用root直接登录:同一文件中添加
PermitRootLogin no
,提升系统安全性。 - 防火墙放行规则:Ubuntu使用
sudo ufw allow 22
开放SSH端口;CentOS则执行sudo firewall-cmd --add-port=22/tcp --permanent
并重载规则。
图形化远程桌面方案
VNC实现虚拟网络计算
- 部署步骤:先安装服务端程序,Ubuntu执行
sudo apt install tightvncserver
,CentOS运行sudo yum install tigervnc-server
;启动时指定显示编号(如vncserver :1
对应端口5901),系统会提示设置访问密码。 - 客户端接入:使用RealVNC或TigerVNC等工具,输入格式为
目标IP地址:显示号
(例如168.1.100:1
),注意需额外配置防火墙允许该端口通信(sudo ufw allow 5901
)。
XRDP兼容RDP协议
- 安装与启动:全平台通用命令分别为Ubuntu的
sudo apt install xrdp
和CentOS的sudo yum install xrdp
;管理服务状态通过sudo systemctl start xrdp
及sudo systemctl enable xrdp
实现常驻内存。 - Windows端操作:按下Win+R组合键调出运行对话框,输入
mstsc
打开远程桌面连接器,填入Linux主机IP后使用系统账号登录即可获得图形界面。
TeamViewer跨平台方案
该工具支持多操作系统间的可视化控制,只需在南北机同步安装客户端程序,遵循向导完成配对即可建立双向交互通道,适合需要高频次切换操作场景。
文件传输辅助协议
SCP/SFTP命令集
基于现有SSH链路实现安全拷贝功能:
- 上传本地文件至服务器:
scp 本地文件路径 username@目标IP地址:远程存放路径
- 下载远程文件到本地:
scp username@目标IP地址:远程文件路径 本地接收路径
此机制天然继承SSH加密特性,避免明文传输风险。
故障排查与优化策略
当出现连接异常时,可按以下顺序诊断:
- IP校验:在目标机器执行
ip a
或ifconfig
确认网络接口绑定情况。 - 服务健康度检查:分别查看SSH/XRDP/VNC服务的运行状态(
systemctl status sshd/xrdp/vncserver
)。 - 日志审计:利用
journalctl -u sshd
查看详细错误记录。 - 端口监听检测:使用
netstat -tulnp | grep :端口号
验证服务是否正在监听预期地址。
FAQs
Q1:之前使用密钥对登录,现在如何使用密码登录?
A:需临时启用密码认证模式,进入SSH配置文件目录(通常为/etc/ssh/sshd_config
),确保存在PasswordAuthentication yes
条目且未被注释,同时移除PubkeyAuthentication no
的限制条件,重启SSH服务后即可切换回账号密码验证方式。
Q2:如何修改SSH默认端口以提高安全性?
A:编辑SSHD配置文件,定位Port参数将其改为非知名端口(推荐范围1024~65535),例如设置为2222,保存更改后执行sudo systemctl restart sshd
使新配置生效,并在防火墙白名单中更新对应端口号,注意变更后所有客户端均需指定新端口号才能成功