Можно ли заблокировать веб-страницу с помощью ufw?

8

в основном у меня две машины X и Y.

Я хочу заблокировать «http: // <IP-of-Y-Here> / AFolder /» с компьютера X на HTTP-порт 80, используя ufw.

Тривиально, это может быть выполнено (ужасно), используя ufw через:

sudo ufw deny out 80

Но возможно ли сделать что-то вроде:

ufw deny from (X IP ADDRESS) port 80 to (Y IP ADDRESS)/AFolder

Что удовлетворит мои требования?

Эд Джордж
источник

Ответы:

6

Нет, вы не можете использовать UFW для блокировки доступа к некоторым конкретным страницам на веб-сервере, но не к другим.

ufw - это интерфейс, iptablesкоторый управляет межсетевым экраном netfilter , встроенным в ядро ​​Linux. Это обычный брандмауэр - вы можете использовать его для фильтрации пакетов по их заголовкам.

IP-адрес и порт включены в заголовки пакета, но веб-документ не извлекается. Вместо этого эта информация передается в теле пакетов после того, как соединение уже установлено.

Как вы, наверное, знаете, возможно заблокировать доступ к определенным веб-сайтам (хотя обычно это довольно легко обойти), и есть утилиты, которые обеспечивают гранулярность, чтобы блокировать определенные страницы, в то же время предоставляя доступ к другим страницам на тот же сервер. Но чтобы ответить на то, что вы спросили: UFW не будет этого делать.

Элия ​​Каган
источник
6

Вы можете заблокировать доступ к порту на сервере с помощью ufw. man ufwимеет целый ряд примеров, но при условии, что он включен, это должно быть так:

sudo ufw deny out to <<ip address>> port 80

Я только что проверил это на моем собственном сервере, и это работает. Помните, что порт 443 используется для SSL, поэтому может потребоваться и блокировка.

Помните, это блокирует весь порт 80 на этом сервере.


Если вы хотите начать фильтрацию по подпапкам (разрешив одни пути, но не другие), вам понадобится что-то, что проксирует запросы. Брандмауэр не смотрит на контент, он смотрит на соединения. Для брандмауэра запрос к / подпапке такой же, как запрос к / a-different-подпапке.

Итак, вы ищете прозрачный прокси, который вы можете использовать для ограничения трафика. Программное обеспечение для родительского контроля, вероятно, является лучшим выбором для быстрой настройки. Нечто подобное dansguardianнаверняка было популярно, и я бы сказал, что это требует исследований. Более подробная информация доступна на вики:

Оли
источник
Просто и идеально. Протестировано в 16.04
Сэм