ユーザーが2日間のみコマンドを実行できるようにする方法はありますか


13

特定の時間にsudoコマンドの許可を与える方法は?sudoersファイルでのみ2日間特定のコマンドを実行する権限を与える方法はありますか?

回答:


18

sudoersファイルは時間ベースの制限をサポートしていませんが、簡単な方法があります。/etc/sudoers.d/(でsudo visudo -f /etc/sudoers.d/yourfile)に変更を加えたファイルを作成します。

ファイルに追加します(例:)file.sh次を

mv /etc/sudoers.d/yourfile /etc/sudoers.d/.yourfile

そして、これはあなたの変更を無効にします:

 sudo at -f file.sh 2pm + 2 days

例:

at -f file.sh 2pm + 2 days
warning: commands will be executed using /bin/sh
job 4 at Thu Oct 15 14:00:00 2015

この場合、コマンドを発行してから2日後の午後2時にファイルを移動します。at マニュアルは、いくつかのオプションがあります(次のような時間、日、週、月、年、キーワードを使用するか、加算/減算periodesを追加することができます)。あなたがそれを理解していることを確認するためのオプションを備えたいくつかのテストを行います(考慮すべきこと:atその日の午後2時前か午後2時以降に開始するかどうかは重要です)。

atまた、再起動後も存続するため、この種のことを行うのに適したツールです。そして、アクセスを切り替えることができます...

sudo mv /etc/sudoers.d/.yourfile /etc/sudoers.d/yourfile | at 2pm + 2 days
sudo mv /etc/sudoers.d/yourfile /etc/sudoers.d/.yourfile | at 2pm + 4 days
sudo mv /etc/sudoers.d/.yourfile /etc/sudoers.d/yourfile | at 2pm + 6 days
sudo mv /etc/sudoers.d/yourfile /etc/sudoers.d/.yourfile | at 2pm + 8 days

そして、そのユーザーを夢中にさせます(wtfが今私はこれを行うことができます)。

のREADME /etc/sudoers/

# As of Debian version 1.7.2p1-1, the default /etc/sudoers file created on
# installation of the package now includes the directive:
# 
#   #includedir /etc/sudoers.d
# 
# This will cause sudo to read and parse any files in the /etc/sudoers.d 
# directory that do not end in '~' or contain a '.' character.
# 
# Note that there must be at least one file in the sudoers.d directory (this
# one will do), and all files in this directory should be mode 0440.
# 
# Note also, that because sudoers contents can vary widely, no attempt is 
# made to add this directive to existing sudoers files on upgrade.  Feel free
# to add the above directive to the end of your /etc/sudoers file to enable 
# this functionality for existing installations if you wish!
#
# Finally, please note that using the visudo command is the recommended way
# to update sudoers content, since it protects against many failure modes.
# See the man page for visudo for more information.

これを正しく読んだ場合、「。」が付いたファイルは実行されません。名前のどこでも。そこで、最初のmvコマンドで「。」を配置しました。前も見えないようにします。正しく仮定された場合、「。」を配置できます。どこでも。「〜」に注意してください。これは、gEditのようなエディターによって「バックアップ」機能として使用されます。


atデフォルトではインストールされません。インストールする

sudo apt-get install at

ありがとうohterユーザーが行った変更は...消えてしまいます
アッバスKapasi

2
この先生はどうですか?ああ、私もあなたの複数のユーザーに、自分自身のファイル名でsudoers.dを使用することを提案するかもしれません。sudoersを編集するよりもずっと良いようです。
リンツウィンド

@AbbasKapasiは/etc/sudoers.d、他のユーザーが使用しない新しいファイルを作成します。
ムル

答え全体で使用されたコマンドはそうではmvなかったと思うcp
クトゥルフ

3
cpはどこにありますか?無邪気に
口histを
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.