Uzaktan kumandalı robotlarla otomasyon kuruyorum. Bu botların sadece belirli komutları çalıştırmak için tam olarak izinleri olması şarttır ( sudoerskeyfi komutlara izin vermek için izinleri fazla açamıyorum ).
İyi çalışıyor, ihtiyacım olan birkaç komutu ayarlayabilirim ve şifre sınırlamasını aşabilirim (çünkü sudogirişte şifreleri girme imkânı yoktur ) dosyasındaki NOPASSWDyönergeyle sudoers. Ama bir problem var. Bazı senaryolar, özellikle de bazılarında yazılmışlar ... er, PHP çerçeveleri ... projenin kökü olarak kabul edilen belli bir dizinden çalıştırılmayı bekler.
Bu dizin başka bir kullanıcıya www-dataveya apacheçoğu zaman aittir . Tamam, botu betiği bu kullanıcı olarak çalıştırması için yetkilendirebilirim, ancak cdetkileşimli olmayan bir oturumda doğru yolu bulamıyorum, çünkü dosyaya cdkomut olarak dahil etmek mümkün değil sudoers.
Normalde benim yapacağım şey şunun gibi bir şey cd /var/www/path/to/app && php whatever.php --some argsama sudoersdosyaya bu şablonu kurmanın bir yolunu bulamıyorum , mümkün görünmüyor.
Bunu aşmanın bir yolunu biliyor musun?