私のフォローアップとしてより早い問題は、次のようにローカルユーザーアカウントを作成することにしました。
adduser --system --no-create-home USERNAME
これで、ローカルユーザーが利用できることを願っていますssh
。私が理解したところによると、そのssh
仕組みは次のとおりです。
2台のコンピュータがあるとしましょう。αそしてベータ)。
- ~からα機械:
ssh user@beta
- アルパス公開鍵は次の場所
~/.ssh/authorized_keys
に表示されます。ベータマシン。 - アルパス秘密鍵が次に
/~/.ssh
表示されます。αマシン。
今実装する予定です。家がないユーザーのため。それでは私がadduser
入るとしましょう。ベータユーザーが居ないコンピュータにSSHで接続できますか?ベータ~からα?
答え1
~/.ssh/
sshd
着信ユーザーの公開鍵を見つけるためのデフォルトの場所です。のディレクティブをsshd
変更して、検索する場所とファイルを整理できます。私の現在の外観は次のとおりです。AuthorizedKeysFile
/etc/ssh/sshd_config
AuthorizedKeysFile %h/.ssh/authorized_keys
マニュアルsshd_config
ページに詳細が記載されています。
AuthorizedKeysFile
Specifies the file that contains the public keys that can be used for user authentication. The format is
described in the AUTHORIZED_KEYS FILE FORMAT section of sshd(8). AuthorizedKeysFile may contain tokens of
the form %T which are substituted during connection setup. The following tokens are defined: %% is
replaced by a literal '%', %h is replaced by the home directory of the user being authenticated, and %u is
replaced by the username of that user. After expansion, AuthorizedKeysFile is taken to be an absolute
path or one relative to the user's home directory. Multiple files may be listed, separated by whitespace.
The default is “.ssh/authorized_keys .ssh/authorized_keys2”.
sshd
ユーザーファイルに対する権限はauthorized_key
非常に特別です。このオプションを設定してログインに問題が発生した場合は、ログに慎重に注意することをお勧めします。
答え2
AuthorizedKeysFile
あなたは作ることができますホームレスユーザーをグループ化し、特定の場所を設定します。
数行を追加するだけです/etc/ssh/sshd_config/
。
Match group homeless
AuthorizedKeysFile /etc/ssh/authorized-keys/%u
(%u
SSH構成トークン実行時にローカルユーザー名に展開されます)
次に、ユーザーキーを作成します。
sudo -u <username> bash -c "ssh-keygen -t ecdsa -b 256 -f /etc/ssh/authorized-keys/<username> -q -N ''"