遠程管理

# 遠程管理

一、Linux下連接windows遠程桌面

  在linux下yum -y install rdesktop linux下遠程桌面

  rdesktop -f -u 用戶名 -p 密碼 ip地址 (-f 全屏)

  Ctrl+Alt+Enter 退出全屏

  在VMWare中快捷鍵會衝突,不要加-f選項開全屏,要不只能切到別的終端,kill殺死進程

 

  telnet ip地址  端口號

  安裝VNC服務器端:

    windows服務器端的VNC是 tightvnc官網上下載 .msi的文件

    Linux上VNC安裝使用 yum -y install tigernvc tigernvc-server

  配置

    nvcpasswd 設置密碼

    nvcserver 回車  就啓動了VNC

    注:在windows上使用VNC工具連接 如果拒絕,則在ip後使用:5901指定端口(默認使用5900端口,但多個人向linux的VNC發起連接的話,每人要使用獨立的端口,不能重複)

新服務器的操作流程:

    1.配置硬RAID

    2.安裝系統

    3.配置IP

    4.設置防火牆策略

    5.部署服務

    6.打開22端口


二、SSH

1、基礎:

    sshd  服務名 

    tcp 22  端口號

    服務端主程序:/usr/sbin/sshd

    客戶端主程序:/usr/bin/ssh

    服務端配置文件:/etc/ssh/sshd_config  主配置文件

    客戶端配置文件:/etc/ssh/ssh_config (一般客戶端使用默認配置)

 

2、驗證方式:

    密碼驗證:覈對用戶名、密碼是否用戶名匹配(服務器端的用戶名密碼)

    密鑰對驗證:覈對客戶的私鑰、服務端公鑰是否匹配(在客戶端生成一對密鑰,將公鑰傳給服務器)

    兩個驗證都打開 密鑰對生效

    /etc/ssh/sshd_config裏的內容

    PasswordAuthentication yes  是否開啓密碼驗證

    #PubkeyAuthentication yes 是否開啓密鑰對驗證

    #AuthorizedKeysFile.ssh/authorized_keys 保存位置

    #PermitRootLogin yes 是否允許管理員登錄

    在生產環境裏,不要讓root通過網絡來登錄某臺主機,有可能被別人截獲,在內網無所謂,在公網上用root使用ssh來登錄危險性是比較大的。

 

3、密碼驗證

    ssh  用戶名@目標主機  使用默認22端口連接

    ssh 目標主機地址 默認使用root連接

    ssh -p 端口號 用戶名@目標主機     

 

4、功能模塊

    ssh 遠程連接      (-p 指定端口號)

    scp 遠程文件傳輸  (-P 指定端口號)

    要注意權限問題

    使用scp上傳:

    scp 本地文件 用戶名@目標主機地址:/tmp  

    例:scp ./1.txt [email protected]:/tmp

    使用scp下載:

    scp 用戶名@目標主機地址:/路徑/文件名 本地目錄

    例:scp [email protected]:/tmp/2.txt ./

    sftp 安全的FTP服務 

    sftp 用戶名@ip地址   (-oPort=端口號)

    不需要指定目錄,會上傳到登錄用戶的家目錄

    例:sftp [email protected] 

    sftp>put 文件名 上傳文件

 

    sftp>get 文件名 下載文件

 

5、密鑰對驗證:(用於腳本)

    a、普通用戶在客戶端生成密鑰對 id_rsa id_rsa.pub

    ssh-keygen -t rsa 

    -t 指定生成密鑰對的算法 (rsa或dsa)

wKiom1X6453wI5AhAAKrq6KJgFQ065.jpg

    b、將公鑰id_rsa.pub上傳給服務器

        scp /home/client/.ssh/id_rsa.pub [email protected]:/tmp

    c、服務器端,用root用戶將公鑰內容導入到

        /home/用戶/.ssh/authorized_keys,並開啓密鑰對驗證方式

     cat id_rsa.pub >> /home/server/.ssh/authorized_keys

    d、客戶端測試  

    ssh 服務器端用戶@服務器端IP

 

 

  @font-face {  font-family: "Times New Roman";}@font-face {  font-family: "宋體";}@font-face {  font-family: "SimSun";}p.MsoNormal { margin: 0 0 0; text-align: justify; font-family: "Times New Roman"; font-size: 14px; }h1 { margin-top: 23px; margin-bottom: 22px; page-break-after: avoid; text-align: center; font-family: "Times New Roman"; font-weight: bold; font-size: 29px; }span.msoIns { text-decoration: underline; color: blue; }span.msoDel { text-decoration: line-through; color: red; }div.Section0 { page: Section0; }

