Подобно sudo, я хотел бы создать команду, которая позволяет мне проверять, может ли веб-страница выполнять такие действия, как ping, wget, cat и т. Д. Этот сценарий bash работает нормально для отдельных команд, таких как ‘www ./test.py’, но команде cat нужна другая информация. Если введено «www ping 192.168.XX», оно возвращается. (.XX — это какой-то локальный ip)
sudo: ping 192.168.XX: команда не найдена
#!/bin/bash
if [ -z "$@" ]
then
echo "No arguments supplied"
sudo -u www-data bash
exit 0
else
echo "Hello world"
sudo -u www-data "$*"
exit 1
fi
#sudo -u www-data bash
PS. Это может быть использовано для любого пользователя в системе. Я просто использовал в качестве примера www-data.