iT邦幫忙

0

SSH設定

ssh
  • 分享至 

  • xImage

/images/emoticon/emoticon06.gif預防針:我對網路的部分尚未非常熟悉,有錯請糾正我,謝謝各位!

問題:
我想使用SSH透過public IP連線到學校的電腦(windows 10),我在學校的電腦用瀏覽器搜尋my ip後可以看到public IP為140.XXX.XX.XXX(臺灣學術網路),而學校的電腦private IP是透過DHCP取得的(192.168.XX.X)
我在自己電腦的PowerShell中輸入ssh user@public_IP,但卻一直出現ssh: connect to host 140.XXX.XX.XXX port 22: Connection timed out,想請問該怎麼解決?

目前已經有完成的事:

  1. 參考使用 Windows 設定安裝 OpenSSH在學校電腦安裝OpenSSH server
  2. 新增防火牆規則允許port 22上的輸入SSH流量

P.S. 家中的網路架構是ADSL->無線路由器(浮動public IP設成是NAT的外部IP,內部私有IP用DHCP派發),電腦是連WIFI,不知道這樣可不可以用remote port forwarding來解決我連不上的問題。


更新:
謝謝各位給的意見!!!我都有用心全部看完了/images/emoticon/emoticon41.gif
我上面說連線到學校的電腦是指放在實驗室裡面自己的電腦,但它接的是學校網路這樣。就在剛剛我突然想到自己之前有申請了學校的VPN
目前想到可能可行的解決方法如下,如果不可行請指正我,感恩各位!

  1. 家中電腦開VPN後ssh到學校電腦的private IP(但我剛試,好像也行不通...),原因可能出在VPN的IPv4顯示為10.XX.X.XXX,和我要連的學校電腦虛擬IP(192.168.XX.X)兩者為不同的class,所以是位在不同的區網??
  2. 反向ssh,學校電腦使用ssh -R external_port:localhost:22 user@public_IP_of_my_home來先建立一個tunnel,如果我家的public IP是固定IP的話(這點我還要確認一下),將路由器的dhcp關掉,讓路由器給我自己的電腦一個固定的private IP,接著設定我家路由器的埠口映射,將public_IP_of_my_home:external port映射到我電腦的localhost:internal port,這樣我就可以使用家中電腦ssh user@localhost -p internal_port透過剛剛已經先建好的tunnel來訪問到學校電腦了
  3. 在學校電腦使用內網穿透軟體(ngrok或其他...)
  4. 使用Hamachi建立虛擬區域網路
看更多先前的討論...收起先前的討論...
froce iT邦大師 1 級 ‧ 2022-07-12 08:39:43 檢舉
學校的防火牆一定有擋SSH協議。
你該做的是試著和你們計中申請,讓你的主機能透過vpn來做ssh。
BKY iT邦研究生 2 級 ‧ 2022-07-12 08:43:50 檢舉
如果你只是要連到那台電腦,用Teamviewer或AnyDesk不是更簡單?
Jacky115 iT邦新手 4 級 ‧ 2022-07-13 03:02:37 檢舉
回froce大大:
我想請問我之前有申請學校的VPN,但為什麼連上VPN後再ssh到學校電腦還是無法連線
Jacky115 iT邦新手 4 級 ‧ 2022-07-13 03:07:27 檢舉
回BKY大大:
因為我想把學校電腦作為ssh interpreter來跑自己電腦裡面的程式,目前就是使用teamviewer,但因為資料要在兩台電腦間傳來傳去,相比ssh interpreter來說還是較為不方便
BKY iT邦研究生 2 級 ‧ 2022-07-13 09:25:35 檢舉
應該是VPN的網段和你們系所內網網段是切開的,要看你當初申請VPN的用途,有沒有要連線到你們系所的內網,還是要去問貴校資訊中心網管人員
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
BKY
iT邦研究生 2 級 ‧ 2022-07-11 08:08:26

去向學校資訊中心申請可以從校外用SSH連線到校內這台電腦

