Creación de hosts virtuales, generación de certificados y claves SSL y habilitación de CGI Gateway en Gentoo Linux

Creación de hosts virtuales, generación de certificados y claves SSL y habilitación de CGI Gateway en Gentoo Linux

El último tutorial sobre Instalar LAMP en Gentoo Linux acaba de cubrir el proceso de instalación básico sin configuraciones adicionales disponibles para Apache para controlar mejor sus dominios.

 Crear hosts virtuales Apache en Gentoo Crear hosts virtuales Apache en Gentoo Crear hosts virtuales Apache en Gentoo

Este tutorial está estrictamente conectado con el anterior en Gentoo LAMP y analiza la configuración adicional para el entorno LAMP , como crear hosts virtuales en Apache, generar archivos y claves de certificados SSL , habilitar la seguridad SSL protocolo en transacciones HTTP y use Apache CGI Gateway para que pueda ejecutar secuencias de comandos Perl o Bash en su sitio web.

Requisitos

  1. Instale LAMP en Gentoo Linux

Paso 1: Cree hosts virtuales Apache

Este tema usa un nombre de dominio falso- gentoo.lan : habilitado a través del archivo de hosts local, con archivos de sitios web servidos desde /var/www/gentoo.lan DocumentRoot directiva, sin un DNS record, para demostrar cómo se pueden habilitar múltiples hosts virtuales en Gentoo usando el servidor web Apache.

1.. Para comenzar, abra el archivo de hosts de Gentoo para editarlo y agregar un nuevo línea con su nombre de dominio.

$ sudo nano/etc/hosts

Al final del archivo, haga que se vea similar a esto.

127.0.0.1 localhost gentoo 192.168.1.13 gentoo.lan  Agregar nombre de dominio en el archivo de hosts  Agregar nombre de dominio en el archivo de hosts Agregar nombre de dominio en el archivo de hosts

2.. Pruebe su dominio falso con el comando ping y el dominio debería responder con su IP habla a.

$ ping-c2 gentoo.lan  Verificar nombre de dominio  Verificar nombre de dominio Verificar nombre de dominio

3.. El proceso para activar Apache Virtual Hosts es bastante simple. Simplemente abra el archivo de hosts virtuales predeterminado de Apache ubicado en la ruta /etc/apache2/vhosts.d/ y antes de la última instrucción , ingrese su nueva definición de host virtual incluida en directivas. c

Contiene su configuración personalizada como ServerName y la ruta de DocumentRoot . Utilice la siguiente plantilla de archivo como guía para un nuevo host virtual e inclúyala en el archivo 00_default_vhost.conf (para sitios web que no son SSL).

$ sudo nano/etc/apache2/vhosts. d/00_default_vhost.conf ## Otros estados de hosts virtuales que terminan en ### ServerName gentoo.lan DocumentRoot “/var/www/gentoo.lan” ServerEnvironment apache apache ## Otros estados de hosts virtuales ### ## ÚLTIMO DECLARACIÓN que cierra el archivo de hosts virtuales ##  Crear Apache Virtual Host  Crear servidor virtual Apache Crear Apache Virtual Host en Gentoo

Como puede ver al visualizar el contenido de este archivo, el archivo está muy comentado con explicaciones y también mantiene la definición de localhost Virtual Host, que puede usar como guía.

4.. Después de terminar de editar el archivo con su V personalizado irtual Host, reinicie Apache para aplicar la configuración y asegúrese de crear el directorio DocumentRoot en caso de que haya cambiado esta directiva y la ruta no exista por defecto (en este caso se cambió a /var/www/gentoo.lan ). También he creado un pequeño archivo PHP para probar las configuraciones del servidor web.

$ sudo mkdir/var/www/gentoo.lan $ su “echo ‘‘>/Var/www/gentoo.lan/info.php “$ sudo/etc/init.d/apache2 reiniciar

5.. Para verificarlo, abra un navegador y apunte su nombre de dominio virtual http://gentoo.lan/info.php .

Verificar configuración de PHP Verificar configuración PHP Verificar la configuración de PHP

Con este procedimiento, puede agregar tantos sitios web que no sean SSL como desee utilizando Apache Virtual Hosts, pero para una máquina real que se enfrenta a Internet, asegúrese de tener sus dominios registrados y de utilizar registros válidos del servidor DNS.

Para eliminar un host virtual, simplemente comente o elimine sus directivas incluidas en en el archivo 00_default_vhost.conf .

Paso 2: Genere certificados SSL y claves para hosts virtuales

