1. 程式人生 > >主機訪問伺服器相關的設定

主機訪問伺服器相關的設定

本地主機通過阿里雲伺服器訪問遠端實驗室中的伺服器的方法:

前提:購買阿里雲伺服器,阿里雲對學生有9.9元購買一個月的伺服器的優惠。

定義:
    實驗室伺服器的ip為A.A.A.A,使用者名稱為lab
    阿里雲伺服器的ip為B.B.B.B,使用者名稱為root
    阿里雲伺服器上遠端轉發到實驗室伺服器的埠為2222(可以更換)
    阿里雲伺服器上本地轉發到2222埠的埠為3333(可以更換)

步驟:
    1. 在實驗室的伺服器中執行命令ssh -fCNR 2222:127.0.0.1:22

[email protected]或者autossh -M 222 -fCNR 2222:127.0.0.1:22 [email protected] -p 22
    2. 在阿里雲伺服器中執行命令ssh -fCNL *:3333:127.0.0.1:2222 127.0.0.1
    3. 在阿里雲管理網頁開放埠3333的入口許可權
    4. 在本地主機中執行命令ssh -p 3333 [email protected]
    done.


=====================================================================
使用阿里雲作為中間伺服器達到從外網訪問內網伺服器遇到的問題:

    1. 在使用了正向代理後,總是發現從本地無法訪問伺服器的指定埠,問題出現在輸入ssh命令後沒有反映:
        其實阿里雲伺服器對埠訪問做了限制,預設設定下,阿里雲伺服器只有22埠一個訪問入口,所以為了使用其他埠作為對映,需要在阿里雲伺服器管理網頁下設定多幾組訪問入口。

    2. 設定好正向代理後,發現還是沒有辦法訪問阿里雲伺服器,這次問題出現在輸入命令後報錯Connection refused:
        之所以出現這種錯誤是因為我在查詢資料時看到ssh遠端埠轉發的用法是ssh -R [bind_address:]port:host:hostport hostname,所以直接把bind_address忽略了,所以被阿里雲伺服器拒絕,只要用以下語句就可以解決這個問題:ssh -R *:port:host:hostport hostname。

    3. 在阿里雲伺服器上使用ssh埠轉發(ssh -R..)時,報錯bind: Cannot assign requested address:
        這個問題不是一定會出現的,但是如果出現了可以嘗試在ssh後加'-4'選項。