這一節學習了如何在linux和windows下對rhel進行遠端通路。主要包括了ssh的密碼,密鑰通路,xshell以及vnc的使用
首先來看看linux下如何遠端通路另外一台伺服器。
現在我有兩條伺服器 rhce7-00 和 rhce7-01,ip位址如下所示
rhce7-01
rhce7-00
從00上遠端通路01,很簡單,直接輸入 ssh ip位址即可 ,這是以目前使用者(root)的身份進行通路。第一次連接配接的時候會确認指紋資訊等等。
可以檢視一下幫助資訊 看看ssh指令能做哪些事情
如果想以指定使用者身份登入,可以通過-l 選項或者電子郵件的格式指定
例如
在目前使用者的家目錄下有個隐藏目錄 .ssh, ssh搭建的遠端連接配接會自動把遠端主機的資訊儲存在known_hosts檔案裡面,這樣下次再連接配接的時候就不會詢問指紋相關的問題了
如果想遠端的打開圖像工具怎麼辦?如下所示,直接運作firefox會報錯
解決方式很簡單,添加一個-x,就表明要打開x視窗了,再次運作firefox成功
firefox還會顯示這是一個運作在rhce7-01上的程序
ssh通路遠端伺服器的時候,每次都會要求輸入密碼,如何避免這個麻煩呢?可以通過密鑰的方式實作。基本原理是在目前主機上生成一對密鑰,然後将公鑰傳送給遠端主機,當進行遠端通路的時候,對方會對一個随機值進行公鑰加密,發送給本機,本機用私鑰解密之後再發送回去,對方會對這個值進行比對驗證,如果相同,那麼表示通過。豆子之前玩過一段時間aws,aws上的linux虛拟機都是用這種密鑰的方式進行遠端通路的。
基本操作,首先生成一對密鑰, 裡面的passphrase是指的對私鑰進行同步加密,這樣的話,當使用者在本機進行驗證的時候,使用者還必須輸入passphrase進行同步解密。這裡為了簡便,我就不輸入密碼了
看看生成的這一對密鑰
看看具體的内容
首先是私鑰,這個保留在本機用來解密
然後是公鑰,這個會發送給對方以便加密
通過ssh-copy-id将公鑰傳送給對方
傳送完畢之後,直接通路則無需再輸入密碼
感興趣的話還可以看看ssh-copy-id有哪些其他選項
切換到遠端主機,看看對方的.ssh目錄下生成了一個authorized_key 的檔案,打開看看,内容和本機的公鑰是一樣的。
關于公鑰,私鑰,資料信封,證書等知識我不贅述了,豆子幾年前拜讀過某人的部落格,解釋的非常好,這裡再轉一下
<a href="http://www.cnblogs.com/1-2-3/archive/2007/09/17/colloquialism-digital-certificate-part1.html" target="_blank">http://www.cnblogs.com/1-2-3/archive/2007/09/17/colloquialism-digital-certificate-part1.html</a>
接下來看看windows下面如何進行通路。豆子平常習慣使用putty或者securecrt,這裡老師推薦的是xshell。安裝完xmanager之後,打開xshell,設定好ip,輸入使用者名和密碼就可以遠端通路了。
如果在xshell使用密鑰,基本過程和linux類似,依然是生成密鑰對,傳送公鑰到遠端主機
點選tools- new user key wizard
選擇算法和密鑰長度
生成公鑰
這個passphrase為了省事其實可以不寫
儲存公鑰,完成
拷貝公鑰到遠端主機
把這個公鑰複制到對應的位置,并修改名字
在xshell裡面建立個連接配接就可以綁定了
最後我們來看看相關的ssh配置檔案。在/etc/ssh目錄下,sshd_config可以配置伺服器角色的設定;ssh_config可以配置用戶端角色的設定; ssh_host* 則是各種指紋檔案
比如sshd可以配置是否允許密鑰認證,或者密碼認證
ssh裡面可以配置端口,是否進行嚴格的密鑰确認等等
如果想遠端通路圖形界面,還可以使用vnc,簡單的說就是在伺服器端安裝vnc server,然後用戶端安裝vnc viewer進行通路;這個是個跨平台的工具,豆子在windows,osx和linux下都經常使用vnc,甚至手機越獄了都是可以用vncviewer遠端控制的。
紅帽有官方文檔具體介紹如何使用vnc工具
<a href="https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/ch-tigervnc.html" target="_blank">https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/ch-tigervnc.html</a>
下面簡單的截圖示範一下
首先安裝tigervnc-server
拷貝服務檔案, 他的預設端口是5900,也可以給不同的使用者自定義端口,比如5就表示5905端口
修改一下檔案,其實就是把使用者名綁定這個服務
把<user>替換成使用者名
添加防火牆
開機自動運作,啟動服務;有的時候enable之後還需要重新開機系統才能啟動服務。
測試,這裡我可以用ip:5905或者ip:5都是可以的
可以看見這個程序是綁定到我的beanxyz使用者的
重複以上操作,綁定james端口到5904,登入顯示為james