Configuración de Apache seguro

INTRODUCCIÓN

En este tutorial vamos a descubrir como configurar nuestro Apache para que sea seguro utilizando Ubuntu 9.10.

Leer Más…

Instalación y Configuración de Dansguardian

INTRODUCCIÓN

En este tutorial descubriremos como instalar y configurar Dansguardian. Dansguardian es un filtro de contenido que usa Squid (instalado anteriormente) u otro proxy cualquiera. Dansguardian puede filtrar por URL, dominio, según la extensión de los archivos o según las palabras que contenga la página web que deseemos abrir. Vamos a configurar Dansguardian de forma que aparezca una plantilla de los mensajes de error de acuerdo a nuestra necesidad y filtraremos el contenido por URL, extensión,  IP y por palabras.

PASOS A SEGUIR

1.- Instalación de Dansguardian, para ello ejecutamos en el terminal:

sudo aptitude install dansguardian

2.- Hacemos una copia de seguridad del archivo de configuración de Dansguardian. Para ello ejecutamos:

sudo cp /etc/dansguardian/dansguardian.conf{,.original}

3.- Cambiamos la plantilla que aparece cuando no nos permite descargar un archivo, etc. Para ello ejecutamos:

sudo gedit /etc/dansguardian/languages/spanish/template.html

Una vez abierto, ya podemos cambiar en el documento html los parámetros que queramos, una vez editado, lo guardamos y listo.

Si queremos ver como quedaría podemos escribir en la barra de nuestro navegador la ruta anterior asta el archivo y veremos como queda nuestra plantilla, la mía ha quedado así:

4.- Ahora vamos a modificar las URL, dominios, etc. Para ello  debemos editar cada uno de los archivos que utiliza Dansguardian para este fin y escribir dentro la directiva. Para editar cada archivo ejecutamos:

sudo gedit /etc/dansguardian/lists/

Después de la ultima barra de la línea anterior escribiremos alguna de las siguientes directivas disponibles:

exceptioniplist → lista de IP que no serán filtradas.
exceptionphraselist → palabras o frases que no se filtrarán.
exceptionsitelist → dominios que no se prohibirán.
exceptionurllist → parte de un dominio que no se bloqueará.
exceptionuserlist → usuarios que siempre tendrán acceso.
greysitelist / greyurllist → desbloquea los dominios /partes de los dominios prohibidos con banned pero los seguirá analizando usando el resto de filtros.
pics → configura el filtrado de imágenes.
weightedphraselist → lista de palabras con su correspondiente peso e instrucciones de definición
bannedextensionlist → extensiones de archivos prohibidos.
bannediplist → lista de IP que no van a tener acceso.
bannedmimetypelist → tipos de contenidos no permitidos.
bannedphraselist → palabras o frases prohibidas. Hay ejemplos en /etc/dansguardian/phraselists.
bannedregexpurllist → expresiones prohibidas en URL.
bannedsitelist → bloquea el acceso a un dominio.
bannedurllist → impide el acceso a una parte del dominio.
banneduserlist → usuarios que no van a tener acceso.
contentregexplist → mediante el formato “palabra fea” → “expresión” se puede sustituir unas expresiones por otras.
bannedextensionlist → extensiones de archivos prohibidos.
bannediplist → lista de IP que no van a tener acceso.
bannedmimetypelist → tipos de contenidos no permitidos.
bannedphraselist → palabras o frases prohibidas. Hay  ejemplos en /etc/dansguardian/phraselists.
bannedregexpurllist → expresiones prohibidas en URL.
bannedsitelist → bloquea el acceso a un dominio.
bannedurllist → impide el acceso a una parte del dominio.
banneduserlist → usuarios que no van a tener acceso.
contentregexplist → mediante el formato “palabra fea” →  “expresión” se puede sustituir unas expresiones por otras.

5.- Las modificaciones que yo voy ha hacer son las siguientes.

En el fichero bannedregexpurllist escribimos lo siguiente:


En el fichero bannediplist escribiremos las IP a las cuales queremos denegar el acceso. Mi fichero quedaría así:

En el archivo bannedphraselist escribiremos la palabra, la cual si está en la página que pretendemos visitar se nos denegará el acceso. Quedaría así:

Si todo ha ido bien, debería de aparecernos el mensaje de error en si se dan las situaciones que hemos denegado anteriormente. Quedaría así:

La limitación por ip es la siguiente:

Denegada por dominio:

Denegado por palabra en la URL de la página:

El log de Dansguardian es el siguiente, si tienes algún problema puedes echarle un vistazo a  este log y así tener una idea de que es lo que falla. El log está en /var/log/dansguardian/ y es este:

