sudo は、Linux システムでよく使用される非常に強力なコマンドで、一般ユーザーがスーパーユーザー (root) として特定のコマンドやプログラムを実行できるようになります。これにより、ユーザーが root アカウントに直接ログインできなくなり、システムのセキュリティと安定性が向上します。しかし、sudoコマンドにはたくさんの隠し機能や裏ワザがあることをご存知ですか?この記事では、sudo コマンドをより適切に使用してさまざまなタスクを完了できるように、Linux で sudo を設定するための 10 のヒントを紹介します。
sudo を使用すると、ユーザーはセキュリティ ポリシーで指定されたコマンドを root (または別のユーザー) として実行できます。/etc sudoers を読み取って解析し、呼び出し元のユーザーとその権限を見つけて、呼び出し元のユーザーにプロンプトを表示します。パスワード ( 通常、これはユーザーのパスワードですが、ターゲット ユーザーのパスワードにすることもできます (NOPASSWD を使用してパスワード検証をキャンセルすることもできます)。その後、 sudo は setuid() を呼び出してターゲット ユーザーに切り替えるサブプロセスを作成します次に、シェルを実行するか、上記のサブプロセスで引数として指定されたコマンドを実行します。
以下に、デフォルト エントリを使用して sudo コマンドの動作を変更する 10 個の /etc/sudoers ファイル構成を示します。
これは、sudo を使用して実行されるすべてのコマンドに使用されるパスであり、2 つの重要性があります:
システム管理者が sudo ユーザーが安全な PATH 環境変数を持っていることを信頼していない場合は、
を使用します。
「ルート パス」と「ユーザー パス」を分離するため、exclude_group で定義されたユーザーのみがこの設定の影響を受けません。
設定するには、次の行を追加します:
2. TTY ユーザー ログイン セッションで sudo を有効にします
cron や cgi-bin スクリプトなどのメソッド経由ではなく、実際の tty から sudo を呼び出せるようにするには、次の行を追加します。
リーリー3. pty
を使用して sudo コマンドを実行します。場合によっては、攻撃者が sudo を使用して悪意のあるプログラム (ウイルスやマルウェアなど) を実行する可能性があり、これにより、メイン プログラムの実行が完了した後でも、ユーザーのエンド デバイスに残るバックグラウンド プロセスが再びフォークされます。
これを回避するには、次のように、I/O ログがオンになっているかどうかに関係なく、use_pty パラメーターを使用して psuedo-pty から他のコマンドのみを実行するように sudo を設定できます。 リーリー
4. Sudo ログ ファイルを作成します
デフォルトでは、sudo ログは syslog(3) を経由します。ただし、カスタム ログ ファイルを指定するには、次のような logfile パラメータを使用します。 リーリーホスト名と 4 桁の年をカスタム ログ ファイルに記録するには、次のように log_host パラメータと log_year パラメータをそれぞれ使用します。 リーリー
5. Sudo コマンドの入出力を記録します
log_input および log_output パラメータを使用すると、sudo が疑似 tty でコマンドを実行し、すべてのユーザー入力と画面に送信されたすべての出力をログに記録できます。
デフォルトの I/O ログ ディレクトリは /var/log/sudo-io で、セッションのシリアル番号がある場合は、このディレクトリに保存されます。 iolog_dir パラメータを介してカスタム ディレクトリを指定できます。リーリー
%{seq} などの一部のエスケープ シーケンスをサポートします。これは、000001 などの単調増加する 36 進数のシーケンス番号に展開されます。2 桁ごとに新しいディレクトリが作成されます。 00/00/01、次の例に示すように:リーリー
6. Sudo ユーザーについて説明します
システムでのパスワードの使用法について sudo ユーザーに教えるには、以下に示すように、lecture パラメーターを使用します。
可能な値は 3 つあります:always – 常に 1 人のユーザーについて話します。
once – ユーザーが初めて sudo コマンドを実行するときにのみ使用されます (値が指定されていない場合に使用されます)
never – ユーザーを教育しないでください。
リーリー
さらに、lecture_file パラメータを使用してカスタム講義ファイルを設定し、対応するメッセージをファイルに入力することもできます。リーリー
7. 間違った sudo パスワードを入力したときにカスタム メッセージを表示します
ユーザーが間違ったパスワードを入力すると、コマンド ラインに特定のメッセージが表示されます。デフォルトのメッセージは「sorry, try again」ですが、次のように badpass_message パラメータを使用してメッセージを変更できます。 デフォルト badpass_message=”パスワードが間違っています。もう一度お試しください。ありがとうございます!”
8. sudo パスワード試行制限を増やす
パラメータ passwd_tries は、ユーザーがパスワードの入力を試行する回数を指定するために使用されます。デフォルト値は 3 です: リーリー
9. 間違ったパスワードを入力したときに Sudo にプロンプトを入力させます リーリー10. Sudo 構成の詳細についてはこちらをご覧ください
http://blog.csdn.net/wh211212/article/details/52923673
以上がLinux sudo コマンドの秘密: 生産性とセキュリティを向上させる 10 のヒントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。