SSH隧道

假設內網用戶A現在想通過網關B去訪問外網的一個網站服務器C,但是因爲網關B上的策略(路由器上設置禁止員工做與工作無關的信息,比如禁止QQ,上班時間不許看優酷等),使得用戶A不能夠訪問想要訪問的內容,如果用戶A想要訪問優酷的網站,那應該怎麼辦?

wKioL1X65iHg7FKZAABK_ceIyJE986.jpg


 

由於LAN----GW----WLAN的這條線路斷了,用戶A是不能夠訪問C的。此時,假如用戶A在外網還有一臺自己的雲主機D,而主機D不會被網關限制訪問(D在公網上),它能夠訪問網站服務器CA----B----D這條鏈路是沒有問題的,並且D---C這條鏈路也是沒有問題的,那我們可以讓主機D作爲跳板機,讓我們的訪問由A---B---C變爲A---B---D----C,這樣的話防火牆不會拒絕我們內網用戶A訪問主機D,那我們可以成功的把請求發送到主機D,然後再由主機D,作爲我們的跳板機,將我們的請求發送給網站服務器C。這樣我們在我們的主機A和主機D之間建立了一條SSH隧道。我們網關做設置時,一般設置的是拒絕內網向外網發送的請求,而外網給我們內網回的數據不會被拒絕。

一、建立SSH隧道的必須條件:

1.要知道訪問的主機C是誰

2.在公網上要有一臺可以和主機C直連的跳板機

3.跳板機上必須開啓SSH服務

有了這三個才能建立SSH隧道,實現訪問的中轉

二、SSH隧道實驗環境的搭建:

1.需要4臺虛擬機

一臺內網A  IP 192.168.1.1

一臺網關服務器B網關服務器需要兩塊網卡,網卡1IP地址爲192.168.1.2網卡2IP地址爲200.200.200.2;它既要跟左邊通信,又要跟右邊通信,跨網段的)

一臺想要訪問的網頁服務器C  IP地址爲200.200.200.200

一臺外網D IP地址爲200.200.200.1

2.在網關Bping 內網A 192.168.1.1 和外網D 200.200.200.1都可以通信,在外網D 200.200.200.1上設置網關

route add default gw 200.200.200.2

3.在外網的200.200.200.200網站服務器上把網站架設起來

a)在網站服務器上進行本地測試,可以訪問

b)在內網用戶A上訪問網站是不能訪問的(因爲在中間的網關上沒有做任何策略)

4.在網關B上,編輯/etc/sysctl.conf,把路由轉發打開,將net.ipv4.ip_forward的值改爲1表示支持ipv4的數據包轉發),然後保存退出,執行sysctl -p命令刷新。此時,內網用戶訪問外網網站服務器是不能夠通的。

真實情況下內網用戶是沒有權限對網關做任何操作的,網關沒有權限修改,路由器沒有權限登錄

5.只要保證內網的用戶能夠登錄自己外網的主機就可以。在內網用戶ASSH登錄外網的主機D在內網用戶A上執行命令 

ssh -N -f -L 自己定義的端口:要訪問的主機的地址:要訪問的端口 跳板機地址

-N 表示這臺主機不是要ssh登錄,而只是要做一個轉發

-f 表示要把這條策略放在後臺運行、

-L 表示指定要轉發的策略(如何去做這個轉發)

(ssh -N -f -L 8080:200.200.200.200:80我要訪問這臺主機的80端口,我要通過200.200.200.1的這臺主機做跳轉)

例:ssh -N -f -L 8080:200.200.200.200:80 200.200.200.1 

我要ssh連接到200.200.200.1,連接到這臺主機以後,做跳轉,跳轉到200.200.200.20080端口,通過8080端口去做跳轉

6.配置完成之後,在內網主機上直接訪問200.200.200.200是不通的(因爲網關路由器上沒有允許我們訪問的策略),但是通過訪問http://localhost:8080訪問本地的8080端口(當我們的用戶去訪問本地的8080端口時,它會將請求連接到遠程的200.200.200.1上,通過這臺主機發起一條200.200.200.200:80的請求,然後結果就顯示給了我們)

在實驗環境下,只需要上面的一條命令,但在生產環境裏,有很多的網絡因素,要調整很多的東西(比如要用客戶端的代理程序等)





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章