特定のディレクトリに対してパスワードのないsudoを許可できますか?

特定のディレクトリに対してパスワードのないsudoを許可できますか?

デフォルトでは、私はアプリケーションサーバーを持っており、アプリケーションの所有者/管理者がアプリケーションに関連するディレクトリからsudoコマンドを実行できるようにしたいと思います。たとえば、アプリケーションディレクトリが/opt/my-applicationの場合、ユーザーは「sudo vim /opt/my-application/some-file」を実行する必要はなく、代わりに「sudo vim /var/some-file」を実行します。

正しいアプローチは、アプリケーションディレクトリでよく使用されるコマンドを決定することです。しかし、これを行うと、システムはまだあまりにも多くの権限を与えるようになります。

編集9/11:答えのいくつかを見ると、私の質問が明確になると思いました。この時点で、ユーザーはsudoアクセス権を持っています。私は彼らが必要なタスクを実行するためにsudoアクセス権を持つことに反対しません。定期的に変更する特定のディレクトリで作業しやすくするために実装できる可能性のあるソリューションがあると思います。これらの特定のディレクトリで実行されるすべてのコマンドに対してパスワードのないsudoを有効にできたらと思います。これまでの答えは、アプリケーションを管理できるsystemctlなど、いくつかの必要なシステムコマンドに対してパスワードのないsudoを実装するのに役立ちました。

ベストアンサー1

sudoersファイルから:

user ALL=(root) NOPASSWD: /usr/bin/vim /opt/my-application/some-file

この行では、特定のコマンドのみを実行できます。

しかし、ディレクトリ(chmodまたはsetfacl)の権限は変更できませんか?それともデフォルトのumask値を変更しますか?

おすすめ記事