access.log

Gracias por haber leído mi blog. Si tienes algún problema o pregunta deja tu comentario y será resulta la duda lo antes posible.



Instalación y Configuración de Squid en Ubuntu 9.10

INTRODUCCIÓN

En este tutorial podrás descubrir como instalar y configurar uno de los proxy caché más usados hoy en día que es Squid. Todos los pasos se llevarán a cabo en una máquina con Ubuntu 9.10 instalado.

Leer Más…

Configuración de un Servidor FTP Virtual basado en IP

INTRODUCCIÓN

En este tutorial vamos ha descubrir como crear un Servidor FTP Virtual utilizando ProFTPd de forma que puedan acceder a él, tanto usuarios del sistema como usuarios anónimos, que los usuarios del sistema puedan subir descargar y subir archivos y los anónimos no y también que los usuarios anónimos no puedan explorar nada más de lo que hay en el directorio que le asignaremos.

PASOS A SEGUIR

1.- Lo primero que debemos hacer es crear la tarjeta de red virtual, la cual utilizaremos para entrar a nuestro Servidor FTP. Para ello ejecutamos en un terminal:

sudo ifconfig eth0:2 172.16.100.90 netmask 255.255.0.0

Deberemos sustituir eth0 por la tarjeta de red que tenga nuestro equipo, y la IP por alguna IP que esté sin utilizar en el rango de IP de nuestra red.

2.- Lo siguiente que debemos hacer es configurar nuestro Servidor FTP para que solo permita la lectura y para que admita a los usuarios del sistema. También vamos a configurarlo para que los usuarios al conectarse no puedan subir de directorio, es decir, para que no puedan ver nada más que los archivos que hay en su carpeta. Para ello debemos editar el archivo proftpd.conf ejecutando:

sudo gedit /etc/proftpd/proftpd.conf

Dentro de este archivo añadimos lo siguiente:

<VirtualHost 172.16.100.90>
   DefaultRoot ~
   RequireValidShell on
   TransferLog /var/log/proftpd/ficherossubidos.log
   <Limit LOGIN>
     AllowAll
   </Limit>

  <Anonymous /var/ftp/servidor>
     User ftp
     UserAlias anonymous ftp
     RequireValidShell off
   <Limit LOGIN>
     AllowAll
   </Limit>
  </Anonymous>
</VirtualHost>

Nota:

La directiva RequireValidShell  se utiliza para impedir que puedan entrar los usuarios con shell falsa o para permitirles el acceso.

La directiva TransferLog se utiliza para asignar el directorio donde se guardará el log que almacena los datos sobre transferencia de archivos.

También debemos crear el directorio que le asignamos al usuario anonymous, para ello ejecutamos: sudo mkdir -p /var/ftp/servidor 3.-

También debemos editar el archivo /etc/shells para que los usuarios con shell falsa no puedan entrar a nuestro Servidor FTP, para ello debemos comentar la línea que dice “/bin/false”. Para editarlo ejecutamos:

sudo gedit /etc/shells

Dentro del archivo buscamos la línea mencionada anteriormente y colocamos una # al principio de la línea.

4.- Reiniciamos el Servidor FTP ejecutando:

sudo service proftpd restart

5.- Ya solo nos queda comprobar si ha salido bien y nuestro Sevidor FTP funciona como nosotros queremos. Para ello abrimos nuestro Cliente FTP y usamos un usuario de nuestro sistema, en mi caso utilizaré el usuario “tardes” con su respectiva contraseña. Si todo lo hemos hecho bien saldría de la siguiente forma:

El usuario tardes accediendo correctamente al Sevidor FTP Virtual.

6-. Ahora volvemos a hacer el paso anterior utilizando el usuario “anonymous”.

Quedaría de la siguiente forma:

El usuario anónimo accede correctamente al Servidor FTP Virtual.

7.- Podemos observar en el log de nuestro Servidor FTP que se ha accedido correctamente con los dos usuarios. Para mostrar el log ejecutamos:

 sudo less /var/log/proftpd/profpd.log

Saldría así:

Captura del log en la que se muestran el acceso correcto de los dos usuarios.

8.- Ahora comprobamos que los usuarios del sistema pueden subir archivos. Para ello accedemos al Servidor FTP con nuestro Cliente FTP, en mi caso Filezilla, y probamos a subir algún archivo. Debería salir de la siguiente forma:

El usuario tardes sube archivos satisfactoriamente utilizando Filezilla.

También podemos observar el log que le asignamos en el archivo de configuración para este caso y muestra la subida de los archivos. Para visualizar el log ejecutamos:

  sudo less /var/log/proftpd/ficherossubidos.log

