パスワードなしでSSHと公開キーを使用してユーザーを追加する


33

ログインにパスワードを使用せず、代わりにsshに公開鍵を使用するユーザーをRed Hat Linuxに追加したい。これはコマンドラインにあります。


useradd --password-disableおよびadduser --password disable。私は両方のオプションを調べましたが、パスワードの無効化はどちらのオプションとしても表示されません。
user119776

一般的なsshキーログインの設定方法を知っていますか?アカウントをロックする必要はないと思うので、パスワードが有効になっていることを意味します。誰も実際には知らない長いパスワードにすることができます。
ミカヨーダー

キーがあり、ユーザーのディレクトリの下にフォルダを作成し、そこにパブリック部分を貼り付ける必要があることを知っています。私はその方法を試すことができますが、ユーザーのパスワードも無効にする必要があると考えました。
user119776

ユーザーを追加する方法を示す別の投稿をするのではなく、Lambertに同意します。このタスクで問題が発生している部分に特に集中する必要があります。ユーザーを追加する方法さえわからない場合は、小さく始めて作業を進めてください。ユーザーを作成するだけで、パスワードを設定せず、キーを/home/username/.ssh/authorized_keysに入れるだけでよいと思います。
バージガー

回答:


37

ユーザーの作成から始めます。

useradd -m -d /home/username -s /bin/bash username

使用するクライアントからキーペアを作成しますssh

ssh-keygen -t dsa

公開鍵/home/username/.ssh/id_dsa.pubをRedHatホストにコピーします/home/username/.ssh/authorized_keys

RedHatホスト上のファイルに正しいアクセス許可を設定します。

chown -R username:username /home/username/.ssh
chmod 700 /home/username/.ssh
chmod 600 /home/username/.ssh/authorized_keys

RedHatホストで公開キー認証が有効になっていることを確認します。

grep  PubkeyAuthentication /etc/ssh/sshd_config
#should output:
PubkeyAuthentication yes

そうでない場合は、そのディレクティブをyesに変更sshdし、RedHatホストでサービスを再起動します。

クライアントからssh接続を開始します。

ssh username@redhathost

で自動的にキーid_dsaを探す必要があります~/.ssh/。次を使用してIDファイルを指定することもできます。

ssh -i ~/.ssh/id_dsa username@redhathost

3
実際、パスワードロックを忘れていません。設定しなかったため、新しく作成されたユーザーのパスワードは自動的にロックされます。
ランバート

3
代わりに、DSAの使用RSA
SGの

あなたはそれがあなた自身の鍵を交換するかもしれない、「ssh-keygen -t dsa」をコマンドは、現在のユーザーのためのキーを作成します実現
yarunすることができます

15

Ubuntuでは、次の方法でユーザーを追加できます。

adduser --disabled-password <username>

次に.ssh/authorized_keys、公開鍵を使用してホームディレクトリにファイルを作成します。


7

次を使用できます。

usermod --lock <username>

manページから:

ユーザーのパスワードをロックします。これにより、「!」暗号化されたパスワードの前で、事実上パスワードを無効にします。このオプションを-pまたは-Uと一緒に使用することはできません。注:アカウントをロックする場合(パスワードによるアクセスだけでなく)、EXPIRE_DATEも1に設定する必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.