Frambuesa Pi y Owncloud HTTPS con Nginx

Si desea instalar este servicio, Usted encontrará docenas (por lo menos) tutoriales con tu amigo Google. Así que aquí voy a hacer fácil y rápido para compartir una partición de disco USB Internet en HTTPS !

Raspberry Pi Home Server - Etape 14 : installer Owncloud en HTTPS avec Nginx

Los tutoriales para instalar Owncloud por lo tanto, encontrará en todas partes (tiene un excelente y simple en tropfacile.NET). Así que uno más en este sitio ! 🙂 On va installer Owncloud pour pouvoir partager une partition disco del USB. También veremos la gestión de certificados para hacer una conexión HTTPS.

  1. Instalador les paquetes necesarios
    apt - get install php5 php5-json php5-gd php5-sqlite enrollamiento libcurl3 libcurl3-dev php5-curl php5-common php-xml-analizador sqlite
  2. Paquete php - apc para performance optimizer (Gracias Foro raspberrypi.org)
    apt - get install php - apc
  3. Descargar OwnCloud
    http://doc.owncloud.org/server/5.0/admin_manual/
  4. Descomprima el archivo en/var/www
    CD/var/www tar jxvf <Archivo>
  5. Cambiar el propietario del directorio
    chown-r www - data:www - data/var/www/owncloud
  6. Cree el directorio /nginx/etc/certs Si no hay ningún
    mkdir/etc/nginx/certs
  7. Generar el certificado para el sitio en el directorio /nginx/etc/certsAtención : utilizar una contraseña segura para generar su certificado. El certificado es válido 365 días. Necesidad de generar un nuevo año
    OpenSSL genrsa - des3 - out owncloud.key 1024
    OpenSSL req-nuevo - clave owncloud.key-out owncloud.csr cp owncloud.key owncloud.key.org openssl rsa-en owncloud.key.org-a owncloud.key openssl x 509 - req-días 365 -en owncloud.csr - signkey owncloud.key-a owncloud.crt
  8. Supprimer les inutiles archivo
    RM owncloud.csr owncloud.key.org
  9. Crear un archivo /etc./nginx/sitios-disponible/owncloud (A vous de choisir le port)
    Servidor {
     Escucha 8091 SSL;
     SSL en;
     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;
     owncloud nombre_servidor;
     raíz /var/www/owncloud;
     Índice index.php;
     client_max_body_size 1000M;
    # negar acceso directo ubicación ~ ^ /(datos|config|.HT|db_structure.xml|README) {
     negar todo;
     }
     # por defecto trata de localización de la orden / {
     try_files $uri $uri / @webdav;
     }
     # OwnCloud WebDAV ubicación @webdav {
     fastcgi_pass unix:/var/run/PHP5-fpm.sock;
     fastcgi_split_path_info ^(.+.PHP)(/.*)$;
     fastcgi_param SCRIPT_FILENAME $document_root$ fastcgi_script_name;
     fastcgi_param HTTPS en;
     incluyen fastcgi_params;
     }
    Ubicación ~ .php$ {
     incluyen/etc/nginx/fastcgi_params;
     try_files $uri = 404;
     fastcgi_param HTTPS en;
     fastcgi_index index.php;
     fastcgi_split_path_info ^(.+.PHP)(/.+)$;
     fastcgi_param SCRIPT_FILENAME $document_root$ fastcgi_script_name;
     fastcgi_pass unix:/var/run/PHP5-fpm.sock;
     }
     }
  10. Habilitar el sitio
    ln -s /etc/nginx/sites-available/owncloud /etc/nginx/sites-enabled/owncloud
  11. Cambiador les droits sur le répertoire partagé
    chown-r www - data:www - data/media/usbdrive/internet
  12. Edite el archivo /etc/PHP5/fpm/PHP.ini Vierta a aumentador de la taille des fichiers pouvant être envoyés
    upload_max_filesize = 700M post_max_size = 800M
  13. Reiniciar NGINX y php5-fpm
    servicio nginx restart reiniciar el servicio php5-fpm
  14. Owncloud acceso con https://<IP_du_Raspberry> :<port_dans_la_configuration>/

    Exhibición del certificado para conectar a su Owncloud

    Exhibición del certificado para conectar a su Owncloud

  15. Simplemente siga las instrucciones en la pantalla

    OwnCloud configuración

    OwnCloud configuración

  16. Cita en http://OwnCloud.org/support/ para documentación sobre el uso de Owncloud
  17. Un rápido recorrido de su directorio de datos va a confirmar que los datos se almacenarán en el lugar correcto

