2012-10-11 10 views
5

Ok my question here avrebbe dovuto essere più preciso. La linea di fondo è: ho una scatola di linux remota e ho avviato web2py su di essa bene - mi sta spingendo a visitare la porta 8000 sul localhost.Il modo più semplice per impostare l'accesso amministratore remoto a un processo web2py

Tuttavia, quando provo a visitare quella porta da remoto, non riesco a stabilire una connessione tramite http o https.

Quindi la domanda diventa, qual è il modo più semplice e veloce per fornire l'accesso di amministratore remoto a web2py? Non ho voglia di installare Apache e mod_proxy (anche se sono riuscito a farlo configurare) e non ho voglia di configurare Apache per usare questo wrapper wsgi. Se quelle sono le mie uniche 2 opzioni, allora così sia, proverò a farlo.

Ma preferirei semplicemente avviare web2py con una sorta di opzione che consente l'accesso remoto sicuro e il suo utilizzo.

risposta

2

Il modo più semplice per farlo è con inoltro porta SSH. Questo ti permette di accedervi come fa l'host locale, ed è su una connessione criptata.

formato:

$ ssh -L localhostport:localhost:remoteport remoteip 

esempio: questo sarà inoltrare la porta 8000 (default web2py) a distanza, a localhost: 80

$ ssh -L 80:localhost:8000:remoteport remoteip 
11

Per motivi di sicurezza, web2py disabilita l'accesso remoto all'app di amministrazione a meno che non si stia utilizzando un canale protetto, ad es. HTTPS. Tutto ciò che devi fare è configurarlo.

Il più breve modo per fare quello che vuoi è,

  1. Inizia generando i file dei certificati, se non li avete già

    openssl genrsa -out server.key 2048

    openssl req -new -key server.key -out server.csr

    openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

  2. Copia i file server.key e server.crt nella cartella principale di web2py.

  3. quindi avviare l'applicazione web2py utilizzando i file dei certificati

    python web2py.py -a 'AdminPwd' -c server.crt -k server.key -i 0.0.0.0 -p 8000

  4. Poi vai al browser e aperto, si ricorda che il https è importante

    https://IpAddr:8000/admin/default/site

Questo dovrebbe funzionare it l'applicazione di amministrazione sul computer remoto.

Il migliore modo per fare quello che vuoi è,

Usa this nice script (setup-web2py-nginx-uwsgi-ubuntu.sh) per impostare nginx con web2py utilizzando uWSGI su Ubuntu. Lo script imposterà i canali https e http richiesti per te.

I metodi sopra descritti sono destinati ad essere utilizzati in un ambiente di sviluppo e non un ambiente di produzione

+0

utile! Grazie – klashxx

Problemi correlati