簡易版跳板機-teleport使用


 

目錄
  • 1 環境搭建
  • 2 teleport工具搭建
  • 3 teleport使用示例
    • 3.1 資產管理-添加主機
    • 3.2 資產管理-添加帳號
    • 3.3 建立用戶
    • 3.4 運維受權
    • 3.5 安裝客戶端助手
    • 3.6 登陸測試效果

 


1 環境搭建

實驗環境拓撲以下:linux

客戶端windows主機在互聯網上經過teleport堡壘機平臺對內網主機nginx進行登陸維護。nginx

image

注意:若是使用teleport的免密登陸nginx主機,須要提早實現teleport主機的針對nginx主機基於祕鑰的驗證。web

2 teleport工具搭建

  • teleport下載地址:https://tp4a.com/downloaddocker

  • 首先下載服務端安裝包,放到指定目錄中,而後解壓安裝:shell

    [root@xuzhichao ~]# ll teleport-server-linux-x64-3.2.2.tar.gz 
    -rw-r--r-- 1 root root 23137304 Jul 29 22:00 teleport-server-linux-x64-3.2.2.tar.gz
    
    [root@xuzhichao ~]# tar xf teleport-server-linux-x64-3.2.2.tar.gz 
    
    [root@xuzhichao ~]# ll teleport-server-linux-x64-3.2.2
    total 4
    drwxrwxr-x 2 xu xu  80 Sep 17  2018 daemon
    drwxrwxr-x 5 xu xu  39 Jan 23  2019 data
    drwxrwxr-x 3 xu xu  33 Jan 10  2019 script
    -rwxrwxr-x 1 xu xu 320 Jan 23  2019 setup.sh
    
    [root@xuzhichao ~]# cd teleport-server-linux-x64-3.2.2/
    
    [root@xuzhichao teleport-server-linux-x64-3.2.2]# ./setup.sh 
    
    []===========================================================================[]
     | Teleport Server Installation                                              |
     |===========================================================================|
     |    ver: 3.2.2                                                             |
     | author: apex.liu@qq.com                                                   |
    []===========================================================================[]
    
    Welcome to install Teleport Server!
    
    NOTICE: There are a few steps need you enter information or make choice,
            if you want to use the DEFAULT choice, just press `Enter` key.
            Otherwise you need enter the highlight character to make choice.
    
    Prepare installation...
     - check local installation ... [not exists]
    
    Set installation path [/usr/local/teleport]:     <==指定程序的安裝路徑;
     - copy [/root/teleport-server-linux-x64-3.2.2/data/bin]
         -> [/usr/local/teleport/bin]
     - copy [/root/teleport-server-linux-x64-3.2.2/data/www]
         -> [/usr/local/teleport/www]
     - copy [/root/teleport-server-linux-x64-3.2.2/data/tmp/etc]
         -> [/usr/local/teleport/data/etc]
    process [daemon.in] to [/etc/init.d/teleport]
    process [start.sh.in] to [/usr/local/teleport/start.sh]
    process [stop.sh.in] to [/usr/local/teleport/stop.sh]
    process [status.sh.in] to [/usr/local/teleport/status.sh]
    
    start services...
    starting teleport web ... [done]
    starting teleport core server ... [done]
    
    check services status...
    teleport web server is running.
    teleport core server is running.
    
    --==[ ALL DONE ]==--
    
  • Teleport 有兩個服務:核心服務 core 和網頁服務 web。兩個服務能夠同時啓動、中止、重啓,也可單獨操做其中的一個。windows

    • 操做完整的 teleport 服務:服務器

      • 啓動: /etc/init.d/teleport start
      • 中止: /etc/init.d/teleport stop
      • 重啓: /etc/init.d/teleport restart
      • 查看運行狀態: /etc/init.d/teleport status
    • 僅操做核心服務 core:網絡

      • 啓動: /etc/init.d/teleport start core
      • 中止: /etc/init.d/teleport stop core
      • 重啓: /etc/init.d/teleport restart core
    • 僅操做網頁服務 web:運維

      • 啓動: /etc/init.d/teleport start web
      • 中止: /etc/init.d/teleport stop web
      • 重啓: /etc/init.d/teleport restart web
    #安裝完成teleport後自動啓動服務:
    [root@xuzhichao ~]# ss -ntlp | grep tp_
    LISTEN     0      128    127.0.0.1:52080                    *:*                 users:(("tp_core",pid=1415,fd=6))
    LISTEN     0      128          *:7190                     *:*                   users:(("tp_web",pid=1397,fd=5))
    LISTEN     0      8            *:52089                    *:*                   users:(("tp_core",pid=1415,fd=23))
    LISTEN     0      10           *:52189                    *:*                   users:(("tp_core",pid=1415,fd=14))
    LISTEN     0      8            *:52389                    *:*                   users:(("tp_core",pid=1415,fd=25))    
    
  • WEB登陸teleport:http://192.168.50.17:7190ssh

    填寫系統帳號密碼,點擊開始配置便可:

