Alfresco Community Edition è una versione open source di Alfresco Content Services. È scritto in Java e utilizza PostgreSQL per memorizzare il suo database. Alfresco è un sistema di gestione dei contenuti aziendali per molti tipi di risorse digitali come documenti, record, web, immagini, video e altro ancora. Viene anche utilizzato per lo sviluppo di contenuti collaborativi. È possibile accedere al repository di file di Alfresco ospitato tramite SMB, WebDAV, FTP e CIMS. La ricerca tra i file è fornita da Apache Solr.
Prerequisiti
- Un'istanza del server Vultr CentOS 7 con almeno 4 GB di RAM.
- Un utente sudo .
- Un nome di dominio puntato verso il server.
Per questo tutorial, utilizzeremo 192.168.0.1
come indirizzo IP pubblico e share.example.com
come nome di dominio puntato verso l'istanza Vultr. Assicurati di sostituire tutte le occorrenze del nome di dominio e dell'indirizzo IP pubblico di esempio con quello effettivo.
Aggiorna il tuo sistema di base usando la guida Come aggiornare CentOS 7 . Dopo aver aggiornato il sistema, procedere con l'installazione delle dipendenze.
Installa dipendenze
Alfresco fornisce un pacchetto di installazione binario pronto per l'installazione che contiene tutto il software necessario per eseguire l'applicazione. Tuttavia, dobbiamo installare alcune dipendenze per supportare il plugin LibreOffice.
sudo yum -y install fontconfig libSM libICE libXrender libXext cups-libs libGLU cairo mesa-libGL-devel
Rimuovi Postfix.
sudo yum -y remove postfix
Installa Alfresco
Scarica il pacchetto di installazione dal sito Web di Alfresco. Puoi sempre trovare il link all'ultimo programma di installazione nella pagina di download di Alfresco .
wget https://download.alfresco.com/release/community/201707-build-00028/alfresco-community-installer-201707-linux-x64.bin
Fornire le autorizzazioni di esecuzione al file di installazione.
sudo chmod +x alfresco-community-installer-201707-linux-x64.bin
Inizia l'installazione.
sudo ./alfresco-community-installer-201707-linux-x64.bin
Seleziona la lingua di installazione. Per il tipo di installazione, puoi scegliere il primo che dice " Easy install
" metodo. Ciò installerà l'applicazione con la configurazione predefinita.
Scegli il percorso predefinito /opt/alfresco-community
per l'installazione dell'applicazione.
Specificare la password dell'amministratore e scegliere " Y
" per l'installazione come servizio. Ciò creerà un servizio di avvio per avviare e gestire facilmente il processo di candidatura.
Nota: Alfresco consiglia almeno 2 CPU e 4 GB di RAM. Se il tuo sistema non ha la configurazione consigliata, potresti ricevere un avviso che informa che l'ambiente non è configurato in modo ottimale per Alfresco Content Services, tuttavia puoi comunque procedere con l'installazione.
L'installazione dell'applicazione dovrebbe iniziare ora. Una volta installata l'applicazione, ti verrà chiesto se desideri avviare il server Alfresco Community. Se scegli " Y
", l'applicazione avvierà immediatamente il server e vedrai il seguente output.
Launch Alfresco Community [Y/n]: y
waiting for server to start.... done
server started
/opt/alfresco-community/postgresql/scripts/ctl.sh : postgresql started at port 5432
Using CATALINA_BASE: /opt/alfresco-community/tomcat
Using CATALINA_HOME: /opt/alfresco-community/tomcat
Using CATALINA_TMPDIR: /opt/alfresco-community/tomcat/temp
Using JRE_HOME: /opt/alfresco-community/java
Using CLASSPATH: /opt/alfresco-community/tomcat/bin/bootstrap.jar:/opt/alfresco-community/tomcat/bin/tomcat-juli.jar
Using CATALINA_PID: /opt/alfresco-community/tomcat/temp/catalina.pid
Tomcat started.
/opt/alfresco-community/tomcat/scripts/ctl.sh : tomcat started
Poiché anche il programma di installazione ha aggiunto un servizio di avvio, è anche possibile avviare l'applicazione.
sudo systemctl start alfresco
Abilitare il servizio Alfresco per l'avvio automatico all'avvio e agli errori.
sudo systemctl enable alfresco
Per impostazione predefinita, Alfresco avvia il server Web Tomcat per servire l'applicazione sulla porta 8080
. Per verificare se il server Alfresco funziona, consentire la porta richiesta 8080
attraverso il firewall di sistema.
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
Apri il tuo browser preferito e vai a http://192.168.0.1:8080/share
, vedrai la landing page di Alfresco.
Per impostazione predefinita, il server Tomcat di Alfresco ascolta la porta 8080
. In questo tutorial, utilizzeremo Nginx come proxy inverso in modo che sia possibile accedere all'applicazione tramite standard HTTP
e HTTPS
porte. Configureremo anche Nginx per utilizzare un SSL generato con Let's Encrypt SSL gratuito.
Installa il web server Nginx.
sudo yum -y install nginx
Avviare il server Web e abilitare l'avvio automatico all'avvio.
sudo systemctl start nginx
sudo systemctl enable nginx
Installa Certbot, che è un'applicazione client per Let's Encrypt CA.
sudo yum -y install certbot
Prima di poter richiedere i certificati, è necessario consentire le porte 80
e 443
attraverso il firewall. Inoltre, rimuovere la porta 8080
dall'elenco delle eccezioni del firewall in quanto non è più necessaria.
sudo firewall-cmd --zone=public --remove-port=8080/tcp --permanent
sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload
Nota: per ottenere certificati da Let's Encrypt CA, il dominio per il quale devono essere generati i certificati deve essere puntato verso il server. In caso contrario, apportare le modifiche necessarie ai record DNS del dominio e attendere la propagazione del DNS prima di effettuare nuovamente la richiesta di certificato. Certbot controlla l'autorità di dominio prima di fornire i certificati.
Genera i certificati SSL.
sudo certbot certonly --webroot -w /usr/share/nginx/html -d share.example.com
È probabile che i certificati generati siano archiviati in /etc/letsencrypt/live/share.example.com/
. Let's Encrypt certificati scadranno tra 90 giorni, quindi si consiglia di impostare il rinnovo automatico dei certificati utilizzando i processi Cron.
Apri il file di lavoro cron.
sudo crontab -e
Aggiungi la seguente riga alla fine del file.
30 5 * * * /usr/bin/certbot renew --quiet
Il precedente cron job verrà eseguito ogni giorno alle 5:30. Se il certificato è in scadenza, verrà automaticamente rinnovato.
Modifica il file di configurazione del server Tomcat di Alfresco.
sudo nano /opt/alfresco-community/tomcat/conf/server.xml
Trova le seguenti righe.
<Connector port="8080" URIEncoding="UTF-8" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" maxHttpHeaderSize="32768" />
Aggiungi la linea proxyPort="443" scheme="https"
nel blocco di configurazione sopra in modo che assomigli al blocco mostrato di seguito.
<Connector port="8080" URIEncoding="UTF-8" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" maxHttpHeaderSize="32768"
proxyPort="443" scheme="https" />
Apri il file di configurazione predefinito di Alfresco.
sudo nano /opt/alfresco-community/tomcat/shared/classes/alfresco-global.properties
Trova le seguenti righe.
alfresco.context=alfresco
alfresco.host=127.0.0.1
alfresco.port=8080
alfresco.protocol=http
share.context=share
share.host=127.0.0.1
share.port=8080
share.protocol=http
...
system.serverMode=UNKNOWN
Modificare le righe sopra in base al proprio sistema. Dovrebbe apparire come mostrato di seguito.
alfresco.context=alfresco
alfresco.host=share.example.com
alfresco.port=443
alfresco.protocol=https
share.context=share
share.host=share.example.com
share.port=443
share.protocol=https
...
system.serverMode=PRODUCTION
Creare un nuovo file di blocco del server per Alfresco.
sudo nano /etc/nginx/conf.d/share.example.com.conf
Popolare il file.
server {
listen 80;
server_name share.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name share.example.com;
ssl_certificate /etc/letsencrypt/live/share.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/share.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/alfresco.access.log;
location / {
root /opt/alfresco-community/tomcat/webapps/ROOT;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_pass http://localhost:8080;
proxy_redirect default;
}
location /share/ {
root /opt/alfresco-community/tomcat/webapps/share/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_pass http://localhost:8080/share/;
proxy_redirect http:// https://;
}
location /alfresco/ {
root /opt/alfresco-community/tomcat/webapps/alfresco/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_pass http://localhost:8080/alfresco/;
proxy_redirect http:// https://;
}
}
Riavviare il server Web e il servizio Alfresco per rendere effettive le modifiche alla configurazione.
sudo systemctl restart nginx alfresco
Alfresco è ora installato e configurato sul tuo server, accedi ai moduli Alfresco al seguente indirizzo.
https://share.example.com/alfresco
Per accedere ai servizi di condivisione Alfresco, visitare il seguente indirizzo.
https://share.example.com/share
Accedi utilizzando l'account amministratore iniziale admin
e la password che hai scelto durante l'installazione.
Congratulazioni, Alfresco Community Edition è ora installato sul tuo server.