全新安裝 CentOS 6 中 /home/user/.ssh 目錄的 chown、chmod 和錯誤設置
我昨晚剛剛完成了 CentOS 6 的安裝(來自 georgia tech repository 的 netinstall),當我嘗試從 CentOS 機器(在我的家庭網路後面)通過 SSH 連接到我的一個面向公眾的 Web 伺服器時遇到了一些奇怪的 SSH 問題。
在新機器上執行 ssh-keygen(我們稱之為伺服器 A)並將公鑰複製到伺服器 B 後,我嘗試從 A SSH 到 B。我遇到了一些權限問題,所以做了幾個 chmod(嘗試將 id_rsa.pub 從 644 更改為 0600,然後將 .ssh 目錄更改為 0600)。
作為背景資訊,我昨晚能夠成功地 ssh(使用 rsync -e “ssh -i…")從伺服器 A 到伺服器 B。在 7 小時前和我開始遇到問題之間沒有進行任何更改早晨。
這是目前的情況:
伺服器 A 上的使用者名是 dwhite。當我以 root 身份執行 .ssh 目錄的 ls -la 時,我看到:drw——-。2 dwhite dwhite 4096 Nov 5 05:38 .ssh
但是,當我嘗試將 ls -la 作為 dwhite 執行時,我得到的權限被拒絕。所以我 sudo 進入 root 並將 .ssh 目錄的 chmod 返回到 644。我回到 dwhite 的帳戶,並執行 ls -la:
[dwhite@local ~]$ ls -la .ssh/ ls: cannot access /home/dwhite/.ssh/known_hosts: Permission denied ls: cannot access /home/dwhite/.ssh/..: Permission denied ls: cannot access /home/dwhite/.ssh/.: Permission denied ls: cannot access /home/dwhite/.ssh/id_rsa: Permission denied ls: cannot access /home/dwhite/.ssh/id_rsa.pub: Permission denied total 0 d????????? ? ? ? ? ? . d????????? ? ? ? ? ? .. -????????? ? ? ? ? ? id_rsa -????????? ? ? ? ? ? id_rsa.pub -????????? ? ? ? ? ? known_hosts
所以我 sudo’d 回到 root 並執行: chown -R dwhite.dwhite /home/dwhite/.ssh/
以 dwhite 身份返回,執行 ls -la:完全相同的事情
世界上到底發生了什麼?我錯過了什麼?由於這是一個全新的安裝,我不得不相信這是使用者錯誤,但我絕對被難住了。
然後將 .ssh 目錄修改為 0600
當我以 root 身份執行 .ssh 目錄的 ls -la 時,我看到:
drw-------. 2 dwhite dwhite 4096 Nov 5 05:38 .ssh
該
~/.ssh
目錄應具有 700 權限。ls
由於缺少執行權限,您會在輸出中看到問題遮罩。所以,試試這個:# chmod u+x /home/dwhite/.ssh