SSL es un protocolo criptográfico que se utiliza para intercambiar información a través de un canal de comunicación seguro en Internet o redes internas mediante certificados y claves simétricas/asimétricas. .

6.. Para simplificar la generación de certificados y claves ion use el siguiente script Bash que actúa como un comando y crea automáticamente todo lo que necesita con la configuración de su nombre de dominio SSL.

Primero comience creando un script Bash con el siguiente comando.

$ sudo nano/usr/local/bin/apache_gen_ssl

Agregue el siguiente contenido de archivo.

#!/bin/bash mkdir/etc/apache2/ssl cd/etc/apache2/ssl echo-e “Ingrese un nombre para esto certificate: \ nEx: mydomain.lan “leer cert openssl genpkey-algorithm RSA-pkeyopt rsa_keygen_bits: 2048-out $ cert.key chmod 600 $ cert.key openssl req-new-key $ cert.key-out $ cert.csr openssl x509-req-days 365-in $ cert.csr-signkey $ cert.key-out $ cert.crt echo-e “¡Se ha generado el certificado $ cert! \ n¡Envíelo al sitio web de Apache SSL!” ls-all/etc/apache2/ssl/exit 0  Crear script Bash para generar SSL  Crear script Bash para generar SSL Crear script Bash para generar SSL

7.. Una vez creado el archivo, agregue los permisos de ejecución y ejecútelo para generar claves y certificados SSL.

$ sudo chmod + x/usr/local/bin/apache_gen_ssl $ sudo apache_gen_ssl Generar certificados y claves SSLa  Generar certificados SSL y clavesa Generar certificados SSL y clavesa

Cuando lo ejecuta por primera vez, le pedirá que ingrese su nombre de dominio . Ingrese el nombre de su dominio para el cual genera la configuración SSL y complete el Certificado con la información requerida, la más importante, Nombre común , use el FQDN de su servidor.

La ubicación predeterminada donde se alojan todos sus certificados y claves mediante este método es /etc/apache2/ssl/.

8.. Ahora es el momento de crear gentoo.lan Virtual Host SSL equivalente. Utilice el mismo método que para los hosts virtuales no SSL, pero esta vez editando el archivo /etc/apache2/vhosts.d/00_default_ssl_vhosts.conf con cambios leves.

Primer archivo abierto para editar y realizar los siguientes cambios.

$ sudo nano/etc/apache2/vhosts.d/00_default_ssl_vhosts.conf

Bajo la directiva Listen 443 agregue el siguiente contenido.

NameVirtualHost *: 443 Habilitar puerto HTTPS  Habilitar puerto HTTPS Habilitar el puerto HTTPS

Use la siguiente plantilla para un nuevo host virtual y agregue un nuevo certificado SSL + Ruta clave y nombres.

$ sudo/etc/init.d/apache2 restart Verificar protocolo HTTPS  Verificar protocolo HTTPS Verificar el protocolo HTTPS

Con este procedimiento, puede agregar sitios web SSL con sus propios certificados y claves usando Apache Virtual Hosts. Para eliminar SSL Virtual Hosts comenta o elimina sus directivas incluidas en en el archivo /etc/apache2/vhosts.d/00_default_ssl_vhosts.conf .

Paso 3: Habilite la interfaz CGI

La CGI ( Interfaz de puerta de enlace común ) permite que Apache interactúe con programas externos, el principal consiste en scripts Perl o BASH, que puede agregar un contenido dinámico a su sitio web.

10.. Antes de habilitar la puerta de enlace CGI, asegúrese de que Apache haya sido compilado con USE CGI soporte de banderas de módulos en Archivo make.conf de Portage: cgi cgid . Para habilitar el soporte de GCI para Apache, abra el archivo /etc/conf.d/apache2 y agregue el módulo CGI en la línea APACHE2_OPTS .

$ sudo nano/etc/conf. d/apache2

Asegúrese de que esta línea tenga un contenido similar.

APACHE2_OPTS = “-D DEFAULT_VHOST-D INFO-D SSL-D SSL_DEFAULT_VHOST-D LANGUAGE-D STATUS-D CGI”  Habilitar CGI para Apache  Habilitar CGI para Apache Habilitar CGI para Apache

11.. Después de habilitar los módulos CGI, abra el host de definición de su sitio web en el que desea habilitar la interfaz CGI y agregue el siguiente contenido dentro de las directivas de Virtual Host.

Leave a comment

Your email address will not be published. Required fields are marked *