何らかの理由でシステム管理コマンドを利用するには、二重要素アカウントを使用する必要があります。このアカウントは通常のログインアカウントとは異なります。たとえば、標準ログインが「alice」の場合、2段階のアカウントは「alice2」になります。
sudo
次のようなファイルがあります(許可されたユーザーごとに1つずつ、/ etc / sudoers.dにあります)。
Defaults:alice runaspw,runas_default=alice2
alice ALL=(alice2) /bin/bash
これは、「alice2」のパスワード(2段階のパスワード)を入力するように求めるメッセージが「alice」に表示され、「alice」が「alice2」アカウントに変更されるためです。そこには、alice2がsudo
パスワードなしですべてのコマンドを使用できるようにする別のファイルがあります。sudo
したがって、二重認証に関する限り、すべてが大丈夫です。ただし、この2段階の方法(特定のコンピュータで特定のサービスを再起動するなど)に限定されないいくつかのコマンドがあります。私の考えには私にもこのような職業があるようだ。
Cmnd_Alias SRVCHTTPD = /usr/bin/systemctl restart httpd
Defaults!SRVCHTTPD !runaspw,runas_default=root
ここでは、「alice」というユーザーに「alice」のパスワードを入力するように求められ、サービスを再起動できます。
今私の質問が出てきます。ユーザーがsudo -l
実行できるコマンドを確認すると、デフォルトのアカウント(alice)の代わりに2段階のアカウント(alice2)を入力するように求められます。コマンドエイリアスを追加してみました(sudo -lに関するアドバイスに従ってください。)、本質的に上記の行をコピーします。
Cmnd_Alias SUDOLIST = /usr/bin/sudo -l
Defaults!SUDOLIST !runaspw,runas_default=root
ただし、このアプローチは機能せず、ユーザーには2段階のアカウントパスワードを入力するように求められます。
私がここで間違っていることについての提案を送ってくれてありがとう。