linux設定SSH自動登陸(免密碼,使用者名稱)

來源:互聯網
上載者:User

例子一

1、建立公開金鑰、公開金鑰

ssh-keygen -t rsa

把公開金鑰複製到遠程主機

無視它出來的任何提示,歡快的一路斷行符號到底吧。

2、把公開金鑰 id_rsa.pub 複製到遠程機器的 /home/username/.ssh目錄 並命名為 authorized_keys

方法1: 一步到位:scp ~/.ssh/id_rsa.pub username@hostname:~/.ssh/authorized_keys

方法2: 複製 scp ~/.ssh/id_rsa.pub username@hostname:~

登陸 ssh username@hostname

追加 cat id_rsa.pub >> .ssh/authorized_keys

各種手段,隨你開心,反正複製過去就成~多台遠程主機就多次複製~ 如果你本機登陸使用者和遠程登陸使用者一致的話,就可以直接 ssh hostname直接登陸,下面就不用看了。

3、解決本地登陸使用者與遠程登陸使用者不一致


好吧,這事很糾結,雖然不用輸入密碼了,但是還得 ssh username@hostname 來登陸,很不爽,你懂的。 其實解決也很簡單(but是同事告訴我的,老臉一紅),修改本地登陸使用者的 ~/.ssh/config 檔案,如果木有的話就自個兒建一個吧,內容如下:

Host hostname
user username
Host hostname2
user username2

這樣,本地和遠程登陸使用者名稱不一致也可以 ssh hostname 登陸了。


例子二


在A 上運行命令:

# ssh-keygen -t rsa (連續三次斷行符號,即在本地產生了公開金鑰和私密金鑰,不設定密碼)

# ssh root@192.168.1.10 "mkdir .ssh" (在1.10上建立.ssh目錄,需要輸入密碼)

# scp ~/.ssh/id_rsa.pub root@192.168.1.10:.ssh/id_rsa.pub (需要輸入密碼)

在B 上的命令:

# touch /root/.ssh/authorized_keys (如果已經存在這個檔案, 跳過這條)

# cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys ( 將id_rsa.pub 的內容追加到

authorized_keys 中)

回到A 機器:

# ssh root@192.168.1.10 (不要求輸入密碼, 登入成功)

在B機器上做RSYNC同步就不用在輸入密碼或者使用密碼檔案了。

rsync -avzu  --progress --delete root@192.168.1.9:/var/www/ /var/www (192.168.1.10用戶端執行)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.