我们前面简单介绍过macOS及其简单应用,主要包括在VMware ESXi中部署黑苹果系统()、在macOS上安装iNode()等等。
在使用过程中,我发现macOS终端的操作跟Linux非常相似,那macOS是否支持SSH远程登录呢?我们今天就来揭开它的神秘面纱。
从命令上看,macOS可以支持一些常用的Linux命令,比如ls、df、pwd等等,虽然没有systemctl和service命令,但是有一个sshd命令。
在之前的印象中,带d的一般跟服务有关。从帮助命令中,我们可以看出其对应的OpenSSH版本为9.9p2,LibreSSL版本为3.3.6,既然有这个命令,那是不是已经运行SSH服务了呢?
使用netstat命令查看网络状态,发现没有22端口相关的连接。那我们直接远程探测一下。
macOS查看网卡IP地址的命令是ifconfig,不支持ip命令。可以看到,网卡的IP地址为192.168.0.108,貌似看不出来掩码长度。
在本地进行探测,发现该地址可以ping通,但是22端口确实没有开放,那就说明现在SSH服务应该是处于禁用状态。
经过一番探索,我发现在系统配置中可以打开SSH远程登录,具体路径为【通用->共享->高级】里面的【远程登录】。
我们点击【远程登录】后面的详细信息,可以看到这里的远程登录其实是允许远程用户通过SSH和SFTP访问这台电脑。
开启远程登录之后,我们还要点击加号将本地用户添加进来,方便进行登录;或者可以将【仅这些用户】调整为【所有用户】,虽然更方便,但存在安全隐患,不建议这么配置。
单击【完成】使配置生效,之后,我们就可以测试服务状态了。
现在的22端口已经开放了,我们再远程连接一下。
可以看到,使用MobaXterm进行连接时,可以同时连接到SSH和SFTP,现在查看netstat也有连接信息了。不过,局域网内的主机都不显示IP地址,Mac主机和远程主机都显示为bogon,貌似有点不太方便。
或者,我们可以改变一下netstat的展示。默认情况下,netstat对于活动套接字的本地和远程地址的地址格式为“host.port”或“network.port”,如果是已知名称或协议,则分别根据数据库/etc/hosts和/etc/networks象征性地显示主机和网络地址。对于未知的地址,或者指定了-n选项,才会根据地址族以数字形式打印地址。
也就是说,我们可以使用-n选项,将网络地址显示为数字。
但这么做的结果就是ssh协议也不再展示了,我们需要匹配22端口才行。而且这里的grep也不能直接匹配“.22”字符,正所谓“失之毫厘,谬以千里”,因为在正则表达式中,点号(.)作为元字符,默认会匹配任意单个字符,我们需要使用反斜杠()来转义。
netstat -n |grep '.22'netstat -n |grep ".22"
不过这样用起来就麻烦了不少,具体怎么用看个人需求吧。
到这里,我们就能跟使用Linux一样,通过SSH远程登录macOS并使用SFTP进行文件管理了,“运筹帷幄之中,决胜于千里之外”便可在我们的Mac上轻松实现了。不知各位读者还能发掘出哪些妙用?
**推荐阅读***
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……



 
		 
		 
		 
		

还没有评论,来说两句吧...