5. 遠程操作
5.1 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服務,需要安裝相應的服務器和客戶端。客戶端和服務器的關系:如果,A機器想被B機器遠程控制,那么,A機器需要安裝SSH服務器,B機器需要安裝SSH客戶端。
5.2 遠程登錄
5.2.1 Linux平台相互遠程
操作命令:ssh -l username hostip
參數 |
含義 |
-l |
選項, 是字母“l”,不是數字“1” |
username |
被遠程登錄的用戶名 |
hostip |
被遠程登錄的ip地址 |
注意:遠程登錄的兩台機器必須要能ping通(平通)。
首先,查看需要被遠程機器的ip:
遠程登錄(這里是用戶 wencong ( A 機器 ) 遠程登錄 edu ( B 機器 ) ), 可以不用sudo :
SSH 告知用戶,這個主機不能識別,這時鍵入"yes",SSH 就會將相關信息,寫入" ~/.ssh/know_hosts" 中,再次訪問,就不會有這些信息了。然后輸入完口令,就可以登錄到主機了。
接着,提示輸入登陸密碼:
登陸成功:
5.2.2 Windows遠程登錄Linux
如果想在 Windows 平台下遠程登錄 Linux,這時候,Windows 需要安裝 安裝相應軟件包。這里介紹是Xmanager。
Xmanager是一款小巧、便捷的瀏覽遠端X窗口系統的工具。它包含Xshell、Xftp等軟件:
l Xshell:是一個Windows平台下的SSH、TELNET和RLOGIN終端軟件。它使得用戶能輕松和安全地在Windows平台上訪問Unix/Linux 主機。
l Xftp:是一個應用於 Windows 平台的 FTP 和 SFTP 文件傳輸程序。Xftp能安全地在Unix/Linux 和 Windows 平台之間傳輸文件。
配置Xshell,遠程登錄:
1)ubuntu安裝ssh服務器
sudo apt-get install openssh-server
2)出現問題時,重啟ssh服務即可
sudo service ssh restart
3)保證 xshell 所在主機( 這里為win7 ) 和 ubuntu( 這里為虛擬機 ) 相互能平通,因為ssh遠程連接是通過網絡連接的,如果網絡都不通,就無法連接。
a) 在虛擬機ubuntu查看其ip
Linux默認采用的編碼格式是UTF-8,Windows默認采用的編碼格式是ANSI(GB2312、GBK),所以需要設置一下相應編碼:
5.3 遠程傳輸文件
5.3.1 Linux平台相互傳輸
SSH 提供了一些命令和shell用來登錄遠程服務器。在默認情況下,不允許用戶拷貝文件,但還是提供了一個“scp”命令。
參數 |
含義 |
RemoteUserName |
遠程用戶名 |
RemoteHostIp |
遠程ip |
RemoteFile |
遠程文件,可帶上路徑 |
FileName |
拷貝到本地后的名字,可帶上路徑,不帶路徑拷貝到當前目錄 |
本地文件復制到遠程:
scp FileName RemoteUserName@RemoteHostIp:RemoteFile
scp FileName RemoteHostIp:RemoteFolder
scp FileName RemoteHostIp:RemoteFile
本地目錄復制到遠程:
scp -r FolderName RemoteUserName@RemoteHostIp:RemoteFolder
scp -r FolderName RemoteHostIp:RemoteFolder
遠程文件復制到本地:
scp RemoteUserName@RemoteHostIp:RemoteFile FileName
scp RemoteHostIp:RemoteFolder FileName
scp RemoteHostIp:RemoteFile FileName
遠程目錄復制到本地:
scp -r RemoteUserName@RemoteHostIp:RemoteFolder FolderName
scp -r RemoteHostIp:RemoteFolder FolderName
拷貝遠程的文件:
拷貝遠程的文件可以任意修改其名字:
拷貝遠程的文件可以指定存放路徑:
5.3.2 Windows和Linux相互傳輸文件
Xmanager自帶的Xftp是一個應用於 Windows 平台的 FTP 和 SFTP 文件傳輸程序。Xftp能安全地在Unix/Linux 和 Windows 平台之間傳輸文件。
Ubuntu 下安裝 OpenSSH Server
apt-get install openssh-server
修改ssh默認端口
ssh-server配置文件位於/ etc/ssh/sshd_config,在這里可以定義SSH的服務端口,默認端口是22,你可以自己定義成其他端口號,如222。然后重啟SSH服務:
/etc/init.d/ssh restart
加快ssh登錄時間
vi /etc/ssh/sshd_config
找到 GSSAPI options 這一節,將下面兩行注釋掉:
#GSSAPIAuthentication yes
#GSSAPIDelegateCredentials no
然后重新啟動 ssh 服務即可:
/etc/init.d/ssh restart
----------Ubuntu安裝g++
如果使用: apt-get install g++ 提示錯誤
嘗試使用 apt-get -f install 把欠缺的包安裝完畢。
再次重試: apt-get install g++
遠程連接服務器:
linux設置:
1、右擊網絡設置,在打開對話框中選擇網絡適配器
2、在網絡連接中選擇網絡橋接模式並選擇復制物理網絡地址
3、重啟linux服務器
4、獲取ip地址【ifconfig】
windows設置:
1、安裝中文版Xshell5
2、打開XShell選擇文件,在下拉列表中選擇新建
3、在彈出對話框中設置用戶名和ip地址
4、驗證身份需要輸入linux服務器的用戶名和密碼
遠程文件傳輸:
1、在窗口菜單中選擇新建文件傳輸
2、在打開sftp對話框中設置路徑linux路徑 同時設置windows路徑 命令時lcd 在打開對話框中設置路徑
3、文件傳輸 put上傳 將windows中的文件上傳到Linux服務器中 get 下載將Linux中的文件下載到windows中