
Proteggere le connessioni a Nextcloud e ONLYOFFICE
Uno dei compiti più basilari che saremo costretti a svolgere, sarà quello di garantire l'accesso a Nextcloud e ONLYOFFICE, soprattutto se prevediamo di lavorare attraverso Internet. Così, In questo documento, esamineremo come sostituire il traffico HTTP non crittografato con il traffico HTTPS sicuro, vedremo inizialmente la configurazione per Nextcloud e infine su ONLYOFFICE.
Abilitare l'accesso sicuro a Nextcloud,
Se vogliamo che gli utenti accedano a Nextcloud in modo sicuro, dovremo installare un certificato sul server Apache del nostro Nextcloud. Suppongo che avremo già in mente un po' di FQDN per questo servizio, quindi il certificato deve essere valido per quel nome di dominio, oppure utilizzare un certificato Wildcard e il gioco è fatto! Nel mio scenario userò il nome data.openservices.eus per riferirmi al server Nextcloud e ovviamente creerò la voce DNS corrispondente nella zona pubblica e privata.
Prima di iniziare, Di cosa abbiamo bisogno? I certificati! Dobbiamo presentarli nel formato giusto, dobbiamo avere il certificato, la tua chiave privata e la catena di certificati CA. Te lo renderemo facile, supponendo di avere un file PFX che ho generato su un altro server (IIS su Windows, ad esempio), lo copieremo con SCP sul server, e in aggiunta a ciò dobbiamo cercare o creare un file con la catena di certificati degli enti emittenti, che il nostro fornitore di certificati ce lo avrà solitamente inviato al momento 😉
Per scollegarsi da un file PFX e ottenere il certificato pubblico da un lato e la chiave privata dall'altro, Possiamo farlo con questo esempio:
[Codice sorgente]openSSL PKCS12 -in Wildcard_Open_Services.pfx -clcerts -nokeys -out wildcard_open_services.cer
openSSL PKCS12 -in Wildcard_Open_Services.pfx -nocerts -nodes -out wildcard_open_services.key[/Codice sorgente]
Iniziamo abilitando il modulo SSL e modifichiamo il file di configurazione del sito Nextcloud.
[Codice sorgente]sudo a2enmod ssl[/Codice sorgente]
Copiamo i certificati che abbiamo appena generato nella directory dei certificati Apache e il file con l'intera catena di CA intermedie:
[Codice sorgente]sudo cp wildcard_open_services.* /etc/apache2/ssl
sudo mv openservices_eus.ca-bundle /etc/apache2/ssl/cadena.crt[/Codice sorgente]
Modifichiamo il file /etc/apache2/sites-enabled/default-ssl.conf per la configurazione del sito sicuro Apache e modifichiamo le voci che fanno riferimento al certificato, alla chiave privata e alla catena di certificati:
[Codice sorgente]SSLCertificateFile /etc/apache2/ssl/wildcard_open_services.cer
SSLCertificateKeyFile /etc/apache2/ssl/wildcard_open_services.key
SSLCertificateChainFile /etc/apache2/ssl/cadena.crt[/Codice sorgente]
Registrazione e riavvio di Apache & convalidiamo che ora saremo in grado di accedere al sito Nextcloud tramite https sicuro:
[Codice sorgente]Sudo Service Apache2 Riavvia[/Codice sorgente]
Mettere il sito predefinito di Nextcloud in Apache,
A proposito, se vuoi evitare che i tuoi utenti debbano digitare /nextcloud e quindi rendere quel sito come quello predefinito in Apache, Modificheremo i file di configurazione /etc/apache2/sites-enabled/000-default.conf e /etc/apache2/sites-enabled/default-ssl.conf dei siti, Modifica del percorso:
[Codice sorgente]DocumentRoot /var/www/nextcloud[/Codice sorgente]
E abbiamo riavviato Apache!
[Codice sorgente]Sudo Service Apache2 Riavvia[/Codice sorgente]
Abilitazione dell'accesso sicuro a ONLYOFFICE,
Se vogliamo proteggere il traffico e l'accesso a Document Server, dovremo installare un certificato SSL in Nginx, che è il server web che stiamo utilizzando e quindi crittografare le tue connessioni utilizzando HTTPS, inoltre, alla fine vedremo come cambiare la porta nel caso fossimo interessati ad aprire questo scenario a Internet in un secondo momento.
Come prima, ONLYOFFICE deve anche avere i certificati nel formato specifico di Nginx, Dobbiamo lasciare il certificato pubblico nella cartella del certificato, la chiave privata e un certificato con la catena di tutte le CA intermedie o radice.
Ricordiamo i passaggi seguiti per separare da un file PFX e ottenere il certificato pubblico da un lato e la chiave privata:
[Codice sorgente]openSSL PKCS12 -in Wildcard_Open_Services.pfx -clcerts -nokeys -out wildcard_open_services.cer
openSSL PKCS12 -in Wildcard_Open_Services.pfx -nocerts -nodes -out wildcard_open_services.key[/Codice sorgente]
Inoltre, se non vogliamo avere problemi con l'attendibilità del certificato, si consiglia di generare il file del certificato con la catena di tutte le CA, Qualcosa del genere può aiutarci a ottenerlo il seguente comando, che creerà 1 File con tutti i certificati:
[Codice sorgente]cat /etc/ssl/certs/wildcard_open_services.cer openservices_eus.ca-bundle > wildcard_open_services_y_cadena.cer[/Codice sorgente]
Copiamo i file generati nella directory del certificato, Fermiamo Nginx, e crea un file di configurazione per l'accesso sicuro a ONLYOFFICE:
[Codice sorgente]sudo cp wildcard_open_services.* /etc/ssl/certs/
sudo service nginx stop
sudo cp -f /etc/onlyoffice/documentserver/nginx/onlyoffice-documentserver-ssl.conf.template /etc/nginx/conf.d/onlyoffice-documentserver.conf[/Codice sorgente]
Modifichiamo il file di configurazione e aggiungiamo il percorso del certificato e la sua chiave privata:
[Codice sorgente]sudo vim /etc/nginx/conf.d/onlyoffice-documentserver.conf
ssl_certificate /etc/ssl/certs/wildcard_open_services_y_cadena.cer;
ssl_certificate_key /etc/ssl/certs/wildcard_open_services.key;[/Codice sorgente]
A proposito, È ora se vogliamo cambiare la porta, il file di configurazione, Modificheremo la sezione in cui ascolti e selezioneremo la porta che ti interessa:
[Codice sorgente]Ascoltare 0.0.0.0:4443 Certificato SSL;
Ascoltare [::]:4443 SSL default_server;[/Codice sorgente]
Basterà riavviare Nginx e verificare che possiamo accedervi tramite il nuovo URL, con HTTPS:// e al porto che abbiamo specificato:
[Codice sorgente]Sudo service nginx start[/Codice sorgente]