image

image

  • 登陸頁面以下,輸入上面填寫的用戶名密碼便可登陸:

image

  • 管理員登陸後能夠看到teleport服務器的系統總覽:

image

3 teleport使用示例

3.1 資產管理-添加主機

  • 點擊「資產」,「主機及帳號」,點擊「添加主機」:

image

  • 填寫被管理主機的信息,包括系統,遠程主機的地址,鏈接方式,名稱等:

    • 其中「鏈接模式」一項,若是此遠程主機能夠由teleport服務器直接鏈接,則能夠選擇「直接鏈接」模式,例如遠程主機與teleport服務器處於同一個局域網中,或者遠程主機是開放了遠程鏈接端口的雲端服務器等。

    • 若是遠程主機與teleport服務器之間須要經過其餘網絡設備進行端口映射方可鏈接的,則須要選擇「端口映射」模式。在這種模式下,teleport服務器實際上鍊接的是配置的路由主機的地址和映射端口,而非遠程主機地址。

    • 端口映射模式經常使用於如下場景:

      • teleport服務器處於公司內網,被維護的遠程主機在雲端且沒有公網IP,須要經過一臺有公網IP的服務器進行跳轉。集羣服務器常使用這種方式。
      • 使用teleport服務器管理運行docker的主機以及進入docker內部進行管理。

image

3.2 資產管理-添加帳號

  • 添加完主機後,還須要爲此主機設置遠程登陸的帳號,點擊主機的帳號數量,或者右側操做菜單中的「管理遠程帳號」,會顯示遠程帳號管理對話框。

image

  • 點擊「添加帳號」

image

  • 填寫遠程主機的登陸方式:

    • 鏈接協議:能夠選擇ssh,telnet,rdp;

    • 協議的端口;

    • SSH的認證方式,用戶名密碼和祕鑰認證;

    • 遠程帳號:填寫登陸被管理主機的帳戶;

    • SSH私鑰:填寫teleport主機的私鑰文件/root/.ssh/id_rsa:

      [root@xuzhichao ~]# cat /root/.ssh/id_rsa
      -----BEGIN RSA PRIVATE KEY-----
      MIIEpAIBAAKCAQEA5wjd4t7en6FxqPFymV2Z2iWOIIJsBgzP1WrfEA9KHSizgdJf
      vJZ9G38Tj30xAW56By3f6d3A1abMffnpCv7ijkiqachQuCshRBamVr9Y3RcLfihm
      dEhIJ6PTH0/lw1eu9DBGeusoluIJ/aIJv8bSSGojDRgP/qXIfuZmuTKb7HjQuA3I
      K9xKHG4P+0w8wej1HvBBI/7bcTFT4oy3fJbXcRleJu1KcSjotG5hcgtMRtNlY3Dj
      Gz1jwXiHGLle983hmUtdezYWqYpHXVtERR3kgmWEuCT1VMnJ+W4s7YYHauUAgFwF
      2DvNf4vBuXsqxA7ugwG78mbMScFYCJ6C6zZ43QIDAQABAoIBAAEJUyV/ZnRE3yOo
      4aC6gMQvwvF2ZFGqoQwODK4fw29aDWQZs4A/FJSY/1d3ck7VVgrOM+Dys7jBpM0z
      383C0vVcchdDZMlOuDl7+IcPGLD1N4H7YGpJILm8zGepjhhQPmKuDMLkZyw2G2Fd
      5rlLhQn6H+ohH4E+8SVQl0lhZr2q0uYGOvcTBdjsrXzR0WkKEhbCOxh72/dREEU6
      tdTSh1eBlpaGQD6A/c3R5v1bQj5I4Oks2UtFIlIZMrETxcKCJxpw9dS3FEfwrna0
      nReWPuBRdg+AFSWlFWleLfhCXQJlutfr7EUTsdMBdO0IEPI7e+D7UvkWffxO2caX
      pcVYFykCgYEA+rd8ve0Swv3ZslpbnarMM4CaAaeUbHEsYB3RI01WwxNOF2sAdeQz
      aHHDDsOqMxaEyYuA3ZWQy8US1CdmtWSEB+EfV0pFJjUdq6d76+87ezBrmTu6hu6C
      /uJKduLUCYOR9oPDVchA5zLPQ4YyaqeH8hzBRFrHQU5BJiqsHAPJZtcCgYEA6+cz
      4Q4JKR/dJlapBReQdEU9/m2m/oU30K77FzQpTBBbvQ7JVMOcaqfuiVAfRR+oICaD
      o+UVcJmNEL5qUIOw79d2q+p9IhIP9Q99/1gz28SfCEEUiMJf/vEuvKAsiI+bGfa0
      YpDhu+TfYelHB0C5ZHvYBEt2jcTJQ8RTnAbky2sCgYEAsV9wm/mGJXdsNVbhq/jy
      wJkB25vQUKv8hf9yPzRu5lHZFI455C3PBNw+8EoTNlN/HAta3uj6aH8DJB6/9iKn
      md91yc6cfzxiwlcaP7+faDbIWL895koFWQeFQPiWpCh18l4jqqOi7y4uHgppzrS5
      Y9teC9rhTt1rD/Jukt9G9D8CgYEAsNEQ/6UnlJ1/g1b9RQXOjne/6c6Cls9/cHlX
      VqMQOSUhvekxWslrmj3Y+y8E4SjDOaXkkZoJoeZV57DxuvuaSYs0NdOCi2ECeOpt
      xFB2Pkl38hXlsEQQ8+QO5e8gshMBbEqQFjkGGXGJRbg2Nud6jiiNV1rAt65CNPsY
      uCAqqZUCgYAGtEF9Y+8GXmGGfS8BsJBCXPoFxd5lyVt3ouuYvEasgw4rOfExNXni
      IReLDiIK2whXIcfFv3yKv5YzIXG2nziBJSBzQ9rmAtqxbsCFDTZ8X/4xp4Y0/8H0
      NAO8495nX8H66VtDb/ATzzYxQ+gvkQaPjPdKfM0QW9UaRpZeYklWdg==
      -----END RSA PRIVATE KEY-----
      

