Сохраняю IP, захожы в ssh и вызываю iptables -A INPUT -s 188.000.000.000 -j REJECT
После этого, IP уже не достучится.
Но я не могу быть все время на месте, и хочется автоматизировать вызов iptables, вопрос:
Как из кода PHP вызвать команду iptables?
PHP скрипты по идеи вообще от имени юзера вошедшего на сайт запускаются, нет?
Fuze все замечательно уже описал
www-data — это пользователь с правами которого работает веб-сервер, и соответственно PHP скрипты исполняемые им.Однако система врятли позволит добавлять правила от www-data.
iptables глобально — подчиняется только суперпользователю (root) или группе пользователей с высшими правами управления системой, иначе первый же пользователь с минимальными правами мог заблокировать удаленный доступ к серверу, или натворить других "дел".
Если так уж требуется PHP — лучше написать отдельный консольный скрипт, который будет вызываться по крону от "хорошего" пользователя и заносить неугодные ему IP в списки iptables.
зачастую имя пользователя такое, но разумеется далеко не всегда собственно как настроите апач.www-data — это пользователь с правами которого работает веб-сервер
Так же теоретически можно запустить апач от root, тогда все будет работать)) но разумеется это категорически делать не нужно.
можно просто написать скрипт (PHP), который будет вносить определенные ip в табличку в базе, и в index.php (или в классе юзерс) получать эти ip-шники после чего проверять текущий ip юзера с блэк листом.заносить неугодные ему IP в списки iptables.