中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Ubuntu下如何使用OpenSSH

發布時間:2021-10-28 16:17:07 來源:億速云 閱讀:545 作者:小新 欄目:系統運維

這篇文章將為大家詳細講解有關Ubuntu下如何使用OpenSSH,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

1.私key登陸

無論你使用哪個客戶端軟件都會有設置使用key的選項,ssh命令也不例外。默認情況下,ssh會讀取用戶宿主目錄的.ssh里的id_rsa這個文件。這里有個小插曲:筆者原來的key是用secureCRT生成的。保存的時候會提示是用secureCRT私有格式還是openssh格式。筆者當時用的secureCRT格式,放到這個目錄以后,你看那個著急啊,死活不好使。后來又用secureCRT重新保存成openssh格式才可以(重新保存不是重新生成喲,想想后面有那么多服務器要一個一個重新放上去就會沒有重新生成的欲望)。還有一點要注意的是,一定要是id_rsa這個文件名喲,不然的話急死你也不知道啥原因(當然了后面學習到使用配置文件的時候,你會知道還有identity和id_dsa,到時候想用啥名隨心所意)。再有就是這個文件的權限是600,不然的話ssh也不會買帳的喲。

2.指定用戶名

每個人都會有自己喜歡的用戶名,像筆者就喜歡用rainbird,所以筆者登陸系統的時候用戶名也是rainbird。而你連接的服務器不會判斷你當前的用戶名,然后給你建立一個帳號喲。默認使用“ssh ip”的時候。ssh會判斷你當前是否有配置文件指定默認的用戶名,沒有的話再判斷你在命令里有沒有使用ssh -l rainbird ip或者ssh rainbird@ip這樣的格式,沒有的話,它就會默認取你當前系統登陸的用戶名。來連接遠程的系統。如果你每次連接的用戶要用的用戶名都一樣而又不是rainbird比如說root的話,每次都要輸入-l或者user@ip這樣的形式是不是很煩呢?反正輸入的東西越多效率就越低。前面有提到ssh會先判斷是否有配置文件。

經過筆者的學習發現:ssh會讀取兩個配置文件:一個是~/.ssh/config,沒有的話就會去讀/etc/ssh/ssh_config。呵呵,這也是linux的工作理念:每個用戶都會有自己個性的配置文件,所以用戶默認會使用統一的配置文件。抱著試試看的想法,筆者vi ~/.ssh/config,寫入User竟發現講法高亮了,看來就是它,于是寫入:

User root

保存退出以后,再ssh ip的時候,竟發現真得以root@ip的形式連接了:

[rainbird@rainbird ~]$ssh 192.168.5.18

root@192.168.5.18's password:

3.指定連接的端口和密碼

在設定了默認連接的用戶名以后,筆者算是嘗到了甜頭。于是開始仔細研究/etc/ssh/ssh_config這個配置文件。筆者以前也只是知道有這么個文件,還真沒仔細的看過。這一研究不要緊,許多問題都迎刃而解。***引起筆者注意的兩行是:

#    Port 22

#    Protocol 1,2

這兩行的意思就是說,默認連接的端口是22,默認連接使用的ssh協議1,2都可以。直接打開~/.ssh/config把這兩行也加去:

Port 1222

Protocol 2

是不是又省去了很多東西呢?

4.添加便于訪問的主機名

這點嚴格來說算不上是ssh命令獨有的。無論使用哪種客戶端軟件都會有保存會話的功能,但是ssh命令有沒有讀取默認會話配置的功能呢?筆者也想了很長時間,但是沒找到解決辦法。其實筆者就是覺得每次都要ssh xxx.xxx.xxx.xxx有點太累,主要是筆者對數字天生不感冒。咋辦呢?老大說,你直接用域名不就得了?嗯?域名好記,但是好記是好記,也不短啊,咋辦呢?直接寫hosts得了!因為域名的出現是因為hosts不夠用了。在hosts夠用的情況下,為啥不用hosts呢?再說不但一勞永逸,還節省了解析時間,一舉兩得。于是乎:sudo vi /etc/hosts

xxx.xxx.xxx.xxx web

以后再訪問web的時候,直接ssh web。嗯,有點符合linux的簡潔高效的思想了。

5.ssh 中文亂碼問題

世界真美好。豐富多彩,五彩繽紛。linux下正常顯示中文的問題,一直是筆者最關心的問題。當使用ssh登陸到中文環境的linux服務器上時,中文還是亂碼。咋辦呢?這天生一對的東西,能不能解決這個問題呢?答案是肯定的。在/etc/ssh/ssh_config有這么一句話:

SendEnv LANG LC_ALL

這個選項默認是打開的,意思是發送系統語言環境。網上有說可以寫成SendEnv LANG=en.US.UTF-8 LC_ALL=en.US.UTF-8。但是根據筆者的理解:當LC_ALL設置的時候,LANG就算設置了也要服從LC_ALL的,所以筆者直接在~/.ssh/config里加入了這句:

SendEnv LANG LC_ALL=en.US.UTF-8

哈哈,中文就正確顯示了。生活真美好!

6.ssh客戶端啟用ssh key轉發

Linux系統中有一個自動轉發key的功能,在遠程到一臺linux再ssh其它機器的時候可以用你本機的私key自動去驗證,極大的提高的工作效率和安全性。這個功能用普通的ssh命令可不可以實現呢?答案還是那么的肯定!但是要分兩步走,首先vi ~/.ssh/config加入:

ForwardAgent yes

然后再執行命令:

ssh-add

它會默認把~/.ssh/id_rsa加到你的中轉代理里。哇卡卡,我胡漢三又回來了~~~

7.防止斷開連接

ssh服務端,出于安全和節省資源的考慮,會把一段時間不活動的會話自動斷開。雖然經過前面的改造你連接一臺機器已經是很省事的事兒了。但是出去抽根兒煙回來,就要再這么登陸一次,讓人感覺實在不爽。那咋辦呢?俗話說:上有政策,下有對策。

vi ~/.ssh/config

ServerAliveInterval=60

關于“Ubuntu下如何使用OpenSSH”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

三台县| 宁武县| 绥化市| 全南县| 冕宁县| 深州市| 九江市| 兴海县| 平湖市| 普定县| 尼勒克县| 贡觉县| 河西区| 沂水县| 延庆县| 南阳市| 凤台县| 固镇县| 金湖县| 尚志市| 黑龙江省| 库伦旗| 尖扎县| 安顺市| 宁津县| 鸡西市| 塔城市| 重庆市| 安乡县| 精河县| 昌邑市| 乐清市| 宾阳县| 定边县| 新巴尔虎右旗| 五莲县| 黑水县| 汉沽区| 高安市| 汉中市| 木里|