Centos
為什麼 ssh-copy-id 在這種情況下需要詳細的 LogLevel 才能工作?
我正在嘗試使用 WSL 在 CentOS 7.3 來賓上設置公鑰身份驗證。
嘗試使用 複製公鑰
ssh-copy-id
時,它被拒絕,說它已經存在於 VM 上。情況並非如此,因為它是全新安裝,.ssh
而且/root
.搜尋了一下,錯誤的文件權限似乎是一個可能的錯誤,所以我執行了這些命令:
客人
chmod go-w ~
主持人
chmod go-w ~ chmod 0700 ~/.ssh chmod 0600 ~/.ssh/config chmod 0600 ~/.ssh/id_rsa chmod 0644 ~/.ssh/id_rsa.pub chmod 0600 ~/.ssh/known_hosts
在伺服器
sshd_config
上啟用了公鑰身份驗證。結果ssh-copy-id
是一樣的。但是,當我執行
ssh-copy-id -o "LogLevel VERBOSE" root@ip
它時,它提示我輸入密碼,然後成功複製了密鑰。之後我可以使用ssh root@ip
, 並使用我的密鑰成功進行身份驗證。
ssh
使用密碼身份驗證一直有效。為什麼它不能正常工作
ssh-copy-id
,但它確實使用ssh-copy-id -o "LogLevel VERBOSE"
?我錯過了什麼?
Verbose
不需要。INFO
日誌級別就足夠了,因為它已經在上游儲存庫中修復了。送出消息幾乎解釋了它:
LogLevel 設置為“None”,我們不會得到我們正在尋找的 Permission Denied。
這在預設配置中不是問題(因為預設值
INFO
根據手冊頁)。僅當您LogLevel=QUIET
在某些配置文件中設置 時才會出現問題(這幾乎不是您想要的,除非您確定連接會成功或者您不在乎它是否成功)。