Я вижу некоторые проблемы с вашим брандмауэром, в основном вы, кажется, отбрасываете вещи на входе и выходе, но игнорируете пересылку. Таким образом, все на локальной машине будет заблокировано, но ничего на машинах за брандмауэром.
Вам было неясно, хотите ли вы блокировать трафик, входящий / выходящий из устройства, на котором работают правила брандмауэра, или вы хотите заблокировать что-либо за брандмауэром. Точно так же вы не посоветовали, хотите ли вы блокировать входящий или исходящий трафик (любой из них будет иметь тот же очевидный эффект при просмотре веб-страниц, но другие последствия для безопасности)
Если вы хотите заблокировать пересылаемые объекты (как подразумевается в последней строке скрипта), и вас не беспокоит доступ из фактического блока, выполняющего брандмауэр (и значения по умолчанию установлены в ACCEPT, как в вашем примере):
iptables -A FORWARD -j DROP
iptables -I FORWARD -i wlan0 -d www.google.se -p tcp --dport 80 -j ACCEPT
iptables -I FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
Должно работать, при условии, что клиенты используют локальный DNS-сервер и могут разрешить www.google.se - И ВАЖНО (но, вероятно, неверное предположение), Сервер имен всегда разрешает www.google.se для одного и того же IP-адреса.
Первая строка гласит: «Если трафик проходит через это поле, и я не знаю об этом, не пропускайте трафик».
Во второй строке, которая вставлена (прочитайте перед строкой выше), говорится о разрешении исходящих запросов на www.google.se. В третьей строке говорится: «Если мы успешно установили соединение с IP, мы можем разрешить ему общаться с нами».