GNU/Linux >> Linux の 問題 >  >> Linux

暗号化されたホームディレクトリを持つUbuntuシステムへのauthorized_keysを使用したSSH?

sshd_config ファイルの次の行を変更してください:

AuthorizedKeysFile /etc/ssh/%u/authorized_keys

そして、authorized_keys ファイルを /etc/ssh/your-username/authorized_keys に移動します

この投稿では、これを解決する別の方法について説明します。


このソリューションは、この投稿に触発されました。 root アクセスをまったく必要としないため、/etc/ssh/sshd_config を変更するよりもはるかに優れています。

# Make your public key accessible
mkdir -m 700 /home/.ecryptfs/$USER/.ssh
echo $YOUR_PUBLIC_KEY > /home/.ecryptfs/$USER/.ssh/authorized_keys
ln -s /home/.ecryptfs/$USER/.ssh/authorized_keys ~/.ssh/authorized_keys
ecryptfs-umount-private
chmod 700 $HOME
mkdir -m 700 ~/.ssh
ln -s /home/.ecryptfs/$USER/.ssh/authorized_keys ~/.ssh/authorized_keys

# Make it auto-mount with first login.
# Note: it can cause problems with automated login.
echo /usr/bin/ecryptfs-mount-private > ~/.profile
echo cd >> ~/.profile
echo source .profile >> ~/.profile
ecryptfs-mount-private

私はこれをいじって時間を費やしましたが、その答えは、基本的にほとんど不可能だということです。それはです ssh 経由でパスワードなしの公開鍵認証ログインを設定できるため、ログイン するためにパスワードを入力する必要がありません 、しかし、ホーム ディレクトリはまだ暗号化されているため、どこにも行きません。

単純な事実として、暗号化されたホーム ディレクトリはパスワード*で暗号化されているため、復号化する唯一の方法はそのパスワードを使用することです.

また、理論的にはログイン時に ssh キーを使用してマウント パスフレーズを復号化できるはずだと考えている場合、プライベート キーがサーバーにまったく送信されないため、それは機能しません。

基本的に、暗号化が必要な場合は、パスワードを使用する必要があります。暗号化されたホーム ディレクトリは、同じ理由で指紋ログインと互換性がありません。

*単一のパスワードよりも複雑であることはわかっていますが、ここでは単純にしておきましょう。


Linux
  1. Ubuntu 20.04 LinuxシステムのSSHポートを変更する-最善の方法?

  2. Ssh – Sshを使用してファイルをローカルシステムにコピーし直しますか?

  3. 共有キー .ssh/authorized_keys と sudo を連携させるには?

  1. ssh-copy-id が機能しない

  2. SSH - ~/.ssh/config ファイルに -t コマンドを含める方法

  3. SSH:複数のサービス アカウントに 1 つの authorized_keys

  1. Ubuntu 20.04でSSHを有効にする-ステップバイステップガイド?

  2. Ssh – Ssh / scp / sftpユーザーをディレクトリに制限しますか?

  3. OpenSSHを使用してUbuntu/DebianにSSHサーバーをインストールする方法