服务器开启远程连接是运维管理中最基础也是最关键的环节,直接决定了服务器管理的效率与安全性,核心结论在于:安全、高效地开启远程连接,并非简单的“开启开关”,而是一个涉及协议选择、防火墙配置、权限控制及安全加固的系统性工程,只有在保障数据传输加密与访问权限受控的前提下,远程连接才能真正成为运维利器,而非安全漏洞。

明确远程连接协议与系统环境
不同操作系统依赖不同的远程连接协议,精准匹配协议是操作的第一步。
-
Windows系统环境
Windows服务器原生支持远程桌面协议(RDP),该协议提供图形化界面,操作直观。- 默认端口:3389。
- 核心组件:远程桌面服务。
-
Linux系统环境
Linux服务器通常使用SSH协议,SSH以命令行模式为主,资源占用低,安全性高。- 默认端口:22。
- 核心组件:OpenSSH Server。
Windows服务器开启远程连接详细步骤
对于Windows用户,服务器开启远程连接主要通过系统属性配置实现。
-
配置系统属性
- 右键点击“此电脑”,选择“属性”。
- 点击“远程设置”,进入“远程”选项卡。
- 勾选“允许远程连接到此计算机”。
- 建议取消勾选“仅允许运行使用网络级别身份验证的远程桌面的计算机连接”,以兼容旧版客户端,但更推荐保持勾选以增强安全性。
-
防火墙放行端口
Windows防火墙默认可能拦截远程流量。- 打开“高级安全Windows Defender防火墙”。
- 新建入站规则,选择“端口”。
- 指定TCP端口3389。
- 选择“允许连接”,并应用于域、专用、公用网络配置文件。
-
用户权限分配
并非所有用户都能远程登录。- 在“远程”选项卡中点击“选择用户”。
- 添加具备远程登录权限的用户或用户组,如Administrators组默认拥有权限。
Linux服务器开启远程连接操作流程
Linux系统的操作主要在终端完成,核心在于安装与配置SSH服务。
-
安装OpenSSH服务
大多数Linux发行版已预装OpenSSH,若未安装,需手动执行命令。
- Ubuntu/Debian系统:执行
sudo apt-get install openssh-server。 - CentOS/RHEL系统:执行
sudo yum install openssh-server。
- Ubuntu/Debian系统:执行
-
启动并设置开机自启
安装完成后,需确保服务运行。- 启动服务:
sudo systemctl start sshd或sudo systemctl start ssh。 - 设置开机自启:
sudo systemctl enable sshd。
- 启动服务:
-
防火墙配置(关键步骤)
Linux防火墙(如firewalld或ufw)必须放行SSH端口。- 使用firewalld:
sudo firewall-cmd --permanent --add-port=22/tcp,随后执行sudo firewall-cmd --reload。 - 使用ufw:
sudo ufw allow 22/tcp。
- 使用firewalld:
云服务器安全组与网络配置
若服务器部署在阿里云、腾讯云等公有云平台,仅配置系统内部防火墙是不够的,云平台的安全组构成了第一道防线。
-
登录云控制台
进入云服务器实例详情页,找到“安全组”配置。 -
添加入站规则
- 协议类型:选择TCP。
- 端口范围:填写22(Linux)或3389。
- 授权对象:强烈建议填写管理员固定的公网IP地址,切勿填写“0.0.0.0/0”开放给全网,这会带来巨大的暴力破解风险。
安全加固与最佳实践
开启远程连接后,服务器暴露在网络中,必须执行严格的安全加固措施,这是保障服务器安全的核心壁垒。
-
修改默认端口
自动化攻击脚本常扫描默认端口(22/3389)。- Linux:编辑
/etc/ssh/sshd_config文件,将#Port 22改为自定义端口(如2222),重启SSH服务生效。 - Windows:通过注册表修改RDP端口,路径为
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp,修改PortNumber值。
- Linux:编辑
-
禁用Root/Administrator直接登录
攻击者常针对超级管理员账户进行字典攻击。- Linux:在
sshd_config中设置PermitRootLogin no,创建普通用户并赋予sudo权限进行登录。 - Windows:重命名Administrator账户,或创建复杂密码的管理员账户并禁用默认账户。
- Linux:在
-
启用密钥认证(SSH)
密码认证容易被暴力破解。- 生成公钥与私钥对。
- 将公钥上传至服务器
~/.ssh/authorized_keys文件。 - 在
sshd_config中设置PasswordAuthentication no,强制使用密钥登录。
-
部署Fail2Ban防御系统
针对暴力破解,Fail2Ban能自动封禁异常IP。
- 监控日志文件。
- 当IP尝试失败次数超过阈值,自动调用防火墙规则封禁该IP。
常见连接故障排查
配置完成后,若无法连接,需按以下逻辑逐层排查。
-
网络连通性测试
使用Ping命令测试服务器IP是否可达,若不可达,检查网络线路或云服务器实例状态。 -
端口连通性测试
使用Telnet或Nmap工具测试端口是否开放。- 命令示例:
telnet 服务器IP 端口号。 - 若连接失败,回溯检查防火墙与安全组配置。
- 命令示例:
-
服务状态检查
确认远程服务进程正在运行。- Linux:
systemctl status sshd。 - Windows:检查“Remote Desktop Services”服务是否启动。
- Linux:
相关问答
问:服务器开启远程连接后,如何防止暴力破解密码?
答:防止暴力破解需多管齐下,修改默认端口可避开大部分批量扫描,必须设置高强度的复杂密码,包含大小写字母、数字及特殊符号,最有效的方案是启用SSH密钥认证并关闭密码登录,或安装Fail2Ban等防御软件自动封禁攻击源IP。
问:远程连接时提示“由于安全设置错误,客户端无法连接”怎么办?
答:这通常发生在Windows远程桌面连接中,原因可能是网络级别身份验证(NLA)设置冲突,解决方案是右键点击“此电脑”->“属性”->“远程设置”,检查是否勾选了“仅允许运行使用网络级别身份验证的远程桌面的计算机连接”,如果客户端较旧,可尝试取消该勾选,但建议升级客户端以支持NLA,提升安全性。
如果您在配置过程中遇到其他问题,或有独特的安全加固技巧,欢迎在评论区留言交流。
首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/129119.html