Linuxからユーザーサブシステムを完全に削除できますか?
人々がログインするのを防ぐことについて話すものではありません。私はログインできるシステム部分を削除することについて話しています。
その結果、オペレーティングシステムはすでに実行されているアプリケーション(Webサーバーなど)を除いてアクセスできないため、起動するとオペレーティングシステムにアクセスできなくなります。
目的は、ユーザーレベルのコマンドラインシステムが存在しないため、ユーザーレベルのコマンドラインアクセス権を取得する必要があるメカニズムを介してシステムをハッキングできないようにすることです。
答え1
興味深い違いは次のとおりです。
人々がログインするのを防ぐことについて話すものではありません。私はログインできるシステム部分を削除することについて話しています。
意味論的な違いに加えて、実際に何があるのかはよくわかりません。私がそれを削除した場合、/bin/login
ログインが不可能になったため(物理端末から)ログインできません。しかし、完全なログインサブシステムを削除することはありません。
私のアドバイスは、予期しない依存関係がある可能性があるため、できるだけ完全に保つようにすることです。 Webサーバーが別のアカウントで実行されるようにユーザーを残してくださいroot
。 PAMサブシステムを変更して、対話型および非対話型ログインを防止します。sudo
同様にタイプアクセスをブロックすることを選択できます。
「拒否」のPAM定義の準備
Create には
/etc/pam.d/denied
次の 2 行が含まれます。auth requisite pam_deny.so session requisite pam_deny.so
端末/画面でログインを防止
/etc/pam.d/login
コピーと交換/etc/pam.d/denied
ネットワークログインの防止
ssh
/etc/pam.d/sshd
コピーと交換/etc/pam.d/denied
編集
/etc/ssh/sshd_config
して設定されていることを確認してくださいUsePam yes
。(オプション)無効にしてみてください。
sudo
/etc/pam.d/sudo
コピーと交換/etc/pam.d/denied
実際にすべてのログインを拒否するのではなく、物理端末/画面でルートログインを許可し、他のすべてのログインを拒否します。これはPAMを介して行うこともできますが、質問の特定の範囲を超えています。
答え2
まあ、理論的にはコマンドの名前を変更または削除できます/bin/login
。
これがそれを防ぐかどうかはわかりませんsingle user mode
。あなたも予防したいかどうかはわかりませんsingle user mode
。
すべてのユーザーがログインするのを防ぐために興味深い作業を行うこともできますが、pam.d
これはログインのアイデアを破るのではなく、ユーザーがログインするのを防ぐだけです。
家に着いたら、覚えたら仮想マシンを起動して試してみましょう。ファイルを削除することも可能です/etc/shadow
が、他のすべてのファイルも削除できます。
注:あなた欲しくないユーザーの考えを完全に諦めたいです。ログイン能力がないというのが悪い考えだからではなく(しかしこれがこのスレッドのポイントではない)権限のためにユーザーが存在しなければならないからです。ユーザーがいない場合、rwx
サービスを実行するにはシステム上のすべてのファイルに権限を付与する必要があり、これにより実行できない問題が発生します。必要ハッキングにログインすると、人々はあなたが望むすべてのものにアクセスできます。