image

  • 爲便於管理(例如運維受權或者審計受權時),能夠將主機進行分組。

    分組操做很是簡單,在「資產-主機分組管理」頁面,點擊右上角的「建立主機分組」按鈕並填寫分組名稱,便可創建一個新的分組。

    分組創建以後,點擊某個分組的名稱,便可進入對應分組的主機成員列表頁面,管理此分組中的主機。在此頁面中能夠添加或者刪除主機。

    向分組中添加主機,或者刪除分組,均不影響現存的主機數據,但若是此分組已經在運維策略或者審計策略中被受權了,那麼刪除分組會影響到分組中全部主機的受權。

image

3.3 建立用戶

  • 點擊「用戶」,「用戶管理」,「建立用戶」:

image

  • 填寫用戶相關信息:

!image

  • 爲用戶設置密碼:

image

3.4 運維受權

  • 點擊展開左側菜單「運維」項目,而後點擊「運維受權」,便可打開運維受權管理頁面。只有具有運維受權權限的用戶能夠查看此界面,並進行受權管理。

image

  • 點擊「新建受權策略」,建立一個受權策略:

image

  • 點擊對應的策略名稱,對用戶以及該用戶能夠管理的主機進行受權:

    • 受權admin用戶能夠管理nginx主機組:

image

-- 再新建一個策略,受權xuzhichao用戶能夠管理其中一臺主機:

image

3.5 安裝客戶端助手

  • 在windows終端上安裝teleport的客戶端助手。

  • 點擊「助手設置」

image

-- 能夠把登陸遠程主機的工具設置爲xshell或CRT等工具:

image

  • 重啓客戶端助手讓配置生效

3.6 登陸測試效果

  • 使用我的帳號登陸事後,點擊「運維」,「主機運維」,SSH鏈接對應的主機,會自動跳出xshell界面,直接登陸到對應的nginx主機中:

image

image

  • 能夠查看在線登陸的用戶,同時會記錄認證失敗的歷史會話:

  • 能夠對歷史登陸進行審計,能夠以日誌或錄屏的方式查看用戶的歷史操做:

image

  • 點擊「回放」能夠查看錄像:

image

相關文章
相關標籤/搜索