服务器开启远程功能是运维管理中的重要操作,能够实现跨地域、跨网络的便捷访问与控制,尤其对于需要7×24小时运行的服务器而言,远程管理大幅提升了运维效率,本文将以主流的Windows Server和Linux系统为例,详细说明开启远程连接的具体步骤、安全配置要点及注意事项。
Windows Server系统开启远程桌面
Windows Server系统通常通过“远程桌面服务”实现远程连接,具体操作如下:
检查系统版本与功能
远程桌面功能仅支持Windows Server专业版、企业版或数据中心版(家庭版/家庭版不支持),需确保系统已安装“远程桌面服务”角色:
- 打开“服务器管理器”,选择“添加角色和功能”,勾选“远程桌面服务”下的“远程桌面会话主机”即可完成安装。
启用远程桌面
- 右键点击“此电脑”→“属性”→“远程桌面”,选择“允许远程连接到此计算机”,勾选“允许运行任意版本远程桌面的计算机连接”(若需更高安全性,可仅勾选“允许运行带网络级别身份验证的远程桌面的计算机连接”)。
配置防火墙例外
Windows防火墙默认会阻止远程桌面连接(默认端口3389),需手动添加例外:
- 打开“Windows Defender 防火墙”→“允许应用或功能通过Windows Defender防火墙”→勾选“远程桌面”并确保“域专用、专用”网络类型已启用。
设置远程用户权限
非管理员用户需被添加到“远程桌面用户”组才可连接:
- 右键点击“此电脑”→“管理”→“本地用户和组”→“组”,双击“远程桌面用户”→“添加”,输入允许远程连接的用户名并确认。
Linux系统开启SSH远程连接
Linux系统主要通过SSH(Secure Shell)协议实现安全远程管理,以Ubuntu/Debian和CentOS为例:
安装SSH服务
- Ubuntu/Debian:
sudo apt update && sudo apt install openssh-server
- CentOS/RHEL:
sudo yum install openssh-server
配置SSH服务
编辑SSH配置文件/etc/ssh/sshd_config
:
sudo vim /etc/ssh/sshd_config
,修改以下参数:Port 22
(默认端口,可自定义非特权端口如2222提升安全性)PermitRootLogin no
(禁止root直接登录,建议用普通用户后su切换)PasswordAuthentication yes
(开启密码认证,若用密钥认证则改为no
并配置PubkeyAuthentication yes
)
启动并设置开机自启
sudo systemctl start sshd
(启动服务)sudo systemctl enable sshd
(设置开机自启)sudo systemctl status sshd
(检查服务状态)
配置防火墙放行
- Ubuntu(ufw):
sudo ufw allow 22
(若修改端口则替换为自定义端口) - CentOS(firewalld):
sudo firewall-cmd --permanent --add-service=ssh
- 重启防火墙:
sudo systemctl restart firewalld
远程连接安全配置建议
无论Windows还是Linux,开启远程后均需强化安全防护,避免未授权访问,以下是关键安全措施:
安全配置项 | 说明 | 示例 |
---|---|---|
密码策略 | 设置复杂密码(字母+数字+特殊符号),定期更换,避免使用弱密码 | 密码长度≥12位,如Server@2024! |
IP访问控制 | 限制允许远程连接的IP地址,仅开放给特定管理网络 | Windows防火墙“高级设置”→“入站规则”→“新建规则”;Linux通过iptables -A INPUT -p tcp -s 192.168.1.0/24 --dport 22 -j ACCEPT 限制 |
端口修改 | 默认端口(Windows 3389、Linux 22)易受攻击,建议修改为非默认端口 | Windows修改注册表HKEY_LOCAL_MACHINESystemCurrentControlSetControlTerminal ServerWinStationsRDP-TcpPortNumber ;Linux修改/etc/ssh/sshd_config 中的Port |
登录失败锁定 | 设置账户锁定策略,防止暴力破解 | Windows:本地安全策略→账户策略→账户锁定策略;Linux:通过fail2ban 工具配置 |
相关问答FAQs
Q1:开启远程桌面后,本地无法连接服务器,提示“远程计算机需要网络级别身份验证”怎么办?
A:此问题通常由系统版本或组策略设置导致,解决方法:① 确认服务器系统为Windows Server 2008 R2及以上版本(家庭版/专业版可能不支持);② 检查组策略设置:运行gpedit.msc
,依次展开“计算机配置→策略→管理模板→Windows组件→远程桌面服务→远程桌面会话主机→安全”,确保“要求使用网络级别的身份验证”已禁用或设置为“仅允许运行远程桌面带网络级别身份验证的计算机连接”。
Q2:Linux服务器开启SSH后,如何禁止root用户直接登录?
A:禁止root直接登录可提升安全性,操作步骤:① 编辑SSH配置文件sudo vim /etc/ssh/sshd_config
;② 找到PermitRootLogin
参数,将其值改为no
(默认可能为yes
);③ 保存文件后重启SSH服务sudo systemctl restart sshd
,后续需先以普通用户登录,再通过su -
或sudo -i
切换至root用户。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/27572.html