Тема: captive portal
Показать сообщение отдельно
  #1  
Старый 18.10.2018, 05:32
Anton Gorlov
Guest
 
Сообщений: n/a
По умолчанию captive portal

Anton Gorlov написал(а) к All в Oct 18 01:09:58 по местному времени:

Привет All!

заброшу и сюда данный вопрос..вдруг кто наступал.


Понадобилось тут изобразить Captive portal. Взял связку из nginx+ iptables... но что-то не выходит каменный цветок, нужна помощь зала:

Завёл на стенде тестовую сеть, на шлюзе сделал (192.168.11.3 выдаётся для wifi клиентов как def gw по dhcp)

-A PREROUTING ! -d 192.168.11.3/32 -i ens4 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.11.3



Далее в nginx заведено 2 виртуальных хоста:
===
server {
# # Listening on IP Address.
# # This is the website iptables redirects to
listen 80 default_server;
root /var/www/html/portal;
access_log /var/log/nginx/access1.log atop;
portinredirect off;
keepalive_timeout 0;

location / {
return 302 http://test.ppcom:82;
}
}

server {
listen 82;
server_name test.ppcom;
root /var/www/html/portal;
access_log /var/log/nginx/access2.log atop;

add_header Cache-Control no-cache;
# set the Expires header to 31 December 2037 23:59:59 GMT, and the Cache-Control max-age to 10 years
expires 0;

location / {
try_files $uri $uri/ /index.html;
}
}

===
Локальный DNS резолвит test.ppcom так же в 192.168.11.3.

Но не выходит каменный цветок. Но если портал повесить на 80 порт сразу,куда заворачивает трафик iptables то на андроидах всё таки рисуется страница от портала.
Вопрос - что упускаю их вида,что не отрабатывает вариант с редиректом из nginx на страницу портала?

Да..если 1 вхост повесить на 82 порт и сюда заворачивать iptables-ами,а портал перевесить на 80 порт,то не работает с точно такой же диагностикой. До 2 Vhost-а с порталом запросов вообще нет и это видно в дампе трафика.

Причём в дампе я вижу, что nginx отдаёт

Нypertext Transfer Protocol
НTTP/1.1 302 Moved Temporarily\r\n
Server: nginx/1.14.0\r\n
Date: Sun, 14 Oct 2018 17:07:54 GMT\r\n
Content-Type: text/html\r\n
Content-Length: 161\r\n
Connection: close\r\n
Location: http://test.ppcom:82\r\n
\r\n


С уважением. Anton aka Stalker

Linux Registered User #386476
[#TEAM:*#] [#Злой СисОп_#] [*Нeavy Metal!*] [*_Усачи]
--- GoldED+/LNX 1.1.5-b20160322
Ответить с цитированием