SSH 命令的11種用法

  • 使用ssh連接遠程主機

最簡單的用法只需要指定用戶名和主機名參數即可,主機名可以是 IP 地址或者域名。 $ ssh user@hostname

  • ssh連接到其他端口

SSH 默認連接到目標主機的 22 端口上,可以使用-p選項指定端口號 $ ssh -p 10022 user@hostname

  • 使用ssh在遠程主機執行一條命令並顯示到本地, 然後繼續本地工作

直接連接並在後面加上要執行的命令就可以了 $ ssh [email protected] ls -l

  • 在遠程主機運行一個圖形界面的程序

使用ssh的-X選項,然後主機就會開啓 X11 轉發功能 $ ssh -X [email protected]

  • 如何配置 SSH

SSH 的配置文件在 /etc/ssh/sshd_config 中,你可以看到端口號, 空閒超時時間等配置項。

  • 構建 ssh 密鑰對

使用 ssh-keygen -t +算法 ,現在大多數都使用rsa或者dsa算法。 $ ssh-keygen -t rsa

  • 查看是否已經添加了對應主機的密鑰

使用-F選項 $ ssh-keygen -F 222.24.51.147

  • 刪除主機密鑰

使用-R選項,也可以在~/.ssh/known_hosts文件中手動刪除 $ ssh-keygen -R 222.24.51.147

  • 綁定源地址

如果你的客戶端有多於兩個以上的 IP 地址,你就不可能分得清楚在使用哪一個 IP 連接到 SSH 服務器。爲了解決這種情況,我們可以使用 -b 選項來指定一個IP 地址。這個 IP 將會被使用做建立連接的源地址。 $ ssh -b 192.168.0.200  [email protected]

  • 對所有數據請求壓縮

使用 -C 選項,所有通過 SSH 發送或接收的數據將會被壓縮,並且任然是加密的。 $ ssh -C [email protected]

  • 打開調試模式

因爲某些原因,我們想要追蹤調試我們建立的 SSH 連接情況。SSH 提供的 -v 選項參數正是爲此而設的。其可以看到在哪個環節出了問題。 $ ssh -v [email protected]

  • other

/etc/ssh/sshd_config配置文件詳細說明"

Port 2 “Port”設置sshd監聽的端口號。 ListenAddress 192.168.1.1 “ListenAddress”設置sshd服務器綁定的IP地址。 HostKey /etc/ssh/ssh_host_key “HostKey”設置包含計算機私人密匙的文件。 ServerKeyBits 1024 “ServerKeyBits”定義服務器密匙的位數。 LoginGraceTime 600 “LoginGraceTime”設置如果用戶不能成功登錄,在切斷連接之前服務器需要等待的時間(以秒爲單位)。 ClientAliveInterval 300(默認爲0) 這個參數的是意思是每5分鐘,服務器向客戶端發一個消息,用於保持連接 KeyRegenerationInterval 3600 “KeyRegenerationInterval”本文所有工具都可以在《Linux 就該這麼學》中找到相關的解釋!設置在多少秒之後自動重新生成服務器的密匙(如果使用密匙)。重新生成密匙是爲了防止用盜用的密匙解密被截獲的信息。 PermitRootLogin no “PermitRootLogin”設置root能不能用ssh登錄。這個選項一定不要設成“yes”。 IgnoreRhosts yes “IgnoreRhosts”設置驗證的時候是否使用“rhosts”和“shosts”文件。 IgnoreUserKnownHosts yes “IgnoreUserKnownHosts”設置ssh daemon是否在進行RhostsRSAAuthentication安全驗證的時候忽略用戶的“$HOME/.ssh/known_hosts” StrictModes yes “StrictModes”設置ssh在接收登錄請求之前是否檢查用戶家目錄和rhosts文件的權限和所有權。這通常是必要的,因爲新手經常會把自己的目錄和文件設成任何人都有寫權限。 X11Forwarding no “X11Forwarding”設置是否允許X11轉發。 PrintMotd yes “PrintMotd”設置sshd是否在用戶登錄的時候顯示“/etc/motd”中的信息。 SyslogFacility AUTH “SyslogFacility”設置在記錄來自sshd的消息的時候,是否給出“facility pre”。 LogLevel INFO “LogLevel”設置記錄sshd日誌消息的層次。INFO是一個好的選擇。查看sshd的man幫助頁,已獲取更多的信息。 RhostsAuthentication no “RhostsAuthentication”設置只用rhosts或“/etc/hosts.equiv”進行安全驗證是否已經足夠了。 RhostsRSAAuthentication no “RhostsRSA”設置是否允許用rhosts或“/etc/hosts.equiv”加上RSA進行安全驗證。 RSAAuthentication yes “RSAAuthentication”設置是否允許只有RSA安全驗證。 PasswordAuthentication yes “PasswordAuthentication”設置是否允許口令驗證。 PermitEmptyPasswords no “PermitEmptyPasswords”設置是否允許用口令爲空的帳號登錄。

 

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