2011-03-28 47 views
30

我想通過SSH訪問我的家庭計算機,但問題是我的家用計算機在NAT路由器後面(我無法訪問)。因爲我的工作計算機安裝了CentOS並且位於代理之後,所以我無法使用TeamViwer(電視在Linux上使用wine移植,顯然代理設置不起作用)。teamviewer-like ssh的工具?

有沒有人知道一個適合我需求的程序?

謝謝,克勞迪烏

+0

「任何人都可以推薦一個程序」問題屬於超級用戶。 – 2011-03-28 22:23:52

+0

http://www.plugcomputer.org/plugforum/index.php?topic=1897.msg11314#msg11314 – 2011-10-31 10:46:03

+0

我認爲tmate是您正在尋找的工具,請查看我的答案。 – valentt 2015-09-10 10:39:48

回答

4

[1]刀具本身 - 我建議採取看看jrdesktop [http://jrdesktop.sourceforge.net/]雖然不是非常活躍的項目,並且不適合類似調制解調器的連接,但它是穩定的,可靠的,多平臺的並且工作正常。

[2] jrdekstop和ssh,雖然沒有做NAT橫向(像Hamachi - 所謂的零配置VPN;一定要檢查這個!https://secure.logmein.com/products/hamachi2/),有選擇像「reverese連接」,你可能會覺得有用。

一旦建立這樣的VPN設備之間,您可以自由使用ssh,X,RDP,jrdesktop,VNC和您選擇的其他工具,你會在正常的局域網。如果你不相信第三方的「橫向提供商」,我聽說,編寫你自己的對應軟件比較容易(至少有一臺機器必須是公開的,或者兩者都必須臨時公開訪問)第三臺機器)。

此外,serverfault.com上的人可能會提供更好的見解。

+1

嗯,從我可以看到,Hamachi不適用於Linux發行版... jrdesktop也不起作用,因爲它只是工作局域網,但是繼續他們的網站爲我找到了解決方案:D它被稱爲Firnass,它與jrdesktop基本上是一樣的概念,但它不侷限於在局域網上工作。它現在看起來是初步形式,但無論如何,它的工作原理。謝謝! – Claudiu 2011-05-23 15:43:07

+0

不客氣!我百分百的肯定,也有Hamachi2可用於Linux平臺。它只是命令行版本,也是測試階段,但仍然 - 它是! https://secure.logmein.com/US/labs/ – PMD 2011-08-08 22:55:09

+0

你見過http://tmate.io/嗎?這幾乎和TeamViewer的ssh一樣。 – valentt 2015-09-10 14:15:56

-2

你也許能夠只使用X轉發與ssh -X hostssh -Y host公正公開的圖形應用程序。或者你建立一個VNC服務器,你也可以通過SSH隧道。

+0

嗯,我真的不需要圖形應用程序,我只需要CLI ...和SSH將無法工作,因爲我的電腦是在一個專用網絡中。但我會嘗試VNC,當我回家時,我希望它會克服代理也:) – Claudiu 2011-03-28 11:54:57

+0

你見過http://tmate.io/? – valentt 2015-09-10 14:15:07

0

我不知道你的意思是你沒有你的家用路由器的外網遠程管理,或者如果別人保持密碼,但是,如果你可以訪問你的路由器,你應該有可能能夠設置端口轉發,以便當您訪問路由器的公共IP時,它會自動發送所有ssh流量到內部網絡上的一個盒子。

除非你的ISP使用運營商級NAT做一些卑鄙的事情,否則應該工作得很好。

另外,你應該能夠通過SSH從家裏連接到你的工作機器,並建立一個隧道,讓您可以外殼您的工作機器,然後抓住家庭和工作之間的會話。

+1

這不是我的家庭路由器,我實際上是在我的ISP的NAT路由器後面,所以我不能做任何配置。 (我知道,ISP通常會給公衆地址,但這是一個複雜的情況) – Claudiu 2011-03-28 14:48:07

4

從它的聲音來看,沒有什麼特別的「應用程序」能夠解決您的問題,它更像是一個網絡問題 - 您的家用計算機位於NAT之後,而您的工作計算機位於代理服務器(http或socks)之後。