Jacky115 iT邦新手 4 級 ‧ 2022-07-13 03:11:38 檢舉

感謝BKY 我會再去跟學校計中詢問看看這部分

0
ahfuyeuem
iT邦研究生 4 級 ‧ 2022-07-11 08:36:31

新增防火牆規則允許port 22上的輸入SSH流量

你是新增在Windows防火牆嗎?
這條政策是要新增在學校的防火牆哦

Jacky115 iT邦新手 4 級 ‧ 2022-07-13 03:14:45 檢舉

沒錯,我是新增規則在學校電腦的windows防火牆,但是如果學校的防火牆允許port 22的話,那還需要新增規則在我要連的學校電腦嗎

ahfuyeuem iT邦研究生 4 級 ‧ 2022-07-13 13:36:59 檢舉

應該是說你要在學校的防火牆去做NAT
告訴防火牆如果從學校Wan IP的22 port進來
要引導流量到你實驗室電腦的22 Port

0
mytiny
iT邦超人 1 級 ‧ 2022-07-11 16:25:36

先說個重要的觀念

外部的電腦是不可以隨便連到校內的主機的

所以建議樓主一定要先經過校方的同意

另外,簡單說明
校內電腦自動取得private IP
那麼多人都會透過同一個public IP上網
請問從外面這個public IP進入校內是要對到哪一個private IP呢
如果搞清楚就自然知道內外網不是這樣運作的

BKY iT邦研究生 2 級 ‧ 2022-07-11 18:34:09 檢舉

樓主都知道家裡的網路有設NAT了,起碼有一點網路知識,內外網應該不會不清楚。

Jacky115 iT邦新手 4 級 ‧ 2022-07-13 03:18:24 檢舉

懂了
直接ssh public IP沒辦法知道我要連的是哪台校內電腦,我應該是要透過port forwarding或其他方式來從外網連到內網

0

您因該沒有網路的相關知識。不清楚內外網之間的關係。

用簡單的文字圖例來說明

一般內部內域電腦。其對外會經由發配的設備如AP。
來統一使用對外IP(假設是140.1.1.1)來出去的。
例:

PC > 192.X.X.1(內網) > AP(DHCP) > (外網)140.1.1.1
PC > 192.X.X.2(內網) > AP(DHCP) > (外網)140.1.1.1
PC > 192.X.X.3(內網) > AP(DHCP) > (外網)140.1.1.1
PC > 192.X.X.4(內網) > AP(DHCP) > (外網)140.1.1.1

用比較白話點的說法,這是因為AP有集合的能力。讓發配統一一個對外IP出去。
所以才能對外連結。主要也是因為對外只有一條出去(不談其它因素)

但如果要外對內等於

(外網)140.1.1.1 SSH > AP >?? XX PC SSH XX
但實體的外部IP,只能到AP這台或是相對應的設備上。
但如果沒有特別指定機器的話。它並不會知道要連哪一台。

也就是說,你SSH連線。只會連到那台AP的設備上。並不會連到PC。
除非能去調整到那台設備。

但就如你說的。這是學校的網路。無防火、路由或是AP來說。
正常都不該由你去設定到。
因為搞不好這條主要的對外IP,已經有指定到其它電腦上。
如果你真的可以去設定過來。這也算是一種損壞行為。

Jacky115 iT邦新手 4 級 ‧ 2022-07-13 03:22:42 檢舉

了解!主要就是NAT的概念
除非我去調整設備的port forwarding方式,但我沒有權限所以行不通
想請問「因為搞不好這條主要的對外IP,已經有指定到其它電腦上。」這句話的意思是什麼?

0
打雜工
iT邦研究生 1 級 ‧ 2022-07-12 15:07:31

問學校的網管或資中比較準,也比較能解決問題;就我個人多年的經驗,只有真正管理的人才會知道問題的原因,並決定是否開放或指引你用正確的連線方式。

Jacky115 iT邦新手 4 級 ‧ 2022-07-13 03:19:41 檢舉

好的 感謝您 我會再去詢問看看相關的網路管理員

我要發表回答

立即登入回答