404!
Tu número de la suerte!
(Servidores Web)
SO, Web Server, DataBase server,
language.
Web Servers:
1. Apache Tomcat (http://www.apache.org)
2. Lighttpd (http://www.lighttpd.net)
3. nginx (http://www.nginx.net)
DataBase server:
1. Mysql (http://www.mysql.com)
2. Sqlite (http://www.sqlite.org)
3. PostgreSQL (http://www.postgresql.org)
Languages:
1. Php
2. Python
3. Perl
http://www.netcraft.com
¿Con cuál nos quedamos?
APACHE...
# aptget install apache2 apache2doc apache2mpmprefork
apache2utils sslcert
• "El MPM «prefork» proporciona una implementación sin hilos
que gestiona las peticiones de manera similar a Apache 1.3.
No es tan rápido como los modelos con hilos, pero se
considera más estable."
• ab (herramienta de medición del rendimiento de Apache)
logresolve (Resuelve direcciones IP a nombres de máquina
en los archivos de registro).
htpasswd (Manipula archivos de autenticación básica).
htdigest (Manipula archivos de autenticación con «hash»).
• Para generar certificados SSL.
Apache
• Configuración dividida en 3 secciones
o Configuraciones al proceso (global environment)[1].
o Configuraciones de respuesta por defecto para los
dominios, y virtual hosts[2].
o Configuraciones de virtual hosts para "atender" diferentes
(/etc/apache2/apache2.conf[1]
/etc/apache2/conf.d/[2]
/etc/apache2/sitesavailable[3])
dominios[3].
o http://httpd.apache.org/docs/2.2/mod/quickreference.html
• Por defecto apache define que estas configuraciones están
en /etc/apache2/httpd.conf excepto en Lihuen
/etc/apache2/apache2.conf
1. ServerRoot "/etc/apache2" //Directorio donde se almacenara
2. Timeout 300 //Tiempo de espera en segundos para enviar
la configuración del servicio.
un Time out en la conexión.
3. KeepAlive On //Para tener conexiones persistentes o no
(http 1.0).
4. MaxKeepAliveRequest 100 //Cantidad de solicitudes cuando
KeepAlive esta activado.
5. KeepAliveTimeout 15 //Tiempo de espera para respuesta a
un cliente en la misma conexión.
<IfModule mpm_prefork_module>
• StartServers //cantidad de procesos cuando se arranca el
servicio.
• MinSpareServers //Idle process ( que no está atendiendo
una respuesta).
• MaxSpareServer
• MaxClients //Cantidad máxima de clientes a atender.
• MaxRequestsPerChild //Cantidad máxima de consultas por
proceso, 0 = infinito, cuando se cumpla el valor, el proceso
morirá.
/etc/apache2/conf.d
• Security
o ServerTokens //Contiene cabeceras que son enviadas al
cliente con información de los módulos compilados.
o ServerSignature //información adicional que permite
mostrar información sobre el servicio.
/etc/apache2/modsavailable/dir.conf
• Configura los archivos que serán interpretados por el
servidor.
/etc/apache2/sitesavailable/
• En este directorio definiremos todos los sitios que puede
manejar el servidor.
Definiendo VirtualHosts
• <VirtualHost Dirección:Puerto></VirtualHost>
• DocumentRoot //Directorio que almacena el sitio.
• ServerAdmin // Cuenta de correo del responsable del sitio
(utilizada por ServerSignature).
• ServerName //Especifica el nombre y puerto para respuesta
de una petición.
• SeverAlias //Permite nombres alternativos de respuesta.
# aptget install libapache2modphp5 php5 php5mysql
php5mcrypt php5mhash php5gd php5cli php5cgi
#aptget install mysqlserver mysqlclient
Probando....
Php:
Generamos un archivo index.php con la siguiente línea:
<?php phpinfo(); ?>
Mysql:
<?php
$conexion = mysql_connect("localhost", "root",
"unacontraseñasegura");
mysql_select_db("mysql", $conexion);
$consulta = "SELECT User FROM user";
$usuarios = mysql_query($consulta, $conexion);
while ($usuario = mysql_fetch_assoc($usuarios)) {
echo "<strong>".$usuario['User']."</strong> Pass:";
echo "<strong>".$usuario['Password']."</strong><br> ";
}
?>
tunumerodelasuerte.com
Es el momento de poner en marcha un sitio funcional, sin
necesidad de desarrollar todo el código (∙v∙), por lo que
utilizamos algún CMS.
Probando...
1. Configuramos el virtualhost.
2. Como no tenemos un servidor de dns editamos /etc/hosts.
3. Desempaquetamos wordpress.
4. Luego deberemos crear una base de datos para que
http://www.bily.cl/bily/
interactúe con el sitio..
#mysql u root p //Con esto nos conectamos a la base de
datos
#Create database luckynumber; //creamos la base de datos
#Grant all on luckynumber.* to luckyuser@localhost
identified by 'micontraseña';
#Flush privileges;
5. Instalamos wordpress.
Problemas¿?
• Me cambió la dirección ip :(
• Dominios .com.ar
• Quiero un sitio que sea privado
• seguridad
Dirección IP
• http://www.noip.com
• http://www.zoneedit.com
• http://www.dyndns.com
En caso de que tengamos una ip dinámica (dhcp) deberemos
configurar algún servicio para redirigir automáticamente.
http://fcomvalores.files.wordpress.com
Protegiendo la intimidad
• Configuramos .htaccess
AuthName "Restricted Area"
AuthType Basic|Digest
AuthUserFile /var/www/tunumerodelasuerte/.htpasswd
require validuser
• Generamos el .htpasswd
OUCH!!! tráfico inseguro..!
Al no tener ningún método de seguridad en nuestro servidor,
en caso de acceder de un lugar remoto, nuestros datos
viajarán sin encriptar...
SOLUCIÓN: conexión por https (hyper text transfer protocol
secure)
https://www.startssl.com/?app=1
Habilitando SSL
Por defecto en Lihuen, la configuración para ssl viene incluída
(/etc/apache2/ports.conf), sólo hace falta habilitar el módulo de
apache #a2enmod ssl y crear los certificados.
#openssl req new x509 nodes out
/etc/ssl/certs/lamp.com_self.crt keyout
/etc/ssl/private/lamp.com_self.key
editamos /etc/apache2/sitesavailable/defaultssl
y ya disponemos de una conexión con cifrado a nivel de capa
de transporte.
¿Preguntas?
Están todo invitados a la 1º Reunión del Plug.
Lugar: Duff (2 y Diag 73)
Hora: 20:00
GRACIAS!!
[email protected]
http://lihuen.linti.unlp.edu.ar/foros
Comentarios de: 404! Tu número de la suerte! (Servidores Web) (0)
No hay comentarios