Этот сценарий безопасен? - PullRequest
0 голосов
/ 14 апреля 2011

Мне нужно выполнить некоторые задачи на сервере.Теперь я много раз слышал, что это очень небезопасно.Это мое решение:

Добавлена ​​эта строка в sudoers: www-data ALL=NOPASSWD: /var/private-www/bin/webadmin (недоступно через Интернет)

Создан этот скрипт var/private-www/bin/webadmin:

# Script for executing server tasks.
#
# Arguments:
#  - Password       Required for authentication, not all scripts may run this file
#  - Action         Action to execute
# Exit codes:
#  0                Failed
#  1                Success

# First of all check the password
if [ $1 = "secretpassword" ]
then

whoami
exit 1

else

echo "No access"
exit 0

fi

Файлимеет следующие права: 0111

Доступ по SSH разрешен только для одной учетной записи.Так что никто не может выполнить скрипт, кроме меня (и www-данных).www-data теперь может получить доступ к этому файлу: exec('/usr/bin/sudo /var/private-www/bin/webadmin secretpassword', $output, $status);

Достаточно ли это безопасно?Как я могу сделать это более безопасным?

1 Ответ

0 голосов
/ 14 апреля 2011

Я думаю, что если ваш сервер Apache взломан, кто-то может получить доступ к этому сценарию и выполнить его, но я могу ошибаться.

Я наткнулся на ресурс, о котором вы, возможно, захотите прочитать,особенно когда речь идет об ограничении вашего скрипта внутренней сетью.

http://www.linuxsecurity.com/content/view/133913/171/

Я надеюсь, что это ответ на ваш вопрос.

...