三二互联专业提供速度最快最稳定的美国服务器、香港服务器。中美直连,亚洲优化![ 代理登陆 ] [ 付款方式 ] [ 找回密码 ][ 电子协议责任书 ]
硬件资源保障

采用高配品牌服务器

主流强悍CPU配置

确保服务高速稳定运行

中美直连线路

中美直连亚洲优化

采用中国CN2骨干网络

保证速度飞快稳定高效

命令行方式开启远程桌面功能时,如何设置允许连接的IP地址?

美国、香港服务器

命令行方式开启远程桌面功能时,如何设置允许连接的IP地址?

07-30   来源:

在 macOS 中通过命令行开启远程桌面功能时,可通过以下方法设置仅允许特定 IP 地址连接,具体分为 ** 屏幕共享(VNC)和远程管理(ARD)** 两种场景:
一、屏幕共享(VNC)的 IP 限制方法
屏幕共享基于 VNC 协议,默认监听端口 5900。可通过防火墙规则或系统配置文件限制 IP 访问。
方法 1:使用防火墙(pfctl)限制 IP
编辑防火墙规则文件:
bash
sudo nano /etc/pf.conf
 
 
在文件末尾添加允许特定 IP 访问 5900 端口的规则(例如允许192.168.1.100连接):
bash
# 允许特定IP访问屏幕共享端口
pass in on en0 proto tcp from 192.168.1.100 to any port 5900
 
en0:替换为实际网络接口(可通过 ifconfig 查看)。
若需允许多个 IP,可用 {IP1, IP2} 格式,例如:
bash
pass in on en0 proto tcp from {192.168.1.100, 192.168.1.200} to any port 5900
 
加载并启用防火墙:
bash
sudo pfctl -f /etc/pf.conf
sudo pfctl -e
 
验证规则生效:
bash
sudo pfctl -s rules | grep 5900
 
方法 2:修改系统配置文件(需关闭 SIP)
若需更精细的控制(如同时限制端口和协议),可修改屏幕共享服务的配置文件 com.apple.screensharing.plist,但需临时关闭系统完整性保护(SIP):
 
关闭 SIP:
重启 Mac,按住 Command + R 进入恢复模式。
打开终端,执行:
bash
csrutil disable
 
重启 Mac。
编辑配置文件:
bash
sudo nano /System/Library/LaunchDaemons/com.apple.screensharing.plist
 
在 标签内添加以下内容(限制 IP 为192.168.1.100):
xml
ProgramArguments
  /usr/sbin/screensharingd
  --allow-ip
  192.168.1.100
 
重新加载服务并开启 SIP:
bash
sudo launchctl bootout system/com.apple.screensharing
sudo launchctl bootstrap system /System/Library/LaunchDaemons/com.apple.screensharing.plist
 
再次进入恢复模式,执行 csrutil enable 重启 SIP。
二、远程管理(ARD)的 IP 限制方法
远程管理基于 Apple Remote Desktop 协议,默认监听端口 3283。可通过配置文件或专用工具限制 IP。
方法 1:使用 defaults 命令设置白名单
添加允许的 IP 地址:
bash
sudo defaults write /Library/Preferences/com.apple.ARDAgent ServerWhiteList -array-add "192.168.1.100"
 
若需允许多个 IP,可多次执行 -array-add,或直接写入数组:
bash
sudo defaults write /Library/Preferences/com.apple.ARDAgent ServerWhiteList -array "192.168.1.100" "192.168.1.200"
 
验证配置生效:
bash
defaults read /Library/Preferences/com.apple.ARDAgent ServerWhiteList
 
重启 ARD 服务:
bash
sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -restart -agent
 
方法 2:通过 kickstart 工具配置
若需在开启 ARD 时同步设置 IP 限制,可在执行 kickstart 命令时添加参数:
 
bash
sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart \
  -activate \
  -configure -access -on \
  -configure -allowedipaddresses -ipaddresses "192.168.1.100"
 
-allowedipaddresses:指定允许的 IP 地址(可多次使用以添加多个 IP)。
需配合 -access -on 启用访问权限。
三、通用注意事项
防火墙规则冲突:
若已通过系统偏好设置的 “防火墙” 开启远程桌面,需确保命令行添加的规则未被覆盖。
可通过 sudo /usr/libexec/ApplicationFirewall/socketfilterfw --listapps 查看已放行的应用。
SIP 限制:
修改系统文件(如 com.apple.screensharing.plist)需关闭 SIP,操作后务必重新启用。
关闭 SIP 后,系统安全性降低,建议仅在必要时使用。
端口号确认:
屏幕共享:默认端口 5900(VNC)。
远程管理:默认端口 3283(ARD)。
可通过 lsof -i :端口号 检查端口占用情况。
重启生效:
部分配置(如防火墙规则)需重启服务或系统才能生效。
四、验证连接权限
测试 IP 是否被允许:
在另一台设备上执行:
bash
vncviewer 目标Mac的IP:5900  # 屏幕共享测试
ar -t 目标Mac的IP  # 远程管理测试(需安装Apple Remote Desktop)
 
若提示连接失败,检查防火墙规则或白名单配置。
查看日志:
屏幕共享日志:
bash
tail -f /private/var/log/system.log | grep screensharingd
 
远程管理日志:
bash
tail -f /private/var/log/ARDAgent.log
 
 
通过以上方法,可精准控制远程桌面的访问权限,确保仅授权 IP 地址能连接。命令行方式尤其适合批量部署或远程管理场景,结合防火墙和服务配置,可实现高效且安全的远程访问控制。

三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快

上一篇:如何在macOS中使用命令行关闭远程桌面功能? 下一篇:命令行方式开启远程桌面功能时可能会遇到哪些问题及解决办法?

美国GIA服务器三二互联版权所有 WWW.250.cc 2008-2015 All Rights Reserved
三二互联 - 专业的美国C3服务器、香港vps、抗DOOS流量清洗、云备份系统、网站加速系统、美国GIA服务器和香港云服务器产品提供商
三二互联24小时在线工单系统为您提供全面、专业、周到的技术支持与服务
咨询热线:400-679-9994(免长话费)