Installer Owncloud en HTTPS sur votre Raspberry Pi avec Nginx
Achtung : Dieser Artikel wurde automatisch von Bing Translate übersetzt
Advertencia : Este artículo ha sido traducido automáticamente por Bing Translate
La série des installations Owncloud continue. J’ai raté la version 6 alors je me rattrape avec la 7 (7.0.1 pour être précis !). Voici donc les instructions d’installation misent à jour !
Je vous passe la description de Owncloud, vous pouvez trouver toutes les informations sur le site officiel. Passons aux choses sérieuses !
Comme d’habitude je démarre avec la distribution Moebius. Cela a plusieurs avantages :
- minimaliste sur le disque avec seulement 700Mo
- minimaliste en mémoire avec 25Mo après le premier démarrage
- pas de Apache d’installé par défaut
J’utilise le user root pour tout faire. Pas bien mais pratique. Si vous ne l’utilisez pas, pensez à ajouter l’instruction sudo avant chaque commande.
- Mettre à jour le système et installer NTP pour la synchronisation de l’horloge.
apt-get update && apt-get upgrade -y && apt-get install ntp && apt-get install raspi-config
Pensez maintenant à utiliser raspi-config pour finir la configuration de votre futur serveur comme étendre le filesystem
- Installer les paquets nécessaires
apt-get install nginx php5-fpm php5 php5-json php5-gd php5-sqlite curl libcurl3 libcurl3-dev php5-curl php5-common php-xml-parser sqlite php-apc
- Créer le répertoire pour les sources
mkdir /var/www
- Télécharger la dernière version de Owncloud
cd /var/www wget http://download.owncloud.org/community/owncloud-7.0.1.tar.bz2
- Décompresser l’archive télécharger
tar jxvf owncloud-7.0.1.tar.bz2
- Changer le owner du répertoire
chown -R www-data:www-data /var/www/owncloud
- Créer le répertoire /etc/nginx/certs s’il n’existe pas
mkdir /etc/nginx/certs
- Générer les certificats pour le site. Vous devez être dans le répertoire /etc/nginx/certsAttention : utilisez un mot de passe robuste pour générer votre certificat. Le certificat est valable 365 jours. Il faudra en générer un nouveau dans un an
cd /etc/nginx/certs openssl genrsa -des3 -out owncloud.key 1024 openssl req -new -key owncloud.key -out owncloud.csr cp owncloud.key owncloud.key.org openssl rsa -in owncloud.key.org -out owncloud.key openssl x509 -req -days 365 -in owncloud.csr -signkey owncloud.key -out owncloud.crt
- Supprimer les fichier inutiles
rm owncloud.csr owncloud.key.org
- Créer un fichier /etc/nginx/sites-available/owncloud (A vous de choisir le port). Le source est disponible ici
server { listen 8091 ssl; ssl_certificate /etc/nginx/certs/owncloud.crt; ssl_certificate_key /etc/nginx/certs/owncloud.key; error_log /var/log/nginx/owncloud.log; access_log /var/log/nginx/owncloud.log; server_name owncloud; root /var/www/owncloud; client_max_body_size 10G; # set max upload size fastcgi_buffers 64 4K; rewrite ^/caldav((/|$).*)$ /remote.php/caldav$1 last; rewrite ^/carddav((/|$).*)$ /remote.php/carddav$1 last; rewrite ^/webdav((/|$).*)$ /remote.php/webdav$1 last; index index.php; error_page 403 = /core/templates/403.php; error_page 404 = /core/templates/404.php; location = /robots.txt { allow all; log_not_found off; access_log off; } location ~ ^/(?:\.htaccess|data|config|db_structure\.xml|README) { deny all; } location / { # The following 2 rules are only needed with webfinger rewrite ^/.well-known/host-meta /public.php?service=host-meta last; rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last; rewrite ^/.well-known/carddav /remote.php/carddav/ redirect; rewrite ^/.well-known/caldav /remote.php/caldav/ redirect; rewrite ^(/core/doc/[^\/]+/)$ $1/index.html; try_files $uri $uri/ index.php; } location ~ \.php(?:$|/) { fastcgi_split_path_info ^(.+\.php)(/.+)$; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param HTTPS on; fastcgi_pass unix:/var/run/php5-fpm.sock; } # Optional: set long EXPIRES header on static assets location ~* \.(?:jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ { expires 30d; # Optional: Don't log access to assets access_log off; } }
- Activer le site
ln -s /etc/nginx/sites-available/owncloud /etc/nginx/sites-enabled/owncloud
- Changer les droits sur le répertoire partagé. Chez moi c’est /owncloud.
chown -R www-data:www-data /owncloud
- Modifier le fichier /etc/php5/fpm/php.ini pour augmenter la taille des fichiers pouvant être envoyés
upload_max_filesize = 700M post_max_size = 800M
- Relancer NGINX et php5-fpm
service nginx restart service php5-fpm restart
- Accéder à Owncloud par https://<IP_du_Raspberry> :<port_dans_la_configuration>/
- Et voilà !