Condividere la porta SSL 443 tra OpenVPn ed Apache

From RVM Wiki
Revision as of 14:24, 20 May 2014 by Gabriele.vivinetto (talk | contribs) (Created page with "È utile utilizzare la porta standard 443 https in OpenVpn, perchè spesso è aperta su proxy e firewall. Se sullo stesso ip gira anche un web server in https, è necessario con…")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

È utile utilizzare la porta standard 443 https in OpenVpn, perchè spesso è aperta su proxy e firewall.

Se sullo stesso ip gira anche un web server in https, è necessario condividere la porta. Questo può essere fatto con la direttiva

port-share

che permette di utilizzare la porta 443 per openvpn, che provvede a girare il traffico che non gli compete verso un'altra destinazione.

L'esempio considera una macchina con iterfaccia WAN 192.168.1.252 ed interfaccia LAN 192.168.254.254.

Openvpn gira sulla interfaccia WAN, su ci deve essere disponile anche il server HTTPS.

Il server Https deve anche essere raggiungibile sull'interfaccia LAN sempre sulal porta 443. Se non fosse necessario, è possibile configurare apache per ascoltare in localhost su un'altra porta, e redirigere il traffico su quella.

Configurazione OpenVPN

  • Fermare Apache
sudo invoke-rc.d apache2 stop
  • Configurare openvpn per utilizzare la porta 443 sull'interfaccia WAN, redirigerendo il traffico sull'interfaccia LAN:
sudoedit /etc/openvpn/roadwarriors.conf 
#...
proto tcp-server
port 443
port-share 192.168.254.254 443
local 192.168.1.252
#...
  • Riavviare openvpn e provare a aconnettersi:
sudo invoke-rc.d openvpn restart

Se la vpn funziona, proseguire con Apache

Configurazione di Apache

  • Configurare IP e porta di ascolto
sudoedit /etc/apache2/ports.conf
<IfModule mod_ssl.c>
#...
      Listen 192.168.254.254:443           
#...
  <IfModule mod_gnutls.c>
      Listen 192.168.254.254:443           
#...
sudoedit /etc/apache2/sites-available/default-ssl
<VirtualHost _default_:443> 
  • Riavviare apache e verificare che ci si possa connettere sia lato lan che lato wan:
sudo invoke-rc.d apache2 restart

Riferimenti