當每回第一次連線到一個新的ip/host時總會產生以下的訊息:
user@host:$ ssh 192.168.1.1
The authenticity of host '192.168.1.1 (192.168.1.1)' can't be established.
ECDSA key fingerprint is c7:16:8b:55:c8:39:24:5a:db:cd:e9:79:8c:24:59:39.
Are you sure you want to continue connecting (yes/no)?
The authenticity of host '192.168.1.1 (192.168.1.1)' can't be established.
ECDSA key fingerprint is c7:16:8b:55:c8:39:24:5a:db:cd:e9:79:8c:24:59:39.
Are you sure you want to continue connecting (yes/no)?
此時就又必須在輸入一次" yes"才會完成連線
那假若不想輸入yes就直接連線進去可用以下方法
[Method]
在 ~/.ssh/ 中新創一份檔案叫 config
然後在config中加入
Host 192.168.1.1
StrictHostKeyChecking no
UserKnownHostsFile=/dev/null儲存.
而之後若是第一次作ssh連線到192.168.1.1的host時,
就不會在出現以上的訊息, 也不用在輸入yes就可直接進入連線
[Note]
適用情況之一:
假設像是hadoop這種大規模數量的node建置時,
master必須先把authorized_keys scp給每個slave, 但手動每次的scp太花費時間,
當寫成shell script時又會卡在上述問題的詢問上,
此時就可先在master的~/.ssh/config 上利用Method加入所有slave
沒有留言:
張貼留言