解鎖macOS新姿勢(shì):手把手教你用SSH遠(yuǎn)程登錄,效率倍增!
我們前面簡(jiǎn)單介紹過(guò)macOS及其簡(jiǎn)單應(yīng)用,主要包括在VMware ESXi中部署黑蘋(píng)果系統(tǒng)(VMware ESXi部署macOS Monterey)、在macOS上安裝iNode(MacOS用戶福音:手把手教你在新版macOS上安裝H3C iNode客戶端)等等。
在使用過(guò)程中,我發(fā)現(xiàn)macOS終端的操作跟Linux非常相似,那macOS是否支持SSH遠(yuǎn)程登錄呢?我們今天就來(lái)揭開(kāi)它的神秘面紗。
圖片
從命令上看,macOS可以支持一些常用的Linux命令,比如ls、df、pwd等等,雖然沒(méi)有systemctl和service命令,但是有一個(gè)sshd命令。
圖片
在之前的印象中,帶d的一般跟服務(wù)有關(guān)。從幫助命令中,我們可以看出其對(duì)應(yīng)的OpenSSH版本為9.9p2,LibreSSL版本為3.3.6,既然有這個(gè)命令,那是不是已經(jīng)運(yùn)行SSH服務(wù)了呢?
圖片
使用netstat命令查看網(wǎng)絡(luò)狀態(tài),發(fā)現(xiàn)沒(méi)有22端口相關(guān)的連接。那我們直接遠(yuǎn)程探測(cè)一下。
圖片
macOS查看網(wǎng)卡IP地址的命令是ifconfig,不支持ip命令。可以看到,網(wǎng)卡的IP地址為192.168.0.108,貌似看不出來(lái)掩碼長(zhǎng)度。
圖片
在本地進(jìn)行探測(cè),發(fā)現(xiàn)該地址可以ping通,但是22端口確實(shí)沒(méi)有開(kāi)放,那就說(shuō)明現(xiàn)在SSH服務(wù)應(yīng)該是處于禁用狀態(tài)。
經(jīng)過(guò)一番探索,我發(fā)現(xiàn)在系統(tǒng)配置中可以打開(kāi)SSH遠(yuǎn)程登錄,具體路徑為【通用->共享->高級(jí)】里面的【遠(yuǎn)程登錄】。
圖片
我們點(diǎn)擊【遠(yuǎn)程登錄】后面的詳細(xì)信息,可以看到這里的遠(yuǎn)程登錄其實(shí)是允許遠(yuǎn)程用戶通過(guò)SSH和SFTP訪問(wèn)這臺(tái)電腦。
圖片
開(kāi)啟遠(yuǎn)程登錄之后,我們還要點(diǎn)擊加號(hào)將本地用戶添加進(jìn)來(lái),方便進(jìn)行登錄;或者可以將【僅這些用戶】調(diào)整為【所有用戶】,雖然更方便,但存在安全隱患,不建議這么配置。
單擊【完成】使配置生效,之后,我們就可以測(cè)試服務(wù)狀態(tài)了。
圖片
現(xiàn)在的22端口已經(jīng)開(kāi)放了,我們?cè)龠h(yuǎn)程連接一下。
圖片
可以看到,使用MobaXterm進(jìn)行連接時(shí),可以同時(shí)連接到SSH和SFTP,現(xiàn)在查看netstat也有連接信息了。不過(guò),局域網(wǎng)內(nèi)的主機(jī)都不顯示IP地址,Mac主機(jī)和遠(yuǎn)程主機(jī)都顯示為bogon,貌似有點(diǎn)不太方便。
或者,我們可以改變一下netstat的展示。默認(rèn)情況下,netstat對(duì)于活動(dòng)套接字的本地和遠(yuǎn)程地址的地址格式為“host.port”或“network.port”,如果是已知名稱(chēng)或協(xié)議,則分別根據(jù)數(shù)據(jù)庫(kù)/etc/hosts和/etc/networks象征性地顯示主機(jī)和網(wǎng)絡(luò)地址。對(duì)于未知的地址,或者指定了-n選項(xiàng),才會(huì)根據(jù)地址族以數(shù)字形式打印地址。
也就是說(shuō),我們可以使用-n選項(xiàng),將網(wǎng)絡(luò)地址顯示為數(shù)字。
圖片
但這么做的結(jié)果就是ssh協(xié)議也不再展示了,我們需要匹配22端口才行。而且這里的grep也不能直接匹配“.22”字符,正所謂“失之毫厘,謬以千里”,因?yàn)樵谡齽t表達(dá)式中,點(diǎn)號(hào)(.)作為元字符,默認(rèn)會(huì)匹配任意單個(gè)字符,我們需要使用反斜杠(\)來(lái)轉(zhuǎn)義。
netstat -n |grep '\.22'
netstat -n |grep "\.22"
圖片
不過(guò)這樣用起來(lái)就麻煩了不少,具體怎么用看個(gè)人需求吧。
到這里,我們就能跟使用Linux一樣,通過(guò)SSH遠(yuǎn)程登錄macOS并使用SFTP進(jìn)行文件管理了,“運(yùn)籌帷幄之中,決勝于千里之外”便可在我們的Mac上輕松實(shí)現(xiàn)了。不知各位讀者還能發(fā)掘出哪些妙用?




















