Foro de elhacker.net

Sistemas Operativos => GNU/Linux => Mensaje iniciado por: PeGaSs0 en 3 Febrero 2015, 18:40 pm



Título: Dudas con Apache2 y Debian 6.0
Publicado por: PeGaSs0 en 3 Febrero 2015, 18:40 pm
Buenas tardes, soy nuevo en este foro y en el mundo de linux en el que me estoy metiendo poco a poco jeje. Me gustaría pedir vuestra ayuda si fuera posible ya que tengo que hacer un proyecto con Apache2 y la verdad no sé por donde meterle mano. Os planteo el caso y ya me decís si podéis echarme un cable, vale? Algunos puntos los tengo "mas o menos" claros pero agradecería toda la ayuda que fuese posible.

** Se configurarán dos host virtuales con los dominios public.seas-linux.es y restricted.seas-linux.es escuchando en el puerto 80.

Host1: public.seas-linux.es   

Configuración:
Directorio raíz: /var/www/public/
Listado de contenidos permitido.
Accesible para cualquier máquina.

Directorio: /var/www/public/tmp/
Listado de contenidos permitido.
Accesible sólo desde la subred del alumno.
Escuchará también en el puerto 443.

Host2: restricted.seas-linux.es

Configuración:
Directorio raíz: /home/<usuario>/
Listado de contenidos permitido.
Accesible solo para los usuarios:
User: admin.
Password: admin.
User: <usuario>.
Password: 1234.
Esta configuración deberá llevarse a cabo sin utilizar el archivo .htaccess.

Gracias por vuestro tiempo.

Un saludo para todos.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: engel lex en 3 Febrero 2015, 18:45 pm
has intentado algo de aquí -> https://www.google.com/search?q=apache2+configurar+hosts+virtuales (https://www.google.com/search?q=apache2+configurar+hosts+virtuales) ?

recuerda.. .el foro es para resolver problemas puntuales y especificos...


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: MinusFour en 3 Febrero 2015, 19:15 pm
No estoy muy seguro de la estructura de apache debajo de Debian-Squeeze. Si es la misma estructura que Debian 7 entonces los vhosts se incluyen en los directorios:

Código:
/etc/apache2/sites-available/
/etc/apache2/sites-enabled/

De ahi es cuestion de configurar las directivas que necesitas...

Código
  1. <VirtualHost *:80 *:443>
  2. #Match a conexiones por puerto 80 y 443.
  3. SeverName dominio.com
  4. #Match a peticiones a dominio.com
  5.  
  6. DocumentRoot /var/www
  7. # Directorio Raiz
  8. Options +Indexes
  9. # Habilitar listado de directorios. -Indexes para deshabilitar.
  10.  
  11. <Directory /var/tmp/>
  12. #Reglas especificas para el directorio /var/tmp
  13. </Directory>
  14. </VirtualHost>

Y para la autentificacion:

https://httpd.apache.org/docs/2.2/howto/auth.html

Las directivas las puedes poner dentro de <Directory></Directory> en lugar de hacer un .htaccess dentro de cada carpeta.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: PeGaSs0 en 3 Febrero 2015, 20:32 pm
Muchas gracias por vuestras rápidas respuestas, seguiré investigando, por lo que veo también tengo que crear un fichero aposta con la directiva para ssl y 443, y otra para el puerto 80, verdad? Las configuraciones las estaba haciendo el httpd.conf pero según me dices parece que es mejor hacerlas en /etc/apache2/sites-available/ y /etc/apache2/sites-enabled/. Estoy modificando el archivo ports.conf que al parecer es necesario para todo esto, el httpd.conf lo descartaré. Las rutas creo que las estaba poniendo mal ya que las hacía a través de /etc/apache2/var.... y lo correcto sería desde la raíz / . Ya os contaré donde termina todo este caos jeje.

Un saludo para todos ;)


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: PeGaSs0 en 9 Febrero 2015, 18:19 pm
Buenas a todos, pues nada, aquí sigo con esto que la verdad me trae de cabeza. Os comento mas o menos lo que voy haciendo y agradecería que orientarais un poco porque la verdad estoy muy perdido.

