本地機器一台,伺服器六臺,配置ssh登入
配置完成後:
本地可以登入六臺主機,
主伺服器(cdh01)可以免密登入其餘五颱主機,其餘五颱主機不能免密登入主伺服器。
可以使用ssh cdh01, ssh cdh02作為主機名代替ip位址登入指定機器
具體要進行如下配置:
六臺主機各自一對ssh金鑰對(root使用者下)。用於登入其它主機。
主伺服器的/.ssh/authorized_keys(root使用者)儲存本地主機的公鑰。其餘五颱主機的/.ssh/authorized_keys儲存主伺服器和本地伺服器的ssh公鑰。
這個檔案中儲存的公鑰,允許持有對應私鑰的伺服器免密登入本主機。該檔案的許可權必須是600,如果許可權放寬,就不具有免密登入效果。
每台主機的~/.ssh/known_hosts 都儲存了其餘五颱主機的金鑰指紋。(可選)
主機a登入主機b,第一次登入的時候,a會詢問b的指紋是否正確,選擇是則繼續登入並把b的指紋儲存在a自身的~/.ssh/known_hosts檔案中。
為了省去第一次登入的詢問過程,使用ssh工具提前新增進來。
在五颱機器的~/.ssh/config中新增如下配置
host cdh01 cdhm
hostname 172.16.23.11
user root
host cdh02
hostname 172.16.23.12
user root
host cdh03
hostname 172.16.23.13
user root
host cdh04
hostname 172.16.23.14
user root
host cdh05
hostname 172.16.23.15
user root
host cdh06
hostname 172.16.23.16
user root
# 1. 配置ssh
# 1.1 為六台主機生成金鑰對
for i in cdh;do
echo 為主機 $i 生成 ssh 金鑰
ssh-keygen -b 2048 -f $i -n "" -q -c "(root@$i)"
> /dev/null
done
# 1.2 收集本地ssh公鑰和主節點伺服器的公鑰
cat ~/.ssh/id_rsa.pub > keys.pub
cat cdh01.pub >> keys.pub
# 1.3 把公鑰上傳到六臺伺服器上的 ~/.ssh/authorized_keys 檔案
for i in 172.16.23.;do
echo 上傳公鑰到 $i
cat keys.pub |
ssh root@$i
'mkdir ~/.ssh -p; cd .ssh; cat - > authorized_keys; chmod 600 authorized_keys'
done
# 1.4 配置本地ssh
cp assests/cdh.conf ~/.ssh/
echo include cdh.conf >> ~/.ssh/config
# 1.5 蒐集六臺主機的指紋, 安裝到六台機器上以及本機上
ssh-keyscan -t ecdsa,ed25519,rsa,dsa 172.16.23.
> known_hosts
# 1.5.1 先安裝到本地機器
cat known_hosts >> ~/.ssh/known_hosts
# 現在本地可以登入六臺機器,測試
for i in cdh;do
ssh$i
"echo 登入 $i 成功"
;done
# 1.5.2 再把 known_hosts 安裝到六台伺服器上
for i in cdh;do
echo
$icat known_hosts |
ssh$i
'cat - >> ~/.ssh/known_hosts'
done
# 1.6 把私鑰分發給各自的伺服器
# 注:scp 命令會覆蓋舊的私鑰檔案,如果伺服器上已經有私鑰,就不要複製
for i in cdh;do
scp$i
"$i:~/.ssh/id_rsa"
scp$i.pub "$i:~/.ssh/id_rsa.pub"
ssh$i
"chmod 600 ~/.ssh/id_rsa"
done
# 1.7 完成,收工,清理現場
rm cdh* known_hosts keys.pub
配置ssh遠端登入
1 在本地執行以下命令生成金鑰對 ssh keygen b 4096 t rsa說明 2 將公鑰對拷貝到遠端機器上 方法1 在本機執行 ssh copy id usr hostname方法2 在目錄機器的目標使用者下建立.ssh目錄 在目標機的.ssh目錄下建立authorized keys檔案 將...
ssh 免登入配置
從 a 主機免登入到 b 主機!使用ssh keygen命令生成金鑰檔案 當然,在 windows 環境中,也可以通過 puttygen.exe 這樣的工具來生成金鑰檔案。使用ssh copy id命令將公鑰寫入主機 b 192.168.10.10 的 ssh authorized keys檔案中,...
配置SSH密碼登入
在客戶端生成公鑰 1 ssh keygen t rsa 生成的公鑰預設位置在 ssh 目錄 2 cat id rsa.pub root ssh authorized keys 追加到檔案中 3 chmod 600 root ssh authorized keys 為了安全把檔案修改許可權 修改伺服器...