dns apache-ssl
DESCRIPTION
Configuración básica y completa para poner en marcha un servidor HTTP(S) con Apache, con DNS y SSL.TRANSCRIPT
DNS + HTTP +
HTTPS (SSL)Autor: Henry Renderos
Organización: Universidad de El Salvador
Departamento de Ingeniería y Arquitectura
Facultad Multidisciplinaria de Occidente
Santa Ana – El Salvador - CA
Este documento no está estructurado con una explicación detallada de cada uno de los elementos de los protocolos, sino nada más para establecer la configuración básica para hacer funcionar un servidor Web con DNS y Certificados Ssl.Todo el software utilizado es Software Libre.
– Debian Wheezy– Apache2– Bind9– OpenSSL
EN COLOR GRIS 10%, COMANDOS EN LA TERMINAL
EN COLOR GRAFICO 8 LAS SECCIONES
EN COLOR AZUL 9, TEXTO DEL ARCHIVO DE CONFIGURACIÓN
INSTALACIÓN Y CONFIGURACIÓN
NOTA: si no tienes una conexión IPv6 deberás usar un túnel creando primero una cuenta en http://www.gogo6.com/ y añadirte al servidor de Montreal o Amsterdam.
También recuerda l as herramientas y comandos.# ifconfig# dig x direcciónIPv6# dig tudominio.com.sv AAAA
[gogoc]# aptget install gogoc
CONFIGURACIÓN [gogoc]# nano /etc/gogoc/gogoc.conf************************************************.........userid=tuUsuarioDeGogo6passwd=tuContraseñaDeGogo6......server=authenticated.freenet6.net......auth_method=pl ain************************************************
[bind9]# aptget install bind9# aptget install dnsutils
CONFIGURACIÓN [bind]# nano /etc/bind/named.conf.local************************************************zone "tudominio.com.sv" { type master; fil e "/etc/bind/db.tudominio";};
zone //Col oca acá tu dirección ipv6 sin el úl timo nibbl e"0.0.0.0.0.0.0.0.0.0.0.0.b.0.0.0.0.0.0.1.0.c.5.0.1.0.0.2.ip6.arpa" { type master; fil e "/etc/bind/db.revtudominio";};************************************************
# nano /etc/bind/db.tudominio************************************************;; BIND data fil e for tun interface;$TTL 604800@ IN SOA tudominio.com.sv. admin.tudominio.com.sv. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL;@ IN NS tudominio.com.sv.@ IN AAAA 2001:5c0:1000:b::cf49 ;ipv6 de l a interfaz tundns1 IN AAAA 2001:5c0:1000:b::cf49 ;ipv6 de l a interfaz tun*************************************************
# nano /etc/bind/db.revtudominio*************************************************;; BIND reverse data fil e for tun interface;$TTL 604800@ IN SOA tudominio.com.sv. admin.tudominio.com.sv. ( 1 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL;@ IN NS tudominio.com.sv.9.4.f.c IN PTR tudominio.com.sv.;9.4.f.c es el úl timo nibbl e de nuestra dirección ipv6 de l a interfaz tun**************************************************
Recargamos y reiniciamos el servidor DNS# /etc/init.d/bind9 reload# /etc/init.d/bind9 restart
[apache]# aptget install apache2mpmprefork# aptget install apache2utils
CONFIGURACIÓN [apache]# nano /etc/apache2/ports.conf***************************************************#[ipv6 de l a interfaz tun]:puertoNameVirtual Host [2001:5c0:1000:b::cf49]:80Listen 80
<IfModul e mod_ssl .c> # If you add NameVirtual Host *:443 here, you wil l al so have to change # the Virtual Host statement in /etc/apache2/sites-avail abl e/defaul t-ssl # to <Virtual Host *:443> # Server Name Indication for SSL named virtual hosts is currentl y not # supported by MSIE on Windows XP. Listen 443</IfModul e>
<IfModul e mod_gnutl s.c> Listen 443</IfModul e>****************************************************
- Desabil itamos l os 2 sitios por defecto (defaul t y defaul t-ssl )# a2dissite default# a2dissite defaultssl# /etc/init.d/apache2 reload# /etc/init.d/apache2 restart
copiamos l os dos archivos (defaul t y defaul t-ssl ) para tener un ejempl o# cp /etc/apache2/sitesavailable/default /etc/apache2/sitesavailable/tudominio# cp /etc/apache2/sitesavailable/defaultssl /etc/apache2/sitesavailable/tudominiossl
# nano /etc/apache2/sitesavailable/tudominio*****************************************************# [ipv6 de l a interfaz tun]:puerto<Virtual Host [2001:5c0:1000:b::cf49]:80> ServerAdmin [email protected]
# Nombre del servidor ServerName tudominio.com.sv
# Lugar donde guardarás el sitio DocumentRoot /var/www/tudominio/publ ic_html /
# Archivos de l og ErrorLog /var/www/tudominio/l ogs/error.l og CustomLog /var/www/tudominio/l ogs/access.l og combined</Virtual Host>******************************************************
- Creamos l os directorios del archivo anterior# mkdir /var/www/tudominio# mkdir /var/www/tudominio/public_html# mkdir /var/www/tudominio/logs
- Creamos un sitio web sencil l o con nombre index.html # nano /var/www/tudominio/public_html/index.html*******************************************************<html ><head><titl e>Tu Dominio</titl e></head><body><h1>Es mejor si es Software Libre</h1></body></html >*******************************************************
- Habil itamos el sitio# a2ensite tudominio# /etc/init.d/apache2 reload# /etc/init.d/apache2 restart
[openssl ]
# aptget install openssl# aptget install sslcert
- Creamos l a l l ave# openssl genrsa 2048 > /etc/ssl/private/nombrellave.key
- Modificamos l os propietarios y permisos# chown root:ssl cert/etc/ssl/private/nombrellave.key# chmod 640 /etc/ssl/private/nombrellave.key
- Con l a l l ave, creamos el certificado# openssl req new x509 nodes sha1 days 365 key nombrellave.key > /home/usuario/certificado.pem- Nos pedirá al guna información para compl etar l a información del Certificado
[Apache - HTTPS]
# nano /etc/apache2/sitesavailable/tudominiossl*********************************************************<IfModul e mod_ssl .c># [IPv6 de l a interfaz tun]:puerto<Virtual Host [2001:5c0:1000:b::cf49]:443>
ServerAdmin [email protected] tudominio.com.svDocumentRoot /var/www/tudominio/publ ic_html <Directory />
Options Fol l owSymLinksAl l owOverride None
</Directory>
<Directory /var/www/tudominio/publ ic_html >Options Indexes Fol l owSymLinks Mul tiViewsAl l owOverride NoneOrder al l ow,denyal l ow from al l
</Directory>ScriptAl ias /cgi-bin/ /usr/l ib/cgi-bin/<Directory "/usr/l ib/cgi-bin">
Al l owOverride NoneOptions +ExecCGI -Mul tiViews +SymLinksIfOwnerMatchOrder al l ow,denyAl l ow from al l
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.l ogLogLevel debug
CustomLog ${APACHE_LOG_DIR}/ssl _access.l og combinedSSLEngine on# ACA VAN LAS DIRECCIONES DE LA LLAVE Y DEL CERTIFICADOSSLCertificateFil e /home/usuario/certificado.pemSSLCertificateKeyFil e /etc/ssl /private/nombre-l l ave.key
<Fil esMatch "\.(cgi|shtml |phtml |php)$">SSLOptions +StdEnvVars
</Fil esMatch><Directory /usr/l ib/cgi-bin>
SSLOptions +StdEnvVars</Directory>BrowserMatch "MSIE [2-6]" \
nokeepal ive ssl -uncl ean-shutdown \downgrade-1.0 force-response-1.0
BrowserMatch "MSIE [17-9]" ssl -uncl ean-shutdown</Virtual Host></IfModul e>*************************************************************
- Habil itamos el sitio con ssl # a2ensite tudominiossl# /etc/init.d/apache2 reload# /etc/init.d/apache2 restart
– Con esto ya podríamos probar nuestros 2 sitios
http://tudominio.com.svhttps://tudominio.com.sv