Как бы вы заблокировали конкретного пользователя с определенного IP-адреса и определенного порта?
Просто любопытно, реального варианта использования нет...
Ответ, вероятно, /etc/hosts.deny, но спрашиваю, есть ли другой способ сделать
2 ответа
Вы можете использовать модуль/расширение «владельца» netfilter для создания соответствующих правил для сопоставления трафика от конкретного пользователя (в системе Linux, где находится пользователь).
sudo iptables -I OUTPUT -m owner --uid-owner <USERNAME> -p tcp -m tcp -d destination-address --dport destination-port-number -j REJECT
Но как только IP-трафик покидает систему, в трафике TCP/IP больше не существует понятия «имя пользователя/владелец», пакеты содержат только протокол, IP-адрес и номера портов и не имеют идентификации пользователя, которую можно было бы использовать в качестве надежной основы для правила брандмауэра в удаленной системе или в промежуточном брандмауэре.
Историческим решением этой проблемы былоident
протокол иidentd
сервис (RFC 931 и потомок RFC 1413), работающий на исходном IP-адресе входящего соединения, который будет возвращать имя пользователя, связанное с конкретным TCP-соединением. Именно это позволило осуществлять аутентификацию на основе имени пользователя вhosts.[allow|deny]
контроль доступа. Я не знаю никого, кто бы до сих пор поддерживал или доверял службе идентификации, и даже в разделе 6 RFC совершенно ясно излагаются соображения безопасности: « Протокол идентификации не предназначен для использования в качестве протокола авторизации или контроля доступа», так что не Я не пойду туда.
вы можете установить пакет UFW (несложный брандмауэр), а затем использовать UFW для создания некоторых записей. При активации UFW весь входящий трафик блокируется, а исходящий разрешается по умолчанию. Прежде чем активировать UFW, обязательно внесите SSH-соединения в белый список, чтобы не заблокировать вас от вашего сервера с помощью
Чтобы заблокировать определенный адрес IPv4/6, вы можете создать запись ufw с помощью этой команды:
Но я точно не знаю, как заблокировать определенные адреса и порты IPv4 с помощью UFW.