Saldría así:

log creado manualmente en el que se muestra la subida de archivos de forma correcta por el usuario tardes.

Esto es todo, para cualquier duda dejen un comentario y se la resolveré.

ProFTPd – Configuración de un Servidor FTP Anónimo

INTRODUCCIÓN

En este tutorial vamos a descubrir como crear un Servidor FTP anónimo utilizando ProFTPd. Todos los pasos a realizar son muy sencillos he irán acompañados de capturas del proceso para un seguimiento mas ameno. Todo lo haré en una máquina con Ubuntu 9.10 instalado.

PASOS A SEGUIR

1.- Debemos tener instalado en nuestro equipo ProFTPd. Si no lo tienes instalado lo puedes ver como hacerlo en el tutorial anterior.

2.- Abrimos el archivo de configuración de ProFTPd. Para ello abrimos un terminal y ejecutamos:

sudo gedit /etc/proftpd/proftpd.conf

Una vez abierto buscamos la línea  RequireValidShell off que esta comentada, es decir con # delante, la quitamos y ya esta eso resuelto.

3.- Ahora vamos a convertir nuestro Servidor FTP en anónimo, para ello debemos de incluir en el archivo editado anteriormente lo siguiente:

IdentLookups            off

<Limit LOGIN>
DenyAll
</Limit>
<Anonymous /var/ftp/pub>
User ftp
UserAlias anonymous ftp
RequireValidShell off
<Limit LOGIN>
AllowAll
</Limit>

<Limit WRITE>
DenyAll
</Limit>

</Anonymous>

DefaultRoot    /var/ftp

El archivo de configuración quedaría así:

4.- Después de esto, debemos crear el directorio que en el paso anterior hemos asignado al usuario anonymous. Para ello ejecutamos:

sudo mkdir -p /var/ftp/pub

5.- También debemos cambiar los permisos al directorio que alberga los archivos que se podrán descargar desde el Servidor FTP. Para ello ejecutamos:

sudo chmod -R ftp /var/ftp/pub

NOTA IMPORTANTE: Los archivos que queramos subir a la carpeta para que despues la gente pueda descargarselos, debemos colocarlos antes de ejecutar el comando anterior, sino despues no nos permitirá copiar los archivos.

6.-El último paso es reiniciar el servidor y comprobar que todo funciona. Para reiniciarlo ejecutamos:

sudo service proftpd restart

7.- Asi saldría funcionando correctamente y con ejemplos de el error que nos muestra al intentar subir un archivo y también con el log en el que quedan grabados los errores, accesos correctos, etc:

- log de proftpd con el error al intentar entrar con otro usuario distinto al anonymous.

- Error al intentar subir un archivo.

- Error al intentar acceder con un usuario del sistema u otro que no sea anonymous.

- Accediendo correctamente.

- Archivo proftpd.conf configurado para el Servidor FTP Anónimo.

A

Instalación y configuración de ProFTPd

INTRODUCCIÓN

ProFTPd es un servidor FTP. En su página web se muestra como estable y seguro, cuando se configura correctamente. Su fichero de configuración es muy parecido al que posee Apache. Por último decir que su diseño es modular, lo que permite introducir extensiones como cifrado SSL/TLS, RADIUS, LDAP o SQL como ejemplo de algunos módulos.
Todos los pasos los llevaré a cabo desde Ubuntu 9.10.

Leer Más…

INSTALACIÓN DE WEBALIZER EN UBUNTU 9.04

INTRODUCCIÓN

El Webalizer es una aplicación GPL que genera páginas web de análisis de acceso y registros de uso, es decir, es un programa de análisis. Es una de las herramientas de administración más utilizada en servidores web. Fue iniciado por Bradford L. Barrett en 1997. Las  estadísticas de Webalizer incluyen: muestras, visitas, referentes, los países de los visitantes y la cantidad de datos descargados. Estas estadísticas se puede ver gráficamente y presentado por diferentes marcos de tiempo, como por día, hora o mes. Todos los pasos los realizaré desde Ubuntu 9.04 y haré el análisis de la página alojada en un host virtual creado anteriormente.

Leer Más…

Método de atutenticacíon con Apache

INTRODUCCIÓN

En este tutorial vamos a descubrir como crear un método de autenticación mediante Apache cuya función será mostrar una ventana en la cual deberemos introducir un nombre de usuario y contraseña creadas con anterioridad. Este usuario y contraseña se pedirá cuando deseemos acceder a la página web a la cual hayamos añadido el método de autenticación. Todo esto lo haremos utilizando Apache en Ubuntu 9.04.

