Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Menjalankan Skrip Shell Memerlukan SUDO daripada PHP Tanpa Prompt Kata Laluan?

Bagaimanakah Saya Boleh Menjalankan Skrip Shell Memerlukan SUDO daripada PHP Tanpa Prompt Kata Laluan?

Susan Sarandon
Lepaskan: 2024-11-24 04:48:13
asal
718 orang telah melayarinya

How Can I Run SUDO-Requiring Shell Scripts from PHP Without a Password Prompt?

Memanggil Skrip Shell Memerlukan SUDO daripada PHP

Menjalankan skrip shell yang menuntut keistimewaan yang tinggi, seperti yang memerlukan SUDO, boleh mencabar apabila memanggilnya melalui fungsi shell_exec PHP. Secara lalai, shell_exec tidak mempunyai kebenaran yang diperlukan untuk memintas gesaan kata laluan.

Penyelesaian: Mengubah suai Fail sudoers

Untuk menyelesaikan isu ini, anda boleh mengubah suai sudoers fail (boleh diakses melalui visudo) untuk memberikan pengguna pelayan web (cth., www-data) kebenaran untuk melaksanakan skrip tanpa kata laluan. Berikut ialah contoh peraturan yang boleh ditambahkan pada fail sudoers:

www-data ALL=NOPASSWD: /path/to/script
Salin selepas log masuk

Peraturan ini membenarkan www-data pengguna menjalankan skrip /path/to/script tanpa memberikan kata laluan. Setelah fail sudoers dikemas kini, anda boleh memanggil skrip daripada PHP menggunakan shell_exec seperti biasa.

<?php
$output = shell_exec('/path/to/script');
?>
Salin selepas log masuk

Awas: Pemberian kebenaran yang berlebihan dalam fail sudoers boleh menjejaskan keselamatan sistem. Pastikan anda hanya menambah peraturan yang perlu dan meminimumkan skop keistimewaan yang diberikan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menjalankan Skrip Shell Memerlukan SUDO daripada PHP Tanpa Prompt Kata Laluan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan