ssh自動登入

2021-09-12 05:59:47 字數 1636 閱讀 4489

1.進入 目錄 (~/.ssh/) 

cd ~/.ssh/

2.生成 key

ssh-keygen -t rsa 

這是會在目錄下產生  id_rsa  id_rsa.pub

這兩個檔案

3. 將 密碼檔案 : id_rsa.pub 上傳到 ssh 的伺服器 上

ssh-copy-id -i ~/.ssh/id_rsa.pub 使用者名稱@ip位址

eg:ssh-copy-id -i ~/.ssh/id_rsa.pub root

@172.16.236.18

如果不成功  ,

1.確認  ssh到的機器上  ~/.ssh/  目錄下的檔案  authorized_keys  ,檢視該檔案是否有 自己剛剛新增的密文,如果沒有再新增一遍,如果有 ,還不能登入,可能是自己生成密文是 出錯了!

2.刪除   ~/.ssh/   與密文相關的檔案,重新生成

如果登陸還是不成功:

因為linux 的許可權認證很 嚴格 

1.你可以讓  linux  不檢查 你的 檔案許可權 當然這樣子是很危險的(非常不建議,但是在配置hadoop 的時時候  hdfs對這個目錄的訪問許可權要求也非常嚴格,這時如果你修改了,還是比較起作用的 嘿嘿):

修改: vi /etc/ssh/sshd_config

# strictmodes yes  修改為  strictmodes  no   

這時 你可以重新拷貝 秘鑰到 伺服器,登陸  如果還不成功 那就得看下 你的 selinux  引數了 :

關於 selinux  稍後我查完資料再補上  這個東東到底是幹嘛的。先把這個弄好再說,

vi /etc/selinux/config

將  selinux  設定為: selinux=disabled

然後執行:

setenforce 0

在 ssh 鏈結伺服器試試 。這時  應該是可以了,

如果報出 如下錯誤:

libin@libin-thinkpad-t420:~$ ssh [email protected]

agent admitted failure to sign using the key.

[email protected]'s password: 

這個時候說明 客戶端和服務端 使用的key 可能不一致 的問題什麼的(這個稍後 研究下 ssh-add 再做解答),

查了資料之後  需要 執行 以下命令 

需要在客戶端執行: ssh-add

libin@libin-thinkpad-t420:~$ ssh-add 

identity added: /home/libin/.ssh/id_rsa (/home/libin/.ssh/id_rsa)

libin@libin-thinkpad-t420:~$ ssh [email protected]

last login: mon aug 12 15:32:55 2013 from 172.16.17.252

[root@localhost ~]# 

o(∩_∩)o哈哈~ 成功 ;

待解決問題:

selinux   :linux 許可權系統,至今許可權測試最全面的

ssh-add 

setenforce 0

ssh自動(信任)登入

a 192.168.109.180 b 192.168.109.181 系統均為suse在 a上的命令 ssh keygen t rsa 連續三次回車 即在本地生成了公鑰和私鑰 不設定密碼 ssh root 192.168.109.181 mkdir ssh chmod 0700 ssh 需要輸入密...

ssh自動登入指令碼

使用vpn,每次都要在terminal上重複輸入命令 ssh d port user host 出來密碼提示符後,把複雜的密碼拷貝下來,然後貼上到terminal,敲回車.終於忍受不了這樣的重複了,於是用shell寫乙個可以自動登入的指令碼 usr bin expect f set port por...

linux expect詳解 ssh自動登入

shell指令碼實現ssh自動登入遠端伺服器示例 usr bin expect spawn ssh root 192.168.22.194expect password send 123 r expect interact expect是乙個用來處理互動的命令。借助expect,我們可以將互動過程寫...