Aquí espero haberte ayudado en su instalación.

Buenas noches


Para la versión 5.0.4, Gracias a EFT (su sitio aquí) por su ayuda :

  • Editar el archivo/etc/nginx/sitios-disponible/owncloud sólo poner el código en esta dirección :https://github.com/owncloud/documentation/blob/master/admin_manual/installation/installation_others.rst
  • Y cambiar las siguientes líneas :
    1. el nombre del servidor (PRECAUCIÓN aparece en dos lugares) –> owncloud nombre_servidor;
    2. el puerto ssl-> Escucha 8091 SSL;
    3. la ubicación y el nombre de certificados :
      • –> ssl_certificate /etc/nginx/certs/owncloud.crt;
      • –> ssl_certificate_key /etc/nginx/certs/owncloud.key;
    4. la raíz-> raíz /var/www/owncloud;

Posiblemente le gustan también....

  • Max

    Hola

    En ce qui concerne je voulais me avoir une redirección ssl uniquement sur le dossier owncloud et servicios pas sur les autres. Voici la solución trouvée pour la configuración de nginx

    Servidor {
      Escucha 443 SSL;
      SSL en;
      nombre_servidor mondomaine.com;
      # directivas para SSL certificados ssl_certificate /etc/nginx/certs/owncloud.crt;
        ssl_certificate_key /etc/nginx/certs/owncloud.key;
      # raíz, Índice, error_log, directivas access_log root/var/www /;
      Índice index.html index.php;
      client_max_body_size 1000M; # establecer el tamaño máximo de carga
      # negar acceso directo ubicación ~ ^ /(datos|config|.HT|db_structure.xml|README) {
        negar todo;
      }
      # por defecto pruebe orden ubicación /owncloud {
        try_files $uri $uri / @webdav;
      }
      # OwnCloud WebDAV ubicación @webdav {
        fastcgi_split_path_info ^(.+.PHP)(/.*)$;
        fastcgi_pass unix:/var/run/PHP5-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$ fastcgi_script_name;
        #fastcgi_params HTTPS en;
        incluyen fastcgi_params;
      }
      Ubicación ~ .php$ {
        # directivas para manejar PHP archivos fastcgi_pass unix:/var/run/PHP5-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$ fastcgi_script_name;
        #fastcgi_params HTTPS en;
        incluyen fastcgi_params;
      }
      # dejar todo lo demás al puerto 80
      Alquiler / {
        reescribir ^ http://$sede de $request_uri permanente;
      }
    }
    Servidor {
      Escucha 80;
      nombre_servidor mondomaine.com;
      # raíz, Índice, error_log, directivas access_log root/var/www /;
      Índice index.html index.php;
      client_max_body_size 1000M; # establecer el tamaño máximo de carga
      # redirigir yourdomain.com/shop al puerto 443
      # Por favor pon esto antes de localización / bloque como
      # Nginx se detiene después de ver el primer juego de alquiler /owncloud {
        reescribir ^ https://$sede de $request_uri permanente;
      }
      Alquiler / {
        # pautas para manejar lo que está adentro /, por ejemplo
        # try_files $uri $uri / index.php;
      }
      Ubicación ~ .php$ {
        # directivas para manejar PHP archivos fastcgi_pass unix:/var/run/PHP5-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$ fastcgi_script_name;
        #fastcgi_params HTTPS en;
        incluyen fastcgi_params;
      }
    }
    

    Puede haber cosas para refinar pero funciona bien

  • Halukard

    Hola,

    Gracias por todos estos interesantes super tutorial. Tengo una pregunta, en la finalización de la instalación estaba directorio equivocado en el momento que me sale un error cuando el script de pruebas a ejecutar. He buscado un poco pero no he encontrado qué archivo de configuración se almacena el valor lo pasé para el cambio y poner el camino correcto a mi directorio.

    Si usted sabe o sabe como solucionar esta pequeña “problema” 🙂

    Gracias

    • Hola,
      Es que se trata de directorio base owncloud ? Si este es el caso puede verse en el nivel de la variable open_basedir en el archivo /etc/php/php.ini. Esta es la lista de directorios donde se puede encontrar scripts PHP.

      • Halukard

        En realidad no en la carpeta de datos de campo escribí un directorio equivocado del golpe de estado en la página index.php que me sale un mensaje diciendo que la ruta no existe (Tiempo Boulet).

        Yo miraría esta tarde si encuentro algo en el php.ini, Busqué un poco en php conf archivo en/var/www/owncloud pero no encontré nada significativo.

        Otra pequeña pregunta al paso, No puedo acceder a mi usb con el directorio de la unidad de comando cd (CD/media/sda1/owncloud por ejemplo), Ha sido muy (muy) longtemps que je n’avais pas touché des commandes linux du coup j’ai beaucoup de lacune 🙂

        • No sé si ca no se almacena en la base de datos …. Un vistazo en el foro de owncloud pero de mi parte no tengo ni idea.

        • Para los directorios : se han montado correctamente las particiones ? Con el comando mount.

  • Halukard

    Gracias por la información que he conseguido un dépatouiller, el directorio por defecto se almacena en el archivo /config/config.php

    Maintenant j’ai un soucis de configuration de samba et de subsonic 😀

  • Paul

    Este tutorial parece incompleta. Faltantes pasos… Jāzeps nginx ? En ningún momento dices que debe instalarse.

    • Hola. En realidad no estoy hablando d instalar Nginx. He dejado que si necesitas hay un tutorial para instalar l otro principio. Aquí eso es por lo tanto d instalar Owncloud si tienes Nginx

  • TEF

    Buenas noches,

    Tengo dos preocupaciones cuando yo estoy conectado owncloud:

    Aparece una ventana emergente cada vez que hago clic en un vínculo del menú (archivos, música, contacto, etc.…) Eso me dice “Este contenido no se pudo cargar” y por supuesto cuando cierro esta ventana tengo una barra de progreso (que permanece congelado) indicando “Actualizar la caché del sistema de archivos”.

    Y cuando cambiar algo en el menú en la parte superior derecha (Administración/usuarios/etc.…) No se guarda nada.

    Problema de los derechos una vez más… Pero, dónde? Seco

    • Parece que vienen de Nginx con la nueva versión de Owncloud :

      http://forum.owncloud.org/viewtopic.php?f=23&t=9013&p=22270&hilit=This+content+failed+to+load#p22270

      y

      https://github.com/owncloud/documentation/issues/56#issuecomment-14018008

      • TEF

        Buenas noches,

        Me he perdido…

        De lo que he entendido debe modificar el owncloud archivo en/etc./nginx/sites-available, Eso es todo ?

        Si esto es lo que debe hacer, Fallé (Aparte de cualquier planta…).

        Si otras cosas, Explica el tiempo por qué no puedo…

      • Buenas noches,

        En realidad hay cambios a este nivel (disponible o habilitado debe apuntar al mismo archivo).

        Si yo puedo referai la instalación con la nueva versión para ver lo que sucede.

  • TEF

    Funciona o.

    Merci beaucoup 🙂

    De hecho estaba casi…

    Esto es lo que ha funcionado para mí con la versión 5.0.4 para owncloud :

    Necesidad de editar el archivo/etc/nginx/sitios-disponible/owncloud sólo poner el código en esta dirección : https://github.com/owncloud/documentation/blob/master/admin_manual/installation/installation_others.rst

    Y cambiar las siguientes líneas :

    1- el nombre del servidor (PRECAUCIÓN aparece en dos lugares) -> owncloud nombre_servidor;

    2- el puerto ssl -> Escucha 8091 SSL;

    3- la ubicación y el nombre de certificados :

    -> ssl_certificate /etc/nginx/certs/owncloud.crt;

    -> ssl_certificate_key /etc/nginx/certs/owncloud.key;

    4- la raíz -> raíz /var/www/owncloud;

    Y eso es todo. Realmente no era complicado. Soy una bala de cañón…

    Espero que servirá a otras personas que como yo no tienen el hábito de jugando.

    PS : Y bastante me gustaría dar las gracias a Chris por su paciencia y su gran obra.

    • Muchas gracias por la info (y tú eres quien ha hecho todo ! 🙂 )

      Artículo actualizado actualizado !

  • Thomas

    Buenas noches,

    Tengo el tutorial con nuevos datos, Tuve el famoso error “Este contenido no se pudo cargar “, Ahora cuando entro https:// :8091 Ya veo “502 Bad Gateway nginx/1.2.1” en la página del navegador demonio. Sin embargo he activo el sitio con “ln -s /etc/nginx/sites-available/owncloud /etc/nginx/sites-enabled/owncloud” ¿Tienes una idea ?

    Atentamente

    • ¿Qué es la envoltura de FastCGI es bueno lanzado ? Porque generalmente la puerta de entrada es este programa. También hay más información en /var/log/nginx/.log

  • Thomas

    Hice el comando “PS - ef ” y si la envoltura FastCGI es el proceso de “fcgiwrap” Así que, sí bien lanzado : ” www - data 1876 1 0 20:54 ? 00:00:00 /usr/sbin/fcgiwrap”

    en el registro /var/log/nginx/error.log :

    2013/04/12 21:08:42 [error] 2525#0: *5 conectar() No se pudo (111: Conexión se negó) mientras se conectan a contracorriente, cliente: 192.168.1.30, Servidor: OwnCloud, petición: “Obtener / HTTP/1.1”, upstream: “FastCGI://127.0.0.1:9000”, host: “192.168.1$

    Se menciona de hecho el fastcgi.

  • Isador

    Hola,

    Tengo el mismo error que usted, Thomas.

    En realidad se trata de la línea “fastcgi_param 127.0.0.1:9000”

    Debe reemplazarse por esta línea usar php5-fpm (como en la conf de la base de datos tutorial, A propósito) :

    “fastcgi_pass unix:/var/run/PHP5-fpm.sock;”

  • TEF

    ARF lo siento…

    En realidad he olvidado esta línea en mi solución.

    Isador gracias

    • Thomas

      Gracias, les gars tout fonctionne parfaitement 🙂

  • Marc

    Gracias por el tutorial y los detalles de Isidor

    Si como yo, Después de varios intentos se obtiene el siguiente error : “Nginx: [EMERG] bind() Para 0.0.0.0:80 No se pudo (98: Dirección ya en uso)” Al reiniciar el servidor, Le aconsejo que vaya a esta dirección : http://ibnuyahya.com/nginx-emerg-bind-to-0-0-0-080-failed-98-address-already-in-use/ . Solucionó mi problema.

    Además, la última versión de owncloud es descargable a través de los enlaces proporcionados en el changelog : http://owncloud.org/releases/Changelog

  • Hola ,

    Después de seguir el tutorial al pie de la letra, Me da este error :

    root@raspberrypi:~ # sudo reiniciar el servicio nginx

    Recomienzo nginx: Nginx: [EMERG] SSL_CTX_use_certificate_chain_file(“/etc/SSL/nginx/certs/owncloud.CRT”) No se pudo (SSL: error:02001002:Biblioteca del sistema:fopen:Nº tal error de archivo o directorio:20074002:Rutinas de BIO:FILE_CTRL:Error del sistema lib:140DC002:Rutinas de SSL:SSL_CTX_use_certificate_chain_file:Lib sistema)

    Nginx: prueba de /etc/nginx/nginx.conf de archivo de configuración fallado

    He intentado reconstruir los certificados : como dice aquí : http://geekmps.fr/linux-categorie/251-installer-owncloud-5-sous-nginx

    Pero nada que ver siempre me da este error, Tendrías una idea de dónde podría vendrá?

    (Estoy en frambuesa modelo B, Moebius 1.1.0, OwnCloud 5.0.4, instalación de nginx siguiendo tu tutorial)

    • Hola,
      Existe el archivo /etc/ssl/nginx/certs/owncloud.crt ? Tampoco se define en otro directorio ?
      Pronto, yo a rehacer el tutorial Owncloud con versión 5 😉

      • Tengo el siguiente comando : Buscar - nombre *.crt

        Pero no me encuentra nada.

        Incluso he probado un “Nano /etc/ssl/nginx/certs/owncloud.crt”

        Pero me deja un archivo en blanco..

        • Has hecho bien las etapas de generación de certificados ?

  • Tengo el siguiente comando : Buscar - nombre *.crt

    Pero no me encuentra nada.

    Incluso he probado un “Nano /etc/ssl/nginx/certs/owncloud.crt”

    Pero me deja un archivo en blanco..

  • vincentpaulet

    Sí me ve intentó generar siguiendo atentamente el procedimiento por lo menos 3/4 veces. J soy llegar incluso a la tt desinstalar aany otra vez, Pero nada que ver, j todavía tengo este error.

    • Una vez generado intentaste Owncloud punto sobre estos archivos o copiarlos al directorio donde ellos buscará el servidor ?
      Tengo la impresion que hay un problema entre donde sus certificados y donde les esperan nginx

  • ___ Sí, Tienes razón, Encuentro la causa del problema, un error en la dirección de los certificados en el archivo : /etc./nginx/sitios-disponible/owncloud.

    Rfgido ' tenía entonces este error cuando el reinicio Nginx :

    Nginx: [EMERG] Zócalo() [::]:80 No se pudo (97: Familia de direcciones no compatible con el protocolo)

    Nginx: prueba de /etc/nginx/nginx.conf de archivo de configuración fallado

    que resolví comentando, en el archivo/etc/nginx/sitios-disponible/default, la línea :

    #Escucha [::]:80 default_server ipv6only = on; ## Escucha para ipv6

    _Underme conecta a owncloud (5.0.4 Dije porque usé el archivo github en el enlace de EFT) : Entonces tengo un error 502 “Bad Gateway”.

    a la luz de la actual Cumbre comentarios, He mirado en el archivo : /línea etc./nginx/sitios-disponible/default : “fastcgi_param 127.0.0.1:9000”.

    Pero ella ya fue comentada …..

    Entonces miré en el siguiente archivo : /etc./nginx/sitios-disponible/owncloud

    Ubicación ~ ^(.+?.PHP)(/.*)?$ {

    try_files $1 = 404;

    incluyen fastcgi_params;

    fastcgi_param SCRIPT_FILENAME $document_root$ 1;

    fastcgi_param PATH_INFO $2;

    fastcgi_param HTTPS en;

    fastcgi_pass 127.0.0.1:9000;

    # O usar Sockets unix con ' fastcgi_pass unix:/var/run/PHP5-fpm.sock;’

    Me di cuenta que era la línea aquí también. Para eliminar este error 502 Entonces modifiqué este :

    fastcgi_param HTTPS en;

    #fastcgi_pass 127.0.0.1:9000;

    fastcgi_pass unix:/var/run/PHP5-fpm.sock;

    Y ahora funciona !! Gracias por tu ayuda Chris

    • Realmente necesitamos que consolida todos sus comentarios para hacer un tutorial para Owncloud 5 ! 🙂
      Gracias por la Info

      • Bob

        +1

        Si en plus tu peux mettre quelques mots sur la mise à jour 🙂

  • Nuevo tutorial con la versión 5.0.6 ! 🙂

  • Crozy

    Hola, Gracias por ser tuto su mercado de niquel. Sin embargo cómo instalar otro sitio junto a como por ejemplo Webmin o transmisión ? ¿Qué posición debería hacer cambiar ?

    Gracias

    • Hola,
      Debe configurar otros sitios en Nginx. Normalmente tengo un puerto diferente por sitio para distinguirlos. Sucede en/etc/nginx sitios habilitados /. Puede crear un nuevo archivo cambiando el puerto de audición.

Popular destinations