所以你需要一個第三計算機 - 最好是運行Linux或BSD - 稱之爲「第三-PC」。一個便宜的Linux vps託管可能是最好的方式。

從你的工作電腦,你可以在你的ssh配置中使用「連接」到隧道通過代理「三件」 - 看http://bent.latency.net/bent/git/goto-san-connect-1.85/src/connect.html

例如,這裏是一個條目我在我的〜/ .ssh /配置:

Host foo.dyndns.org 
    User sonia 
    Port 443 
    ProxyCommand connect -H 1.2.3.4:8080 %h %p 

(使用端口443來解決HTTP代理服務器的常用方法)。

從您的家用電腦,就可以使用「autossh」設置一個永久性隧道「三件」 - 見http://www.harding.motd.ca/autossh/http://www.linux.com/archive/feature/134133

從你的工作電腦,你就可以通過ssh達人「第三-PC 「,然後將autossh隧道退回到您的家用電腦。

+1

嗯,我想到了這一點,但我想解決設置我的「第三方PC」的問題。這就是爲什麼我尋找像TeamViewer這樣的軟件,因爲連接通過他們自己的服務器,我沒有額外配置的負擔,我不必爲額外的PC付費:OP – Claudiu 2011-03-28 14:40:49

+0

OP正在尋求某些東西像teamviewer(使用某種路由器遍歷軟件),不設置路由器 – ChrisAdmin 2016-07-14 09:52:41

0

NX使用ssh傳輸。 NoMachine發佈免費和高級版本的工具,還有freenx。

+1

NX看起來像一個偉大的工具,但不幸的是我看到它不能通過NAT路由器。 – Claudiu 2011-05-23 15:40:58

+0

@Claudiu:我以爲你的意思是你有一個ssh連接,並且想要控制圖形應用程序。 – 2011-05-23 20:29:54

3

您也可以使用替代方法,如Robo-TiTO。這使得您的服務器可以通過Jabber聊天(例如GTalk /環聊)訪問。這是一個非常簡單和直接的終端訪問。我已經使用了幾年。我通常會打開一個反向的SSH隧道,之後它只是一個正確的SSH訪問。

+0

似乎一個不錯的主意,但我找不到有關如何配置它等等的文檔太多了...... – Claudiu 2011-05-23 15:58:16

+2

更新:我設法讓jabber-shell工作,對於有問題的人,這裏是步驟: 1)安裝所需的軟件包(ruby,rubygems和bundler gem); 2)編輯config/credentials.example.rb與來自新創建的機器人帳戶(我使用Gmail)的信息並將其保存爲credentials.rb;也請務必將您的Gmail帳戶名稱放入AllowedUsers向量中。 3)將機器人添加到你的朋友列表; 4)用./jabbershd啓動程序啓動; 5)從GTalk窗口發送命令到機器人,它會迴應:) – Claudiu 2011-05-26 05:32:08

+0

在這個時候,githib鏈接https://github.com/formigarafa/jabber-shell不見了(404錯誤) – knb 2012-03-06 22:30:36

19

我一直在尋找同樣的東西,並找到兩個工具!

tmate - 即時終端共享

GoTTY - 分享您的終端作爲一個Web應用程序

tmate - 當您在終端開始tmate它會創建一個ssh連接,你可以與其他分享您希望允許連接到您的終端會話的一方。其他方只需要安裝ssh。

工作槽NAT沒有問題,不需要第三方工具。

tmate SSH鏈接看起來是這樣的:

SSH [email protected]

只需將您的系統上安裝tmate,有官方倉庫包幾乎所有的主要發行版( Fedora,Debian,Arch,Ubuntu ...)

GoTTY - 共享您希望的任何終端應用程序,而其他方甚至不需要ssh,但您需要清理端口f如果你在防火牆和NAT後面進行指導。

+0

謝謝。我嘗試過tmate。 tmate可以在NAT和防火牆後面工作。它在非GUI模式下工作。對於我來說,在Linux非GUI模式下,它是teamviewer的一個很好的選擇。 – 2017-01-23 17:11:49

0

如果你只需要一個ssh連接,你可以花費2.99美元/月購買一個便宜的vps,並使用反向ssh或ngrok將你的計算機記錄到NAT後面。