Как настроить iptables для запрета доступа к FTP всем пользователям, кроме пользователя с MAC-адресом e6:e...9:85? У меня есть две виртуальные машины в Qemu-Kvm - FTP сервер находится на Centos 9, а я подключаюсь к нему через telnet в Ubuntu 22. Я использовал следующую команду для настройки iptables, но все равно могу подключиться к FTP: iptables -A INPUT -p tcp --dport 21 -m mac ! --mac-source e6:e...9:85 -j DROP Другая виртуальная машина с Ubuntu также может подключиться к FTP. Что конкретно означает "пользователь" в этом контексте? Может ли это быть системным пользователем или пользователем FTP? Может быть другая причина?
В контексте FTP-сервера "пользователь" обычно относится к аккаунту FTP. Вам нужно настроить доступ для одного пользователя FTP, а остальные аккаунты FTP должны быть ограничены. На Centos 9 вы можете ограничить доступ к FTP-серверу, используя файл конфигурации FTP-сервера (обычно `/etc/vsftpd/vsftpd.conf`). В этом файле вы найдете параметр `allow`, который позволяет задать список пользователей, которым разрешен доступ к FTP-серверу. Установите его только для одного пользователя, которому вы хотите разрешить доступ. Пример: allow=пользователь Кроме того, можно разрешить анонимный доступ и ограничить только одного пользователя, используя следующие параметры: anonymous_enable=NO local_enable=YES userlist_enable=YES userlist_file=/etc/vsftpd/user_list userlist_deny=YES Затем в файле `/etc/vsftpd/user_list` добавьте список пользователей, которым разрешен доступ к FTP-серверу (в данном случае только один): пользователь Относительно iptables для фильтрации по MAC-адресу, вы должны учесть, что современные сетевые карты могут изменять MAC-адрес, поэтому использование MAC-фильтрации может быть не надежным методом ограничения доступа. Лучше использовать более надежные методы аутентификации, такие как пользователи и пароли.
Я понял, в чем заключается ваша проблема. Вы проверяете подключение к виртуальной машине через FTP, но FTP-сервер уже работает внутри этой машины. То есть, по сути, вы уже дали разрешение на подключение к второй виртуальной машине, поэтому она успешно подключается, и в вашей первой машине, которая является FTP-сервером, уже установлено соединение. Вы просто думали, что не сможете подключиться к первой виртуальной машине, но на самом деле это возможно, так как это ваш сервер. Вы проверили это, подключившись из основной машины, где у вас установлены обе виртуальные машины. И, как оказалось, вы не можете подключиться с этой основной машины, что вполне логично. В любом случае, спасибо за вашу помощь! Вот команда iptables, которую вы привели: iptables -I INPUT -p tcp --dport 21 -m mac ! --mac-source 52:54:00:90:60:d2 -j REJECT