rootユーザーにパスワードのないFedora VPSがあります。 SSHキーを使用してログインします。
ネットワーク管理のために、このサーバーに権限の低い別のアカウントがあります。これでパスワードも削除しました。
たとえば、サーバーにパスワードを持つユーザーがいない場合、SSHキーを紛失した場合はどうなりますか?ログインできないため、サーバーを永久に使用できませんか?
sudo
また、rootユーザーと呼び出しユーザーの両方にパスワードがない場合、プログラムはどのように実行されますか?試してみましたが、パスワードを尋ねませんでした。user ALL=(ALL) ALL
sudoersファイルに対応する行があり、機能しました(変更する必要がありますか?)。
ベストアンサー1
ファイルの2番目のフィールドを削除すると、/etc/passwd
ユーザーは何の問題もなくログインできます。ログインを許可するにはログインしてみてください。それで、このようなことはあなたがしたいことではないかもしれません。
root:$1$iM/2lekk$rXUAcF5fY8ddLL.B1bkH63:12242:0:99999:7:::
/etc/passwd はじめに
- ユーザー名:ユーザーがログインするときに使用されます。長さは1〜32文字の間でなければなりません。
- パスワード:x文字は、暗号化されたパスワードが/ etc / shadowファイルに保存されていることを示します。
- ユーザーID(UID):各ユーザーにはユーザーID(UID)を割り当てる必要があります。 UID 0(ゼロ)はルート用に予約されており、UID 1-99は他の事前定義されたアカウント用に予約されています。さらに、UID 100-999は管理およびシステムアカウント/グループ用にシステムで予約されています。
- グループID(GID):デフォルトのグループID(/ etc / groupファイルに保存)
- ユーザーID情報:コメントフィールド。これにより、ユーザーの名前、電話番号などのユーザーに関する追加情報を追加できます。このフィールドは指コマンドで使用されます。
- ホームディレクトリ:ユーザーがログインしているディレクトリの絶対パス。ディレクトリが存在しない場合、ユーザーディレクトリは/になります。
- コマンド/シェル: コマンドまたはシェルの絶対パス (/bin/bash)。通常、これはシェルです。シェルである必要はありません。
次から借りる/etc/passwd ファイル形式の理解
パスワードログインを無効にする
フィールドが空のファイルとファイルにx(:x:
)と:!:
aが含まれているものとの間にはわずかな違いがあります/etc/shadow
。これは、アカウントが意図的にログインを許可しないように設定されていることを意味します。これは、お客様の要件に適している可能性があります。
/etc/shadow
root:!:15669:0:99999:7:::
すべてのアカウントに対して同じことができます。公開/秘密鍵を使用してログインを許可する場合は、ssh
おそらくこの方法をお勧めします。
その他の問題
たとえば、サーバーにパスワードを持つユーザーがいない場合、SSHキーを紛失した場合はどうなりますか?ログインできないため、サーバーを永久に使用できませんか?
サーバーに物理的にアクセスできる限り、いつでもシステムにアクセスできます。再起動が必要です。 VPSでは多少難しいかもしれませんが、可能です。
通常、システムをシングルユーザーモードで起動すると、/etc/passwd
必要に応じてファイルを編集できます。/etc/shadow
また、rootユーザーと呼び出しユーザーの両方にパスワードがない場合、sudoプログラムはどのように実行されますか?試してみましたが、パスワードを求められませんでした。 sudoersファイルにそのユーザーのALL =(ALL)ALL行があったために機能しました(変更する必要がありますか?)。
はい、sudo
パスワードなしでは使用するのが難しいです。処理時に他のソースを使用する方法がありますsudo
。次のタイトルのU&L Q&Aをご覧ください。sudoパスワードをログインパスワードとは異なる設定にしてください。。