Я открыл порт 80 для трафика для некоторых разработок веб-страниц, которые я делаю (используя переадресацию портов в моем маршрутизаторе). Я понимаю, что это открывает мой компьютер для злоумышленников. Как лучше всего предотвратить проникновение злоумышленников через порт 80, пока он открыт? Я работаю на Mac.
Есть ли настройка или программа брандмауэра Mac, которая будет обнаруживать и уведомлять меня о трафике (неожиданном или полном трафике) на этом порту? Я предполагаю, что диалоговое окно будет появляться при каждой попытке доступа, и мне нужно будет одобрить его, прежде чем оно появится.
Если бы у вас открывался диалог каждый раз, когда кто-то попадает в ваш IP-адрес на 80-м порту, у вас был бы нескончаемый поток диалоговых окон. Реальное решение состоит в том, чтобы либо потребовать аутентификацию на вашем сайте (стиль .htaccess), либо, в качестве альтернативы, настроить брандмауэр, чтобы разрешать подключения только к порту 80 из заранее определенного списка IP-адресов.
Вы можете оставить терминал открытым и tail -F /var/log/apache2/access.log
(или эквивалент). Вы также можете tail -F /var/auth.log | grep -i port 80
(или эквивалент) в другом окне. Или вы можете использовать multitail для просмотра обоих файлов в одном окне.
Есть ли причина, по которой у вас вообще открыт порт 80 для вашей машины разработки? то есть вы позволяете клиентам просматривать незавершенную работу сайта со своего Mac?
Предполагая, что это так, и что работа, которую вы делаете, в конечном итоге будет выполняться на веб-сервере / хостинг-провайдере, я бы рекомендовал выработать привычку настраивать тестовые сайты (с аутентификацией или без нее) на веб-сервере, который будет разместить сайт или специальный тестовый или промежуточный сервер.
Это может быть так же просто, как настроить другой виртуальный хост в Apache в субдомене, таком как dev.example.com, или, если у вас нет контроля над их DNS, настроить client.yourdomain.com и разместить его на отдельном виртуальный хост где-нибудь.
Причина для этого: а) вам не нужно открывать мир для своей рабочей станции б) вы можете оставить его включенным 24/7 в) у вас не будет никаких "сюрпризов" при продвижении ваших изменений вживую (например, сломанные пути или абсолютные URL-адреса, о которых вы забыли), потому что вы уже делали это все время.
Вы можете просто использовать tcpdump / wirehark и точно наблюдать, что происходит. Добавьте соответствующие фильтры, чтобы не получить больше информации, чем вам нужно.
Однако, как упоминал ErikA, было бы намного лучше просто использовать правила брандмауэра или конфигурацию Apache и ограничить доступ для соответствующих пользователей.
Вы также можете проверить приложение, Маленький снитч. Он отлично справляется с перехватом всех видов трафика, и давайте решим, какие биты вы хотите разрешить, а какие запретить. Думаю, это именно тот инструмент, который вы ищете.