Tmux 惡作劇:將本機會話共用到遠端伺服器以供其他使用者查看

Tmux 惡作劇:將本機會話共用到遠端伺服器以供其他使用者查看

我有一個在Raspberry Pi 上運行的SSH 伺服器,這樣我和我的朋友就可以在上面進行對等編程(或者只是閒逛),但坦率地說,它太舊了,而且功能不足,除了託管一些Git儲存庫之外,無法做任何有用的事情。是否可以將其用作某種代理來共享在我自己或我朋友的桌面上運行的會話?

到目前為止,我已經從桌面透過 SSH 連接到 Pi,啟動一個會話供我的朋友加入,並在該會話中從 Pi SSH 返回到我的桌面。我還透過那個迷宮在桌面上啟動了一個會話,以便我可以在另一個本地終端上連接到它並使用它,沒有任何延遲,但整個設定感覺非常笨重。
它的另一個問題是它需要在用戶端設定連接埠轉送;這對我來說不是問題,因為 Pi 位於同一 LAN 上,但我的朋友無法打開他這邊的端口,因此他無法共享自己的工作區。

我以為我會很聰明,在安裝有SSHFS 的Pi 上啟動一個本地套接字,這樣Tmux 實際上會在本地運行,但我的朋友可以訪問,但可惜它給了我一個“權限被拒絕”. .....事後看來,它無論如何,可能不會太穩定。

簡而言之,有沒有辦法將我的本機 Tmux 會話轉送至共用設備,以便其他使用者可以存取它,而不必擔心來回 SSH 或開啟連接埠?

答案1

簡而言之,有沒有辦法將我的本機 Tmux 會話轉送至共用設備,以便其他使用者可以存取它,而不必擔心來回 SSH 或開啟連接埠?

簡而言之,不; tmux 僅限本地。

(這tmate然而,似乎正是為了這個目的而建構的。它似乎使用雲端託管服務來共享連接。

使用標準 tmux – 不要使用 Pi 作為代理,讓您的朋友直接透過 SSH 連接到您的桌面自己的使用者帳戶,然後執行與目前相同的操作。

或者,直接授予他的帳戶連接到您的 tmux 套接字檔案的權限(-S為此您可能需要使用該選項以單獨的套接字啟動 tmux)。最近的 tmux 版本具有用於多用戶存取的附加功能;新server-access命令可用於授予唯讀存取權限,而不是完全讀寫存取權限。

它的另一個問題是它需要在用戶端設定連接埠轉送;這對我來說不是問題,因為 Pi 位於同一 LAN 上,但我的朋友無法打開他這邊的端口,因此他無法共享自己的工作區。

使用VPN。如果您在電腦上設定了 OpenVPN 或 WireGuard,則您的朋友可以連接到您的 VPN 伺服器(無需在他這邊進行任何「連接埠轉送」),然後您可以透過活動 VPN 隧道連接到他的桌面。

有幾種「網狀」或「點對點」VPN 使這變得更加簡單,無需任何「伺服器」設定(例如,Tailscale 或 ZeroTier 是通常的建議;它們都自動找出點對點連接)。

我以為我會很聰明,在安裝有SSHFS 的Pi 上啟動一個本地套接字,這樣Tmux 實際上會在本地運行,但我的朋友可以訪問,但可惜它給了我一個“權限被拒絕”. .....事後看來,它無論如何,可能不會太穩定。

命名套接字僅存在於檔案系統中姓名;實際的套接字操作不會透過檔案系統,因此它們也不會透過 SSHFS 或任何其他網路檔案系統共用。 (一些古老的網路檔案系統(例如 RFS)可以做到這一點,但所有當前的網路檔案系統都不能。它們被稱為“是有原因的”當地的插座」。)

相關內容