Как из PHP вызвать команду iptables?

#1 3 мая 2013 в 16:25
Суть в следующим, вижу что пытаются накрутить счетчик.
Сохраняю IP, захожы в ssh и вызываю iptables -A INPUT -s 188.000.000.000 -j REJECT
После этого, IP уже не достучится.

Но я не могу быть все время на месте, и хочется автоматизировать вызов iptables, вопрос:
Как из кода PHP вызвать команду iptables?
#2 3 мая 2013 в 16:30

Как из кода PHP вызвать команду iptables?

Scarnru
теоретически
  1. exec('iptables -A INPUT -s 188.000.000.000 -j REJECT');
Однако система врятли позволит добавлять правила от www-data.
#3 3 мая 2013 в 17:10
что за www-data?

PHP скрипты по идеи вообще от имени юзера вошедшего на сайт запускаются, нет?
#4 3 мая 2013 в 17:20
Тo TC:
Fuze все замечательно уже описал

Однако система врятли позволит добавлять правила от www-data.

Fuze
www-data — это пользователь с правами которого работает веб-сервер, и соответственно PHP скрипты исполняемые им.
iptables глобально — подчиняется только суперпользователю (root) или группе пользователей с высшими правами управления системой, иначе первый же пользователь с минимальными правами мог заблокировать удаленный доступ к серверу, или натворить других "дел".

Если так уж требуется PHP — лучше написать отдельный консольный скрипт, который будет вызываться по крону от "хорошего" пользователя и заносить неугодные ему IP в списки iptables.
#5 3 мая 2013 в 17:44

www-data — это пользователь с правами которого работает веб-сервер

Алхимик
зачастую имя пользователя такое, но разумеется далеко не всегда собственно как настроите апач.
Так же теоретически можно запустить апач от root, тогда все будет работать)) но разумеется это категорически делать не нужно.

заносить неугодные ему IP в списки iptables.

Алхимик
можно просто написать скрипт (PHP), который будет вносить определенные ip в табличку в базе, и в index.php (или в классе юзерс) получать эти ip-шники после чего проверять текущий ip юзера с блэк листом.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.