アップデート1:

アップデート1:

root以外の特定のユーザーがCentOS7で特定のシステムサービスを開始/停止できるようにしたいと思います。しかし、これまで試してきたステップのどれも成功しませんでした。私が試したことは次のとおりです。

sudoers ファイルに次の詳細を追加しました。ここでtestudoはユーザーグループであり、複数のユーザーがグループに追加されました。

## Manage specific systemd services
Cmnd_Alias SYSTEMD = /bin/systemctl start httpd, /bin/systemctl stop httpd, /bin/systemctl restart httpd

## Allows nfam group to run init-system commands using the SYSTEMD command alias
%testsudo ALL=NOPASSWD: SYSTEMD

グループと追加されたユーザーの詳細:

# cat /etc/group | grep testsudo
testsudo:x:1009:userone,usertwo,userthree

ユーザー(testudoグループの一部)を使用してサービスを開始しようとすると、認証が必要であることを示すメッセージが表示されます。

[userone@msgdroid ~]$ systemctl start httpd
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
Authentication is required to manage system services or units.
Multiple identities can be used for authentication:
 1.  admin
 2.  priya
 3.  sekar
 4.  gokul
 5.  ravi
 6.  murali
Choose identity to authenticate as (1-6):

アップデート1:

私も使ったSudoコマンドの前にありますが動作しません。

$ sudo systemctl start httpd
[sudo] password for userone:
Sorry, user userone is not allowed to execute '/bin/systemctl start httpd' as root on webapp.

アップデート2:

  • 変更すると、サーバーはパスワードではなくSSHキーを介してのみアクセスできます。これが問題になる可能性がありますか?

ベストアンサー1

私はこれを試すことをお勧めします:

sudo systemctl start httpd

sudoersファイルを変更したら、ログアウトしてから再度ログインする必要があります。 (そうしないと使用できない場合がありますsudo。)

以下を編集して置き換えることもできます。

%testsudo ALL=NOPASSWD: SYSTEMD

そして

%testsudo ALL=(root) NOPASSWD: SYSTEMD

おすすめ記事