~/.ssh/authorized_keys
リモートコンピュータにUbuntu LTS 14.04サーバーバージョンをインストールし、リモートコンピュータにローカル公開鍵を追加しました。リモートコンピュータで権限を~/.ssh
700と600に設定した後でも、リモート~/.ssh/*
コンピュータにログインするにはまだパスワードを使用する必要があることがわかりました。ただし、一度ログインすると、公開鍵を使用して他のSSHセッションを認証できます。
私のホームディレクトリが暗号化されました。
この問題をどのように解決できますか?
答え1
コメントに投稿したリンクの回避策は次のとおりです。これはから来ていますここ、これを参照するスーパーユーザーの投稿。
キーを保存する.ssh
フォルダの作成/home
sudo mkdir /home/.ssh
既存のAuthorized_keysファイルを.ssh
ユーザー名でディレクトリに移動します。
sudo mv ~/.ssh/authorized_keys /home/.ssh/username
.ssh
ユーザーディレクトリにauthorized_keysファイルへのシンボリックリンクを作成します。
ln -s /home/.ssh/username ~/.ssh/authorized_keys
ファイルを更新してファイルsshd_config
の新しいパスを設定します。authorized_keys
sudo vim /etc/ssh/sshd_config
行をAuthorizedKeysFile
次に変更します。
AuthorizedKeysFile /home/.ssh/%u
コンピュータを再起動してください
sudo shutdown -r now
ecryptfs
サーバーにログインすると、暗号化されていない最小限のホームディレクトリが表示されます。ホームディレクトリをマウントするには、その中に.profileファイルを作成して編集する必要があります。
sudo vim ~/.profile
次の行を追加してください。
ecryptfs-mount-private
cd /home/username
ログアウト/再起動してもう一度戻ってください。 SSHキー認証後にパスワードを入力するように求められ、復号化されたホームディレクトリが表示されます。
これで、ホームディレクトリの復号化に関係なく、毎回SSHキーを使用してログインできます。