1. En el archivo ports.conf tengo lo siguiente, no sé si lo tengo bien o mal:

Código
  1. If you just change the port or add more ports here, you will likely also
  2.  
  3. # have to change the VirtualHost statement in
  4. # /etc/apache2/sites-enabled/000-default
  5. # This is also true if you have upgraded from before 2.2.9-3 (i.e. from
  6. # Debian etch). See /usr/share/doc/apache2.2-common/NEWS.Debian.gz and
  7. # README.Debian.gz
  8.  
  9. NameVirtualHost *:80
  10. Listen 80
  11.  
  12.  
  13. <IfModule mod_ssl.c>
  14.    # If you add NameVirtualHost *:443 here, you will also have to change
  15.    # the VirtualHost statement in /etc/apache2/sites-available/default-ssl
  16.    # to <VirtualHost *:443>
  17.    # Server Name Indication for SSL named virtual hosts is currently not
  18.    # supported by MSIE on Windows XP.
  19.    Listen 443
  20. </IfModule>

Ya no sé si tengo que poner lo del NameVirtualHost en mod_ssl.c ya que en teoría el ejercicio te dice que solo una carpeta escucha por el puerto 443, se supone que la carpeta raíz "/var/www/public/" es la que escucha el 80 y la tmp la 80 y el 443, y claro, se debe usar NameVirtualHost dentro de este host virtual? Supongo que no al no tratarse de dos host virtuales diferentes sino de dos carpetas dentro del mismo host virtual, ese es uno de los líos que tengo y no se los ficheros que crear.

2. Los he declarado en mi servidor DNS que hice en una de las prácticas en las zonas directa e inversa con su correspondiente dirección IP ( me recomendaron que la escribiera numéricamente, osease en mi caso 10.0.2.15 ) .

3. A cada directorio le he metido un index.html, no hace falta pero creí conveniente ponerlo para ver más claridad en el funcionamiento, pero veo que al ponerlos igual no entiendo como funciona apache2 y lo que me pide el ejercicio que en teoría son directorios sin mas.

4. En un primer momento me había creado 3 ficheros a partir del default y supongo que del default-ssl para el ejercicio en sites-available ( public443  public80443tmp restricted80) , pretendía hacer un fichero solo para ssl y la carpeta tmp, otro para la unión dentro del mismo host virtual leyendo los puertos 80 y 443 como me pusisteis en la captura anterior pero no sé si esto se puede hacer y si apache lee dos puertos a la vez, de que manera creéis que tengo que separar los ficheros, mas bien, cuantos tendría que crear y de que manera.

5- En teoría todo tendría que ser así: 1 puerto, 1 host, 1 fichero pero es que hay dos host virtuales que leen por el puerto 80 y luego tenemos la famosa carpeta /tmp que ya no sé lo que hacer con ella...

Por último os mostraré una de las pruebas que estaba haciendo con uno de los fichero pero que igual tengo que cambiarlo:

NameVirtualHost *:80  ( Supongo que esto sobra porque apache2 me da un warning aunque no estoy seguro... )
Código
  1. <VirtualHost *:80 *:443> ( Se puede usar apache2 así ? )
  2.        ServerAdmin webmaster@localhost
  3.        ServerName public.seas-linux.es
  4.        ServerAlias www.public.seas-linux.es
  5.        DocumentRoot "/var/www/public/"
  6.        <Directory "/var/www/public/>
  7.                Options +Indexes
  8.                Order allow,deny
  9.                allow from all
  10.        </Directory>
  11.        <Directory "/var/www/public/tmp/"> ( Podría poner puerto aquí o algo especial?
  12.                Options +Indexes
  13.                Order allow,deny
  14.                allow from 10.0.2.0/24
  15.        </Directory>
  16.        ErrorLog ${APACHE_LOG_DIR}/error.log
  17.  
  18.        # Possible values include: debug, info, notice, warn, error, crit,
  19.        # alert, emerg.
  20.        LogLevel warn
  21.  
  22.        CustomLog ${APACHE_LOG_DIR}/access.log combined
  23. </VirtualHost>

Cualquier ayuda será bienvenida, estoy muy perdido. Gracias por vuestro tiempo.

Un saludo.

Mod: Usa las etiquetas correspondientes para codigo.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: MinusFour en 9 Febrero 2015, 19:21 pm
Como te he hecho resaltar en tu edit, tienes ciertos errores con la configuración (no cierras comillas en el primer directory). Si es necesario que tengas dentro de tu ifModule:

Código
  1. NameVirtualHost *:443

Si tienes Apache 2.4 no es necesario que hagas esto. La syntaxis de VirtualHost es correcta:

Código:
Syntax: <VirtualHost addr[:port] [addr[:port]] ...> ... </VirtualHost>
Fuente: http://httpd.apache.org/docs/2.2/mod/core.html#virtualhost

Si necesitas permisos diferentes para cada puerto quizas puedas tener dos entradas de VirtualHost (no lo he probado). La primera para tu puerto 80 y la segunda para tu puerto 443. En el segundo configuras el directorio public para que haga deny from all y en el primer virtualHost lo configuras con las reglas que tienes ahora.

Tus configuraciones de VirtualHost pueden estar en un solo archivo.

Edit: Confusión entre carpetas.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: el-brujo en 9 Febrero 2015, 19:35 pm
Menudo lío xD

En la documentación de Apache lo tienes todo bien explicado

Los vhosts pueden estar basados en nombre (based-name) o en ip (ip-based).

Me explico, si tu máquina tiene una sola ip, pues deberas hacer vhosts basados en nombre, y si tienes varias ips pues puedes elegir.


Código
  1. Listen *:80
  2. NameVirtualHost *:80
  3.  
  4. <VirtualHost *:80>
  5. DocumentRoot /var/www/public/
  6. ServerName public.seas-linux.es
  7. #listado de  conetnidos permitido
  8. <Directory " /var/www/public/">
  9.        Options Indexes
  10. #queda mas chulo
  11.        IndexOptions NameWidth=* FancyIndexing FoldersFirst SuppressLastModified SuppressDescription VersionSort
  12.        AllowOverride None
  13.        Order allow,deny
  14.        Allow from all
  15. <Directory "/var/www/public/tmp/">
  16.        Options Indexes
  17. #queda mas chulo
  18.        AllowOverride None
  19.        Order allow,deny
  20.        Deny from all
  21.        Allow from 10.0.2.0/24
  22. </Directory>
  23. </VirtualHost>
  24.  
  25. # ssl 443
  26. <IfModule mod_ssl.c>
  27.    Include conf/ssl.conf
  28. </IfModule>

Fichero ssl.conf

Código
  1. Listen 443
  2. NameVirtualHost *:443
  3.  
  4. <VirtualHost *:443>
  5. DocumentRoot "/var/www/public/tmp/"
  6. ServerName public.seas-linux.es:443
  7.  
  8. #   SSL Engine Switch:
  9. #   Enable/Disable SSL for this virtual host.
  10. SSLEngine on
  11. #   Server Certificate:
  12. SSLCertificateFile /usr/local/apache2/conf/foro.elhacker.net.crt
  13. #   Server Private Key:
  14. SSLCertificateKeyFile /usr/local/apache2/conf/foro.elhacker.net.key
  15. SSLCertificateChainFile /usr/local/apache2/conf/gd_bundle.crt
  16. #   SSL Cipher Suite:
  17. SSLProtocol all -SSLv2 -SSLv3
  18. SSLHonorCipherOrder on
  19. SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 \
  20. EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 \
  21. EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"
  22. </VirtualHost>  
  23.  
  24. <VirtualHost *:80>
  25. # Directorio raíz: /home/<usuario>/
  26. #
  27. # UserDir: The name of the directory that is appended onto a user's home
  28. # directory if a ~user request is received.
  29. #
  30. UserDir ./
  31. UserDir disabled root
  32. ServerName restricted.seas-linux.es
  33. <Directory /home/*/>
  34.        Options Indexes
  35.        AllowOverride None
  36.        Order allow,deny
  37.        Allow from all
  38.    AuthUserFile /home/admin/htpasswd
  39.    AuthType Basic
  40.    AuthName "Registringido"
  41.    require valid-user
  42. </Directory>
  43.  
  44. </VirtualHost>
  45.  


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: PeGaSs0 en 10 Febrero 2015, 18:14 pm
Buenas tardes chicos, gracias a todos por vuestras respuestas, la verdad me han ayudado bastante a seguir con este proyecto, os comento lo que tengo hasta ahora, tengo dos ficheros creados pero no puedo activarlos con a2ensite, os mando el contenido y haber si podéis guiarme a ver los errores, posiblemente el contenido que tenga alguno de los ficheros no debe estar ahí, no se pueden llamar así los ficheros o no sé. Otra cosa que me gustaría saber que por más que lo leo no entiendo es el significado de SSLCertificateChainFile, los otros dos parámetros si que los he puesto como podréis observar en las configuraciones que os mostraré ahora. La parte de UserDir ./ no le veo claro el funcionamiento pero supongo que es para restringir el acceso a la carpeta root del sistema, pero en este caso concreto no se que es lo que haría. Al intentar habilitar ssl.conf me sale el siguiente error que tendré que intentar corregir:
Enabling site ssl.conf.
Run '/etc/init.d/apache2 reload' to activate new configuration!
root@debian-seas:/etc/apache2/sites-available# /etc/init.d/apache2 reload
[Tue Feb 10 18:10:04 2015] [error] (EAI 2)Name or service not known: Could not resolve host name *443 -- ignoring!
Syntax error on line 29 of /etc/apache2/sites-enabled/ssl.conf:
Invalid command 'UserDir', perhaps misspelled or defined by a module not included in the server configuration
Action 'configtest' failed.
The Apache error log may have more information.
 failed!

Contenido de los ficheros:

public+ssl.conf

  GNU nano 2.2.4                   Fichero: public+ssl.conf                                                

Código
  1. Listen 80
  2. NameVirtualHost *:80
  3. <VirtualHost *:80>
  4.        ServerAdmin webmaster@seas-linux.es
  5.        ServerName public.seas-linux.es
  6.        ServerAlias www.public.seas-linux.es
  7.        DocumentRoot "/var/www/public/"
  8.        <Directory "/var/www/public/">
  9.        Options Indexes
  10.        IndexOptions NameWidth=* FancyIndexing FoldersFirst SuppressLastModified SuppressDescription Versi$
  11.        AllowOverride None
  12.        Order allow,deny
  13.        Allow from all
  14.        <Directory "/var/www/public/tmp/">
  15.        Options Indexes
  16.        AllowOverride None
  17.        Order allow,deny
  18.        Deny from all
  19.        Allow from 10.0.2.0/24
  20.        </Directory>
  21.        ErrorLog ${APACHE_LOG_DIR}/error.log
  22.  
  23.        # Possible values include: debug, info, notice, warn, error, crit,
  24.        # alert, emerg.
  25.        LogLevel warn
  26.  
  27.        CustomLog ${APACHE_LOG_DIR}/access.log combined
  28. </VirtualHost>
  29.  
  30. # Conexion SSL 443
  31. <IfModule mod_ssl.c>
  32.        Include "/etc/apache2/sites-available/ssl.conf"
  33. </IfModule>


ssl.conf

Código
  1. <IfModule mod_ssl.c>
  2. Listen 443
  3. NameVirtualHost *:443
  4. <VirtualHost *:443>
  5.        ServerAdmin webmaster@seas-linux.es
  6.        ServerName public.seas-linux.es:443
  7.        ServerAlias www.public.seas-linux.es:443
  8.        DocumentRoot "/var/www/public/tmp/"
  9.  
  10.        ErrorLog ${APACHE_LOG_DIR}/error.log
  11.  
  12.        # Possible values include: debug, info, notice, warn, error, crit,
  13.        # alert, emerg.
  14.        LogLevel warn
  15.        CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
  16.  
  17. #Aqui indicamos que será un canal cifrado y los certificados que antes creamos, aquí los ubicamos
  18. SSLEngine on
  19. SSLCertificateFile "/etc/ssl/certs/publico.pem"
  20. SSLCertificateKeyFile "/etc/ssl/private/privado.pem"
  21. SSLProtocol all -SSLv2 -SSLv3
  22. SSLHonorCipherOrder on
  23. SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 \
  24. EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 \
  25. EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"
  26. </VirtualHost>
  27.  
  28. <VirtualHost *:80>
  29. UserDir ./
  30. UserDir disabled root
  31. ServerAdmin webmaster@seas-linux.es
  32. ServerName restricted.seas-linux.es
  33. ServerAlias www.restricted.seas-linux.es
  34. DocumentRoot "/home/alumno/"
  35. <Directory "/home/alumno/">
  36. Options Indexes
  37. AllowOverride None
  38. Order allow,deny
  39. Allow from all
  40. AuthType Basic
  41. AuthName "Acceso Restringido a este recurso"
  42. AuthUserFile "/usr/local/apache2/etc/.htpasswd"
  43. Require valid-user
  44. Require user admin alumno
  45. </Directory>
  46. </VirtualHost>
  47. </IfModule>


Ya me vais comentando, seguiré intentando pelearme más con esto, de antemano gracias a todos por vuestra ayuda.

Un saludo!

Mod: Por ultima vez, usa las etiquetas [ code][/ code]


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: MinusFour en 10 Febrero 2015, 18:35 pm
¿Parece ser que no tienes el modulo userdir? ¿o no lo tienes activado?

Código
  1. sudo a2enmod userdir

Y en cuanto a:
Código:
[Tue Feb 10 18:10:04 2015] [error] (EAI 2)Name or service not known: Could not resolve host name *443 -- ignoring!

En alguno de tus sitios debes tener:

Código
  1. <VirtualHost *443>

Que esta mal.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: PeGaSs0 en 10 Febrero 2015, 19:13 pm
Buenas de nuevo, en efecto era el modulo que no lo tenia instalado y he encontrado el error del *443, ahora me encuentro con este error:

(98)Address already in use: make_sock: could not bind to address [::]:443
Action 'start' failed.

A que creéis que es debido? Puede ser algo relacionado con ipv6?

Y no para de salirme el siguiente error relacionado con NameVirtualHost, igual es que no lo tengo que utilizar ya que en los ficheros que pongo el NameVirtualHost no hago referencia dentro de ellos a dos hosts virtuales, realmente solo a uno, puede ser esto cierto?

[Tue Feb 10 19:07:50 2015] [warn] NameVirtualHost *:443 has no VirtualHosts
 ... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[Tue Feb 10 19:07:51 2015] [warn] NameVirtualHost *:443 has no VirtualHosts
(98)Address already in use: make_sock: could not bind to address [::]:443
Action 'start' failed.
The Apache error log may have more information.
 failed!


Esto me está desesperando demasiado, veremos como acaba esto.

Un saludo.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: PeGaSs0 en 10 Febrero 2015, 19:19 pm
Quitando el Listen 443 y el NameVirtualHost *:443 dentro del archivo ssl.conf deja de salirme el error relacionado con el 443 pero me sale este otro:

Enabling site ssl.conf.
Run '/etc/init.d/apache2 reload' to activate new configuration!
root@debian-seas:/etc/apache2/sites-available# /etc/init.d/apache2 restart
Restarting web server: apache2apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Action 'start' failed.
The Apache error log may have more information.
 failed!

Os iré informando.

Un saludo.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: PeGaSs0 en 10 Febrero 2015, 19:39 pm
Buenas de nuevo, os sigo informando como llevo todo esto jeje, he conseguido solucionar algunos de los errores o warning, lo que no se es si de la forma más adecuada.

1. Para el del 127.0.0.1 he creado una línea nueva en el archivo /etc/apache2/httpd.conf llamada ServerName 10.0.2.15 y he reiniciado apache y listo.
2. En el archivo conf.ssl he quitado lo de Listen 443 y NameVirtualHost *:443 y en ports.conf he quitado algo también pero solo lo de NameVirtualHost *:443, he dejado solo el Listen 443.

Ahora me encuentro en la siguiente situación de incertidumbre....

root@debian-seas:/etc/apache2/sites-available# ls
default  default-ssl  public+ssl.conf  ssl.conf
root@debian-seas:/etc/apache2/sites-available# a2ensite ssl.conf
Enabling site ssl.conf.
Run '/etc/init.d/apache2 reload' to activate new configuration!
root@debian-seas:/etc/apache2/sites-available# /etc/init.d/apache2 restart
Restarting web server: apache2 ... waiting Action 'start' failed.
The Apache error log may have more information.
 failed!
root@debian-seas:/etc/apache2/sites-available#

Tendré que mirar el log de apache, nunca lo he mirado, intentaré interpretarlo para solucionar el error.

Un saludo.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: MinusFour en 10 Febrero 2015, 20:08 pm
No necesitas el IfModule en ssl.conf porque ya lo estas haciendo en public+ssl.conf. Deshabilita ssl.conf y activa public+ssl.conf.

Código
  1. sudo a2dissite ssl.conf
  2. sudo a2ensite public+ssl.conf

Revisa bien que sitios estes cargando en /etc/apache2/sites-enabled:

Código
  1. ls -l /etc/apache2/sites-enabled

Revisa que tengas los Vhosts apropiados habilitados.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: PeGaSs0 en 10 Febrero 2015, 20:33 pm
Buenas de nuevo, he hecho lo que me has dicho MinusFour pero por algún extraño motivo me sale el siguiente mensaje de error:

root@debian-seas:/etc/apache2/sites-available# ls
default  default-ssl  public+ssl.conf  ssl.conf
root@debian-seas:/etc/apache2/sites-available# a2ensite public+ssl.conf
ERROR: No site found matching public+ssl.conf!
root@debian-seas:/etc/apache2/sites-available#

Creéis que es por el signo "+" a la hora de crearlo?

Por cierto, he revisado el log de apache y me devuelve lo siguiente, el caso es que tengo los ficheros .pem en su sitio y localizados....


[Tue Feb 10 19:34:00 2015] [notice] caught SIGTERM, shutting down
[Tue Feb 10 19:34:01 2015] [error] Init: Unable to read server certificate from file /etc/ssl/certs/publico.pem
[Tue Feb 10 19:34:01 2015] [error] SSL Library Error: 218529960 error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag
[Tue Feb 10 19:34:01 2015] [error] SSL Library Error: 218595386 error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error

En fin, algún día terminaré con este calvario sino me pegare un tiro xD.

Un saludo y gracias por vuestra ayuda.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: MinusFour en 10 Febrero 2015, 20:57 pm
¿Como has hecho los certificados? Lo del a2ensite no te preocupes, es solo un soft link a sites-enabled.

Código
  1. sudo ln -s /etc/apache2/sites-available/public+ssl.conf /etc/apache2/sites-enabled/100-public+ssl.conf

Y eso es lo que deberia hacer a2ensite me parece.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: PeGaSs0 en 10 Febrero 2015, 21:24 pm
Os voy comentando cosas, he tenido que cambiarle el nombre al fichero public+ssl porque no me funcionaba con a2ensite, aún sabiendo que a2ensite es un soft link como dices así ya me deja ejecutar el comando. El error actual que tengo parece ser que es sobre el certificado, estoy investigándolo haber si logro arreglarlo. Para la creación del certificado hice lo siguiente escribiendo en la consola, y ya fui creándolo poniendo el país, y demás parámetros.

Código:
openssl req -new -newkey rsa:2048 -nodes -out /etc/ssl/certs/publico.pem -keyout /etc/ssl/private/privado.pem

Voy a cenar, luego sigo con la batalla XD.

Un saludo.

Estado actual de mis archivos ya modificados varias veces para eliminar los warnings:

publicssl.conf

Código:
<VirtualHost *:80>
        ServerAdmin webmaster@seas-linux.es
        ServerName public.seas-linux.es
        ServerAlias www.public.seas-linux.es
        DocumentRoot "/var/www/public/"
        <Directory "/var/www/public/">
        Options Indexes
        IndexOptions NameWidth=* FancyIndexing FoldersFirst SuppressLastModified SuppressDescrip$
        AllowOverride None
        Order allow,deny
        Allow from all
        </Directory>
        <Directory "/var/www/public/tmp/">
        Options Indexes
        AllowOverride None
        Order allow,deny
        Deny from all
        Allow from 10.0.2.0/24
        </Directory>
        ErrorLog ${APACHE_LOG_DIR}/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

# Conexion SSL 443
<IfModule mod_ssl.c>
        Include "/etc/apache2/sites-available/ssl.conf"
</IfModule>

ssl.conf

Código:
<VirtualHost *:443>
        ServerAdmin webmaster@seas-linux.es
        ServerName public.seas-linux.es
        ServerAlias www.public.seas-linux.es
        DocumentRoot "/var/www/public/tmp/"

        ErrorLog ${APACHE_LOG_DIR}/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn
        CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined

#Aqui indicamos que será un canal cifrado y los certificados que antes creamos, aquí los ubicamos
SSLEngine on
SSLCertificateFile "/etc/ssl/certs/publico.pem"
SSLCertificateKeyFile "/etc/ssl/private/privado.pem"
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 \
EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 \
EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"
</VirtualHost>

<VirtualHost *:80>
UserDir ./
UserDir disabled root
ServerAdmin webmaster@seas-linux.es
ServerName restricted.seas-linux.es
ServerAlias www.restricted.seas-linux.es
DocumentRoot "/home/alumno/"
<Directory "/home/alumno/">
Options Indexes
AllowOverride None
Order allow,deny
Allow from all
AuthType Basic
AuthName "Acceso Restringido a este recurso"
AuthUserFile "/usr/local/apache2/etc/.htpasswd"
Require valid-user
Require user admin alumno
</Directory>
</VirtualHost>





Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: MinusFour en 11 Febrero 2015, 00:00 am
Lo que has hecho es un Certificate Signing Request. Con los CSR un CA te puede generar un Certificado. Tu lo que quieres es generar un certificado firmado por ti mismo, no una peticion para un certificado.

Código
  1. openssl req -x509 -sha256 -newkey rsa:2048 -nodes -out /etc/ssl/certs/publico.pem -keyout /etc/ssl/private/privado.pem -days 365


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: PeGaSs0 en 11 Febrero 2015, 18:33 pm
Buenas de nuevo, al final para arreglar el problema del certificado opté por hacer una instalación nueva con otros parámetros y está todo correcto o al menos eso parece jeje solo algunos warnings. El código que usé fue el siguiente:

Código:
mkdir -p /etc/ssl/localcerts
openssl req -new -x509 -days 365 -nodes -out /etc/ssl/localcerts/apache.pem -keyout /etc/ssl/localcerts/apache.key

Lo he probado todo y parece que funciona como debe, usuarios y permisos, ssl y demás.
Ahora me toca integrar ProFTPD y OpenLDAP. Supongo que primer intentaré instalar ProFTPD ( espero que no me cueste mucho ) y luego a lo visto hay que integrar OpenLDAP con Apache y ProFTPD. Intentaré hacerlo como pueda pero sino os importa abro un nuevo post y vamos comentando el resto de la instalación.

Muchas gracias por vuestro tiempo y ayuda.

Un saludo.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: MinusFour en 11 Febrero 2015, 18:46 pm
No estoy seguro que sea necesario -new o si haga algo que no deba. Tecnicamente son dos cosas diferentes lo que hacen X509 y new.

Código:
       -new
           this option generates a new certificate request. It will prompt the user for the relevant field values. The actual fields prompted for and their maximum and minimum sizes are specified in the
           configuration file and any requested extensions.

           If the -key option is not used it will generate a new RSA private key using information specified in the configuration file.

       -x509
           this option outputs a self signed certificate instead of a certificate request. This is typically used to generate a test certificate or a self signed root CA. The extensions added to the certificate
           (if any) are specified in the configuration file. Unless specified using the set_serial option 0 will be used for the serial number.


Título: Re: Dudas con Apache2 y Debian 6.0
Publicado por: PeGaSs0 en 16 Febrero 2015, 18:18 pm
Este tema está solucionado en principio salvo algunos warnings aparentemente relacionados con SSL, supongo que porque no están firmados los certificados. Si lo creeis conveniente cerrar el tema, sino dejadlo abierto para que la gente comente.

Un saludo.