macOS Sierra 开启远程管理及文件共享(samba、ftp)

由于工作原因,操作系统由 Windows 转向 Mac。感觉血缘上说,mac 和 Linux 应该算比较近的吧。装了 brewiterm2,熟悉了桌面环境和操作技巧,感觉也就没什么压力了。至于文件共享和远程管理,实在是自己懒,不愿意用软件或者数据线。再者也想做做实验。

远程控制和 Samba

系统的版本是 10.12 Sierra,默认是支持 ssh 和 VNC 远程控制的,当然还有苹果自己的远程桌面。需要在 系统偏好设置共享 里面开启。
如图:

《macOS Sierra 开启远程管理及文件共享(samba、ftp)》 macOS 共享.jpg

其中的
文件共享 就是指
Samba 服务,不过用的协议是
SMB2.0,我的手机不支持,Windows还是可以的。

远程管理 即包含 VNC 服务。

远程登录 就是
ssh 服务,本地登录的效果如下:

《macOS Sierra 开启远程管理及文件共享(samba、ftp)》 macOS ssh.jpg

FTP 及 HTTP

至于像 FTPTFTPHTTP 等服务,就需要通过 terminal 输入命令来启用了。(SFTP 在开启 ssh 后默认就开启了,至于 HTTP 服务,系统自带的是 Apache,版本较低)
Terminal(终端)可以通过组合键 “command+space” 调出搜索,输入 terminal 来打开。
命令总结如下:

1. FTP Server

  • 开启:sudo -s launchctl load -w /System/Library/LaunchDaemons/ftp.plist
  • 关闭:sudo launchctl unload -F /System/Library/LaunchDaemons/ftp.plist

2. TFTP Server

  • 开启:
    sudo launchctl load -F /System/Library/LaunchDaemons/tftp.plist
    sudo launchctl start com.apple.tftpd
    默认共享目录为:/private/tftpboot

  • 关闭:sudo launchctl unload -F /System/Library/LaunchDaemons/tftp.plist
    或者重启电脑

3.HTTP Server

  • 开启:sudo apachectl start
  • 关闭:sudo apachectl stop
    或者重启电脑

验证

查看此时正在监听的端口
netstat -an | grep LISTEN

《macOS Sierra 开启远程管理及文件共享(samba、ftp)》 macOS netstat.jpg

各端口代表的服务:

  • HTTP = TCP 80
  • FTP = TCP 21
  • SSH = TCP 22
  • Samba = TCP 445
  • VNC = TCP 5900
  • SFTP = TCP 22
  • TFTP = UDP 69

通过netstat -an|grep 69查看 TFTP 服务是否正在运行

效果演示

VNC 服务器 (安卓客户端 VNC Viewer)

《macOS Sierra 开启远程管理及文件共享(samba、ftp)》 Vnc Viewer-安卓.png

FTP 服务器(安卓客户端 ES文件浏览器)

《macOS Sierra 开启远程管理及文件共享(samba、ftp)》 ES 文件浏览器-FTP-安卓.png

参考文章

https://www.tunnelsup.com/using-the-built-in-macos-ftp-tftp-sftp-and-http-servers/

点赞