Linux開發環境搭建與使用——Linux必備軟體之SSH

來源:互聯網
上載者:User

標籤:linux   ubuntu   ssh   遠端控制   終端   

SSH 為 Secure Shell 的縮寫,由 IETF 的網路工作小組(Network Working Group)所制定;SSH 為建立在應用程式層和傳輸層基礎上的安全性通訊協定。


SSH 是目前較可靠,專為遠程登入工作階段和其他網路服務提供安全性的協議。常用於遠程登入,以及使用者之間進行資料拷貝。


利用 SSH 協議可以有效防止遠端管理過程中的資訊泄露問題。SSH 最初是 UNIX 系統上的一個程式,後來又迅速擴充到其他動作平台。SSH 在正確使用時可彌補網路中的漏洞。SSH 用戶端適用於多種平台。幾乎所有 UNIX 平台—包括 HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可運行 SSH。


相關工具的安裝

SSH 伺服器的安裝:

sudo apt-get install openssh-server


SSH 用戶端的安裝:

sudo apt-get install openssh-client


用戶端和伺服器的關係:如果,A 機器想被 B 機器遠端控制,那麼,A 機器需要安裝 SSH 伺服器,B 機器需要安裝 SSH 用戶端。


如使用過程中出現問題,可重啟 SSH 伺服器:

sudo service ssh restart


測試使用

操作命令:ssh -l username hostip

ssh : 命令

-l : 選項, 是字母“ L ”,不是數字“ 1 ”

username:被遠程登入的使用者名稱

hostip:被遠程登入的 ip 地址


查看被遠程登入的的ip:



遠程登入(這裡是使用者 wencong ( A 機器 ) 遠程登入 edu ( B 機器 ) ), 可以不用sudo :



SSH 告知使用者,這個主機不能識別,這時鍵入" yes ",SSH 就會將相關資訊,寫入" ~/.ssh/know_hosts " 中,再次訪問,就不會有這些資訊了。然後輸入完口令,就可以登入到主機了。


接著,提示輸入登陸密碼:



登陸成功:





如果想在 Windows 平台下遠程登入 Linux,這時候,Windows 需要安裝 xmanager 軟體包。

xmanager是個軟體包。包含xshell、xftp、xstart等軟體。

xshell:是一個 Windows 平台下的 ssh、TELNET 和 RLOGIN 終端軟體。它使得使用者能輕鬆和安全地在 Windows 平台上訪問 Unix/Linux 主機。

xftp:是一個應用於 Windows 平台的 FTP 和 SFTP 檔案傳輸程式。xftp 能安全地在Unix/Linux 和 Windows 平台之間傳輸檔案。

xstart:允許遠程使用圖形介面訪問伺服器,但是效率稍低,僅支援 gnome 案頭。


這裡,我們使用 xshell 軟體,具體詳情請看:《 Linux開發環境搭建與使用——通過xshell遠端連線ubuntu》。


SSH 配置

SSH 安裝的時候,沒有預設的使用者設定檔,我們可以根據自己需要自行配置。


如上面的例子,我們要登陸 10.221.20.16 上的 edu 使用者,我們每次都得敲“ssh -l edu 10.221.20.16”。


下面介紹一下簡化這個命令的方法。

在 ~/.ssh 下建立檔案 config:



在 config 編寫如下內容:



以後,在命令列運行“ ssh edu ” 即可登陸 10.221.20.16 上的 edu 使用者:



注意:config 第一行內容,如果改為 Host *test ,命令則變為:ssh test。test 這個名字根據需要自定命名,敲命名時匹配上就行。




當然,還有更多別的選項,如 ForwardAgent, Compression, ForwardX11 FallBackToRsh等,這裡就不一一羅列。


用“ scp ”拷貝檔案和目錄

SSH 提供了一些命令和 shell 用來登入遠程伺服器。在預設情況下,不允許使用者拷貝檔案,但還是提供了一個“ scp ”命令,使用方法如下:


本地檔案複製到遠程:
scp FileName [email protected]:RemoteFile
scp FileName RemoteHostIp:RemoteFolder
scp FileName RemoteHostIp:RemoteFile

本地目錄複寫到遠程:
scp -r FolderName [email protected]:RemoteFolder
scp -r FolderName RemoteHostIp:RemoteFolder

遠程檔案複製到本地:
scp [email protected]:RemoteFile FileName
scp RemoteHostIp:RemoteFolder FileName
scp RemoteHostIp:RemoteFile FileName

遠程目錄複寫到本地:
scp -r [email protected]:RemoteFolder FolderName
scp -r RemoteHostIp:RemoteFolder FolderName


這裡只測試一個命令,其它操作都是大同小異。

遠程檔案複製到本地:

scp [email protected]:RemoteFile FileName

RemoteUserName:遠端使用者名

RemoteHostIp:遠程ip

RemoteFile:遠程檔案,可帶上路徑

FileName:拷貝到本地後的名字,可帶上路徑,不帶路徑拷貝到目前的目錄


查看遠程目錄與檔案:



查看本地目錄與檔案:



拷貝遠端檔案:




拷貝遠端檔案可以任意修改其名字:



拷貝遠端檔案可以指定存放路徑:



Linux開發環境搭建與使用——Linux必備軟體之SSH

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.