Leer Más…

CREACIÓN HOSTS VIRTUALES BASADOS EN IP

INTRODUCCIÓN

Crearemos dos hosts virtuales basados en IP utilizando Apache en Ubuntu 9.04, en mi caso solo creo 2 hosts pero podremos ampliar el número de hosts si lo deseamos.

apache

Leer Más…

TUTORIAL. CREACIÓN DE HOSTS VIRTUALES POR NOMBRE

INTRODUCCIÓN

La creación de Hosts Virtuales nos es útil para varias cosas. Un ejemplo sería tener en cada Host Virtual una página web, una de las páginas se vería desde internet y la otra sería igual pero esta sería utilizada para ir retocando cosas o ampliando el contenido, con idea de trabajar en una mientras la otra está publicada.

PASOS

1.- Instalación de Apache. Para ello ejecutamos los siguiente en un terminal:

sudo aptitude install apache2-mpm-prefork

2.- Iniciamos Apache, para ello ejecutamos:

sudo apache2ctl start

3.- Creamos los archivo de configuración en los se indicará la carpeta donde se encuentra el index.html de nuestros Hosts Virtuales. Para ello ejecutamos lo siguiente:

sudo gedit /etc/apache2/sites-available/samux

sudo gedit /etc/apache2/sites-available/juanlux

En mi caso crearé los hosts llamados samux y juanlux pero puede cambiarse el nombre por cualquiera. Dentro de cada archivo tenemos que escribir lo siguiente respectivamente:

<VirtualHost 172.16.2.46>

ServerName www.samux.com

DocumentRoot /var/www/samux

</VirtualHost>

<VirtualHost 172.16.2.46>

ServerName www.juanlux.com

DocumentRoot /var/www/juanlux

</VirtualHost>

cap1

Sustituiremos la IP 172.16.2.46 por la IP de nuestro equipo, y en cada parte que pone samux escribiremos el nombre que hayamos pensado poner a nuestros Hosts Virtuales, guardamos los cambios y cerramos el archivo.

4.- Creamos las carpeta /var/www/samux/ y /var/www/juanlux indicados en el apartado anterior. Para ello ejecutamos lo siguiente:

sudo mkdir /var/www/samux

sudo mkdir /var/www/juanlux

Cambiaremos samux y juanlux por los nombre de nuestros Hosts Virtuales.

cap3

5.- Debemos crear el index.html de cada Host Virtual que hemos creado, para ello ejecutamos lo siguiente:

sudo gedit /var/www/samux/index.html

sudo gedit /var/www/samux/index.html

cap4

Se nos habrirá una archivo vacío, dentro debemos escribir el código html o del tipo que sea de la página que se mostrará.

6.- Ahora nos disponemos a activar los Hosts Virtuales que hemos creado. Para ello ejecutamos:

sudo a2ensite samux

sudo a2ensite juanlux

Al igual que el paso anterior cambiaremos samux y juanlux por los nombres de nuestros Hosts Virtuales.

cap5

7.- Debemos introducir también algunos parámetros en el archivo /etc/apache2/sites-available/default. Para ello ejecutamos en un terminal lo siguiente:

sudo gedit /etc/apache2/sites-available/default

Ahora dentro de este archivo en la primera línea escribimos lo siguiente:

NameVirtualHost 172.16.2.46

cap7

Sustituiremos la IP 172.16.2.46 por la IP de nuestro equipo, guardamos los cambios y cerramos el archivo.

8.- Para que aparezca el index.html de nuestro Host Virtual escribiendo en nuestro navegador web tan solo el nombre de la página debemos hacer algunos cambios en el archivo /etc/hosts. Los cambios son los siguientes:

Editamos el archivo /etc/hosts ejecutando lo siguiente:

sudo gedit /etc/hosts

Dentro de este archivo añadiremos la siguiente línea.

172.16.2.46      www.samux.com        www.juanlux.com

cap6

Sustituiremos la IP por la IP de nuestro equipo y los nombre de los Hosts por los nombre que hayamos dado a nuestros Hosts Virtuales.

9.- Por ultimo debemos reiniciar Apache para que todo funcione, para ello ejecutamos lo siguiente:

sudo apache2ctl restart

10.- Probamos si funciona correctamente y esta bién el trabajo realizado. Para ello abrimos nuestro navegador web y escribimos el nombre del dominio en la barra del buscador. El resultado será correcto si el navegador muestra la página que creamos anteriormente para dicha dirección. En mi caso el resultado sería este:

Página www.juanlux.com

cap8 prac1 t3

Página www.samux.com

cap9 p1 t3

Seguir

Get every new post delivered to your Inbox.