Estoy tratando de servir a una aplicación de intranet desde un servidor que ejecuta Ubuntu 18.04 de nuestra red local
La aplicación está escrita en Flask
y me han implementado el uso de gunicorn
con el comando
me@appserver:~$ authbind gunicorn -w 4 -b 127.0.0.1:80 app:app
SSHing en el servidor con display port forwarding puedo abrir la aplicación, el uso de firefox y de interactuar con él muy bien. Sin embargo, cuando me intente desde otra máquina de la subred se rechaza la conexión.
Que puedo hacer telnet en el puerto 22 bien, es decir,
me@clientmachine:~$ telnet 123.45.67.89 22
Trying 123.45.67.89...
Connected to 123.45.67.89.
pero tengo una conexión rechazada en el puerto 80
me@clientmachine:~$ telnet 123.45.67.89 80
Trying 123.45.67.89...
telnet: Unable to connect to remote host: Connection refused
He configurado el firewall usando ufw
con el comando
me@appserver:~$ sudo ufw allow 80
lo que me da
me@appserver:~$ sudo ufw status
Status: active
To Action From
-- ------ ----
80 ALLOW Anywhere
80/tcp ALLOW Anywhere
22/tcp ALLOW Anywhere
80/udp ALLOW Anywhere
80 (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
22/tcp (v6) ALLOW Anywhere (v6)
80/udp (v6) ALLOW Anywhere (v6)
También me confirmó esto con
me@appserver:~$ netstat -an | grep :80
tcp 0 0 127.0.0.1:80 0.0.0.0:* LISTEN
me@appserver:~$ lsof -i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
gunicorn 1818 me 5u IPv4 31215 0t0 TCP localhost:http (LISTEN)
gunicorn 1822 me 5u IPv4 31215 0t0 TCP localhost:http (LISTEN)
gunicorn 1823 me 5u IPv4 31215 0t0 TCP localhost:http (LISTEN)
gunicorn 1824 me 5u IPv4 31215 0t0 TCP localhost:http (LISTEN)
gunicorn 1825 me 5u IPv4 31215 0t0 TCP localhost:http (LISTEN)
y
me@appserver:~$ sudo iptables -L -n | grep :80
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:80
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:80
Sin embargo, la ejecución nmap
desde el cliente muestra los 80 pero dice que está cerrado
me@clientmachine:~$ nmap 123.45.67.89
Starting Nmap 7.01 ( https://nmap.org ) at 2019-07-24 16:41 AEST
Nmap scan report for appserver.myuni.edu (123.45.67.89)
Host is up (0.00041s latency).
Not shown: 997 filtered ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp closed http
Alguna idea de por qué y cómo solucionarlo? Puede que este tipo de cosas a ser administrado por la configuración de la subred, que son gestionados por el administrador de la red?