OpenSSH詳解


思維導圖:

1. SSH概述

2. OpenSSH

  • 配置文件:
    • 服務端sshd:/etc/ssh/sshd_config
    • 客戶端ssh:/etc/ssh/ssh_config

2.1 客戶端程序ssh

1)ssh

2)客戶端免密登錄

3)scp

4)sftp

2.2 服務端程序sshd

2.3 ssh服務的最佳實踐 

3. SSH安全隧道

3.1 本地端口轉發

1)語法

  • ssh   -g  -L   local_port:server2_ip:server2_port    user@server1_ip

2)使用示例

  • 場景:
    • 本機的MySQL監聽在3306端口,且只允許本地訪問,本機的外網地址為10.0.0.209
    • 這時,可以開放本機的12345端口,然后由10.0.0.209這個地址來訪問本機127.0.0.1的3306端口
    • 進而其他主機可以通過訪問10.0.0.209:12345來連入MySQL
  • 命令:
    • ssh -g -L 12345:127.0.0.1:3306 -f -N 10.0.0.209

3.2 遠程端口轉發

1)語法

  • ssh  -g  -R  0.0.0.0:port1:local_ip:local_port    root@server_ip
    • 0.0.0.0表示來自所有IP地址的主機都可以訪問它
    • port1表示暴露在公網上供其他用戶訪問的端口
    • local_ip和local_port表示本機提供服務的端口,如127.0.0.1:80
    • root@server_ip 表示公網上其他用戶可訪問的地址

2)使用示例

  • 場景:
    • 本地主機上構建了一個web服務,但是監聽在本機127.0.0.1:88的地址上
    • 但本地主機可以訪問外網主機10.0.0.205,外網主機可以開放端口12345
    • 這樣當其他主機訪問外網主機10.0.0.205:12345時,可以轉到本地的127.0.0.1:88地址上
  • 命令:
    • ssh -g -R 0.0.0.0:12345:127.0.0.1 -f -N 10.0.0.205
      • 命令在本地主機上執行
    • 遠端主機要開啟GatewayPorts選項

3.3 動態端口轉發

1)語法

  • ssh  -g  -D  1080  -f  -N  user@server1_ip
    • 將自己是身份切換到user@server1_ip,然后通過這個主機去訪問外網
    • 1080是本地動態轉發的端口

3.4 端口轉發維持

  • 端口轉發如果長時間沒有操作,就會自動關閉,所以需要端口轉發維持
  • ssh  -o  ServerAliveInterval=60   user@ip

4. dropbear(輕量化的ssh協議實現方案)

5. telnet服務

5.1 xinetd超級守護進程

1)xinetd簡介

2)xinetd安裝和啟動

3)瞬時守護進程的配置

4)將sshd托管到xinetd

5.2 telnet服務

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM