Red Linksys

miércoles, febrero 17th, 2016

En esta práctica, voy a explicar como hacer una red con dos routers  y su conexión.

La finalidad de esta practica sera poder tener acceso a internet así como a un servidor http.

 

El modelo que usaré sera este: WRT54GL

Esquema de la topologia de la red:

fb9d80b4b51198791bcdc9b4b6e946ee

Debemos tener configurado un servidor antes de nada y una vez hecho eso realizaremos la configuración IP de la red.

La red del servidor será la 192.168.0.0,la red entre routers 192.167.0.0 y la red del ordenador la 192.166.0.0.

Configuraremos las ips así como toda la configuración en el packet tracer, si no sabes como se utiliza puedes echar un vistazo aquí.

SERVER:

adc4275eab800df489b9ac4358c2add7

ROUTER 1:

GFG.png

f.png

ROUTER 2:

dfffdf.png

dfdf.png

 

Una vez hecho esto ya solo nos queda abrir los puertos en los routers:

ORDENADOR:

Sin títulogdg.png

Ip del servidor y puerto 80 UDP y TCP.

Con esto debería de ser suficiente para realizar la conexión al servidor.

 

 

ROUTER CISCO: MONTAJE Y CONFIGURACIÓN

martes, febrero 16th, 2016

ROUTER CISCO: MONTAJE Y CONFIGURACIÓN DE UNA RED.

 

En esta practica vamos ha realizar el montaje de una red básica mediante dos routers Cisco.

Tenemos que unir dos redes diferentes así que utilizaremos para ello dos routers Cisco y dos switches para su enlace tal que así

 

asd

Como indica el esquema que he realizado en Packet Tracer, los ordenadores irán directamente conectados a los switches y los switches a los routers mediante cable directo. En este caso como solo tenemos dos routers hemos utilizado un cable serial DCE como el que se muestra a continuación:

 

.                              

Una vez conectado todo empezamos a configurar los routers.

Empezaremos por configurar el primer router, para ello conectaremos un ordenador  mediante un «cable de consola»  o «rollover» con el router numero 1.

Este cable se conecta al puerto serie y a la boca donde marca consola del router.

 

Para  acceder al router utilizamos Putty:

 

asdf

Marcamos la casilla Serial y daremos a Open.

Una vez  dentro seguir  los siguientes pasos siguientes para su configuración.

Añadir que las IPS y configuraciones que he usado son inventadas.

  • Cambiar nombre de router

Router> enable
Router# configure terminal
Router(config)# hostname [nuevo nombre del router]

  • Configurar mensaje de bienvenida

Router> enable
Router# configure terminal
Router(config)# banner motd *[mensaje de bienvenida]*

 

  • Configurar contraseña  modo privilegiado

Router> enable
Router# configure terminal
Router(config)# enable password [clave]
Router(config)# enable secret [clave]

  • Configurar acceso por consola

Router> enable
Router# configure terminal
Router(config)# line console 0
Router(config-line)# login
Router(config-line)# password [clave]

  • Configurar acceso telnet

Router> enable
Router# configure terminal
Router(config)# line vty 0
Router(config-line)# login
Router(config-line)# password [clave]

  • Configurar puerto auxiliar 

Router> enable
Router# configure terminal
Router(config)# line aux 0
Router(config-line)# login
Router(config-line)# password [clave]

Una vez tengamos configurados todos los accesos y todas las contraseñas, empezaremos con adjudicar a cada boca de eth sus correspondientes IP.

  • Configuración de interfaces Ethernet:

Router> enable
Router# configure terminal
Router(config)# interface ethernet X/Y
Router(config-if)# ip address [ip] [máscara]
Router(config-if)# no shutdown

Donde pone X/Y tendremos que poner el numero de la boca que queramos por configurar por ejemplo el 0/0. Donde pone IP pondremos la ip que corresponda a esa boca.

El siguiente comando nos servirá para verificar la configuracion de interfaces:

Router> show interfaces

Para configurar un interface serie DCE utilizaremos la siguiente linea de comando, tendremos en cuenta que solo es necesario configurar el clock rate en un único router.

Router> enable
Router# configure terminal
Router(config)# interface serial X/Y
Router(config-if)# ip address [ip] [máscara]
Router(config-if)# clock rate 9600
Router(config-if)# no shutdown

Para configurar el router DTE.

Router> enable
Router# configure terminal
Router(config)# interface serial X/Y
Router(config-if)# ip address [ip] [máscara]
Router(config-if)# no shutdown

No se nos puede olvidar guardar la configuración que esta corriendo en este momento, puesto que si apagamos el router se nos eliminara toda la configuración. Para guardar la configuración actual utilizamos la siguiente linea.

Router> enable
Router# copy running-config startup-config

Para terminar, a nuestros router les tenemos que indicar cuales son las rutas de transferencia de datos para que entre ellos puedan tener comunicación. Para ello tendremos dos formas, utilizandorutas estaticas y rutas dinamicas.

  • Configurar rutas estáticas

Router> enable
Router# configure terminal
Router(config)# ip route [red destino] [máscara] [siguiente IP / interfaz]

  • Configurar rutas dinámicas

Router> enable
Router# configure terminal
Router(config)# router rip
Router(config-router)# version 2
Router(config-router)# network [red conectada directamente]


Router(config-router)# exit

Cuando tengamos los routers configurados deberemos  configurar las tarjetas de red de nuestros ordenadores.

Para ello tendremos que poner la dirección ip de cada ordenador y la puerta de enlace de cada red, todo esto se realiza desde panel de control> conexiones de red> T.de red que corresponda. Dentro de este iremos a propiedades y seleccionamos protocolos de Internet versión 4. Aquí pondremos las direcciones de IP estáticas.

Seguidamente realizaremos una prueba de comunicación en la red, para ello utilizaremos el comando Ping. Nuestra ip ficticia de host sera 192.168.1.10 y  la ip de host destino sera 192.168.2.10:

Router> ping 192.168.2.10

ping

 

Para nuestra configuración podemos utilizar el siguiente comando:

Router# show startup-config

Para borrar alguna configuración utilizaremos el siguiente comando:

Router> enable
Router# erase startup-config

Una vez tengamos todo como se indica, en otro ordenador ejecutaremos un servidor con el apache instalado y configurado correctamente.

Deberíamos poder hacer ping desde nuestro ordenador a ese servidor.

 

INSTALACIÓN DE MOODLE EN UBUNTU SERVER

miércoles, noviembre 4th, 2015

           INSTALACIÓN DE MOODLE EN UBUNTU SERVER 14.04.3

¿QUE ES MOODLE?

Moodle es una aplicación web de tipo educativa, un sistema de gestión de cursos de distribución libre que ayuda a los educadores a crear comunidades de aprendizaje en línea. Este tipo de plataformas tecnológicas también se conoce como LCMS (Learning Content Management System). He de decir que en mi escuela (PI Txorierri) usamos esto como plataforma educativa.

INSTALACIÓN 

UPDATE / UPGRADE

Abrimos el Terminal:

Lo primero que vamos a hacer es un update y un upgrade

sudo apt-get update

sudo apt-get upgrade

Una vez hecho:

Instalar Apache/MySQL/PHP

sudo apt-get install apache2 mysql-client mysql-server php5

Nos pedirá la contraseña para root para mysql debemos recordarla porque nos la pedirá mas tarde

Instalar software adicional

sudo apt-get install graphviz aspell php5-pspell php5-curl php5-gd php5-intl php5-mysql php5-xmlrpc php5-ldap clamav

Reiniciamos Apache para que los módulos se carguen correctamente

sudo service apache2 restart

Nosotros usaremos Git para instalar y actualizar la Aplicación del Núcleo de Moodle. (es un software de control de versiones diseñado por Linus Torvalds)

sudo apt-get install git-core

Descargar Moodle

Descargaremos Moodle en /opt

cd /opt

Descargamos el Código de Moodle y el Índice

sudo git clone git://git.moodle.org/moodle.git

Cambiaamos de directorio hacia la carpeta del Moodle descargado

cd moodle

Recuperamos una lista de cada una de las ramas disponibles

sudo git branch -a

Decimos a git cual de las ramas deberá de monitorear o usar

sudo git branch --track MOODLE_27_STABLE origin/MOODLE_27_STABLE

Finalmente, indicamos la versión de Moodle especificada

sudo git checkout MOODLE_27_STABLE

Copiar repositorio local a /var/www/html/

Este paso debemos realizarlo si tenemos el apache configurado por defecto.

sudo cp -R /opt/moodle /var/www/html/
sudo mkdir /var/moodledata
sudo chown -R www-data /var/moodledata
sudo chmod -R 777 /var/moodledata

sudo chmod -R 0755 /var/www/html/moodle

Configurar servidor MySQL

Necesitamos cambiar el motor de almacenamiento por defecto a innodb

sudo vi /etc/mysql/my.cnf

Bajamos hasta la sección de [mysqld] y, debajo de Basic Settings añadiremos la siguiente línea debajo de la última oración.

default-storage-engine = innodb

Para poder guardar my.cnf al usar el editor, presionamos la tecla Esc (Escape), escribimos en secuencia lo que sigue, lo que guardará el archivo (:w) y saldrá del editor (:q) :

:w
:q

Reiniciamos MySQL Server para que surtan efecto los cambios:

sudo service mysql restart

Ahora necesitamos crear la BasedeDatos de Moodle database y el usuario Moodle MySQL con los permisos correctos

Usaremos la contraseña de Mysql

mysql -u root -p

mysql>

CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

En donde dice «moodledude» y «passwordformoodledude» Usted deberá de cambiarlo por el nombre_de_usuario y contraseña de su elección.

mysql>

create user 'moodledude'@'localhost' IDENTIFIED BY 'passwordformoodledude';

mysql>

GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,
CREATE TEMPORARY TABLES,DROP,INDEX,ALTER 
ON moodle.* TO moodledude@localhost IDENTIFIED BY 'passwordformoodledude';

mysql>

quit;

Completar Configuración

Debemos hacer escribible webroot para ello:

sudo chmod -R 777 /var/www/html/moodle

Ahora necesitamos revertir los permisos para que ya no sea escribible:

sudo chmod -R 0755 /var/www/html/moodle

Ya solo no queda ir a navegador y escribir http://DIRECCION.IP.DEL.SERVIDOR/moodle

Seguiremos estas indicaciones seleccionando:

Cambie la ruta para moodledata

/var/moodledata

Tipo de BasedeDatos

 mysqli

Configuraciones de Basededatos

Host server: localhost

BasedeDatos (Database): moodle

Usuario (User): moodledude (el usuario que creamos al configurar la BasedeDatos)

Contraseña (Password): passwordformoodledude (la contraseña para el usuario que creamos)

Tables Prefix: mdl_

Pulsamos SIGUIENTE y ya solo queda crear una cuenta de usuario de MOODLE

Quitamos el permiso para hacer escribible webroot:

Si Usted hizo escribible webroot, revierta los permisos

sudo chmod -R 0755 /var/www/html/moodle

DFDSF

DFDFDF

DFGDFGDFG

FHDHDF

YA TENEMOS INSTALADO MOODLE! YA SOLO QUEDA CONFIGURARLO AL GUSTO DE CADA UNO!

PROBLEMAS ENCONTRADOS:

Probema 1

“El script instalador no ha podido crear automáticamente un archivo config.php con las especificaciones elegidas.”

Al terminar la configuración por el navegador de moodle daba un problema, no dejaba guardar la configuración (config.php)

SOLUCIÓN: cambiar la configuración desde el terminal creando un config.php y añadiendolo al directorio raíz

Editamos el archivo config-dist.php (viene por defecto así)

-sudo nano /var/www/html/moodle/config-dist.php

Editamos los valores tal y como nos lo indicaba en el navegador. Una vez terminado, salimos.

Ahora copiamos el config-dist.php en el directorio raíz de moodle con el nombre config.php

sudo cp /var/www/html/moodle/config-dist.php /var/www/html/moodle/config.php

Una vez hecho esto ya podríamos acceder a moodle con nuestro usuario y contraseña.

SFASF

Problema 2

“Detectado un error de codificación, debe de ser corregido por un programador: Failed to unserialise data from file. Either failed to read, or failed to write.”

Una vez dentro del moodle daba este error y no dejaba entrar a la plataforma, solo desde la cuenta de administrador.

SOLUCIÓN:

administración del sitio -> desarrollo -> purgar todas las caches

Problema resuelto ya no vuelve a aparecer.

INSTALACIÓN DRUPAL UBUNTU SERVER

martes, noviembre 3rd, 2015

Instalación Drupal en Ubuntu Server 14.04.3

¿Qué es Drupal y para que se utiliza?

Drupal es un sistema de gestión de contenidos CMS (Content Management System), es libre y muy configurable. Es utilizada por millones de sitios a nivel mundial, con una comunidad tanto de usuarios como de desarrolladores que es muy amplia y activa. También cuenta con muchas plantillas y plugins, la mayoría gratuitas y algunas de pago para quienes buscan algo de exclusividad o para diferenciarse.

Drupal permite publicar artículos, imágenes, archivos y otras cosas u otros archivos y servicios añadidos como foros,encuestas, votaciones, blogs y administración de usuarios y permisos. idóneo para construir y gestionar comunidades en Internet.

Requisitos mínimos que se necesitan. (Equipo y Server)

El equipo no necesita grandes prestaciones, con 1 gb de ram y 8 gb de disco duro bastaría para soportar Drupal.

Para que Drupal funcione necesitamos tener instalado mínimo:

-Servidor HTTP Apache

-Base de datos MySQL 5.0.15 o superior

-PHP 5.2.5 o superior

¿Como lo he instalado?

A continuación voy a explicar los pasos que he realizado para montar Drupal en Ubuntu server 14.04.3, para ello vamos a basarnos en LAMP (Linux, Apache, MySQL y PHP)

Para instalarlo ejecutamos desde una terminal:

sudo apt-get install mysql-server mysql-client apache2 php5 php5-mysql php5- curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl”

Ahora ya tenemos la plataforma instalada en Ubuntu tenemos que crear la base de datos para Drupal, que está basada en MySQL. Durante el proceso de instalación se nos pide que ingresemos una contraseña para el usuario ‘root’ de MySQL.

Sabiendo esto ingresamos os siguientes comandos:

sudo service mysql start

mysql -u root -p

Nos pedirá la contraseña, la ingresamos y ya podremos ingresar a trabajar con la base de datos, ahora necesitamos crear una nueva base llamada drupaldb

para eso ejecutamos:

CREATE DATABASE drupaldb;

Ahora es necesario crear la cuenta de usuario de la base de datos de Drupal:

CREATE USER usuariodrupal@localhost IDENTIFIED BY ‘contraseña’;

contraseña’ es la que nosotros queramos aplicar al usuario ‘usuariodrupal’

Ahora vamos a ejecutar un nuevo comando, que es el que habilita al usuario acceso a todas las características o funcionalidades:

GRANT ALL PRIVILEGES ON drupaldb.* TO usuariodrupal@localhost;

Ahora guardamos la configuración y salimos:

FLUSH PRIVILEGES;

exit

El próximo paso es el de la configuración del sitio que vamos a manejar con Drupal, y para esto necesitamos descargar el archivo desde el sitio web:

cd /tmp/ // wget http://ftp.drupal.org/files/projects/drupal-7.30.zip

Extraemos el contenido del archivo y lo movemos a la carpeta raíz de la instalación de Apache, le daremos los permisos e iniciamos Apache:

unzip drupal*.zip

sudo cp -rf drupal*/* /var/www/html/

sudo chown -R www-data:www-data /var/www/html/

sudo chmod -R 755 /var/www/html/

sudo service apache 2 start

Ahora iniciamos una conexión http al servidor desde el navegador, ingresando IP/install.php en la barra de direcciones, y veremos que ya podemos configurar Drupal desde el navegador:

ff

ffff

ffffffff

dfdf

¿Cómo funciona? ¿cómo se administra?

Drupal funciona desde un panel de configiracion en el navegador donde tiene todas sus opciones.

El gestor de Drupal dispone de miles de módulos diferentes, que se agrupan en tres categorías:

a) Los módulos del núcleo son los que se incluyen con la descarga básica de Drupal. Pueden activarse o desactivarse sin necesidad de descargar ningún componente adicional.

b) Módulos desarrollados por la comunidad Drupal que se descargan desde www.drupal.org y que se añaden a tu instalación de Drupal. Los ejemplos incluyen Paneles, Vistas o Metadatos.

c) También puedes crear tus propios módulos. Esto requiere un profundo conocimiento del lenguaje de programación PHP y de la API de Drupal.

Módulos instalados:

Actualmente tengo instalados varios Themes, idiomas y traductores, para ello nos dirigirme a Módulos → instalar nuevo modulo y una vez aquí nos dará a elegir entre descargar mediante URL o mediante TAR/ZIP en mi caso escogí la segunda, para ello me descargue el zip de la pagina de drupal y lo añadí a la pagina de módulos. Una vez instalado podremos activarlo o desactivarlo desde el panel.

Lo mismo hice con el paquete de idioma Castellano/Euskera pero no solo valía con eso ya que también había que instalar e traductor de estos y después activarlo.

Problemas:

Uno de los problemas que tuve fue que por defecto en la configuración de Drupal solo podía subir archivos de máximo 1 mega , para ello entre desde el server y edite php.ini, lo encontré con el comando find. Después cambie la opción de subida a 20 megas y ya pude subir mas módulos sin problemas.

UNIDAD 3: Tareas 1 y 2. (FINAL)

jueves, octubre 22nd, 2015

UNIDAD 3 MOOC Seguridad Hacking ético

Tareas 1 y 2.

GRUPO:             Mooc Bounty Hunters

IP DEL SERVIDOR: 188.166.52.148

TAREA 1: 

Documento colaborativo realizado en grupo y enviado al Consejo por nuestro representante.

TAREA 2:

DEFENSA

En esta ultima tarea me he dedicado mas a leer y a aprender mas que a actuar. Estuvimos en continuo contacto todos los integrantes del grupo recopilando toda la información que cambiábamos.

Primero nuestra tarea fue mas defensiva modificamos archivos para securizar servicios por defecto que teniamos instalados , creaamos usuarios, eliminamos root, deshabiiltamos relay STMP para evitar envío correos, etc.

FTP

Se vio que el servidor tenía el acceso de root ya capado al existir el usuario “root” en el fichero /etc/ftpusers. Sin embargo, los usuarios no root tenían acceso así como el acceso anónimo (anonymous) estaba habilitado y además este último daba acceso a la carpeta /srv/ftp donde está uno de los ficheros trofeo a proteger de nuestro servidor.

Como el objetivo es securizar sin dejar de dar el servicio, en lugar de cerrar el acceso anónimo mediante la cláusula anonymous_enable=NO en el fichero de configuración /etc/vsftpd.conf , lo que se optó por hacer es crear otra carpeta /srv/cleanftp que usaríamos de directorio raíz (home) para el usuario ftp que es el utilizado en el acceso anónimo. Se modificó el fichero /etc/passwd y se puso este directorio sustituyendo al anterior. En este nuevo directorio pusimos un fichero llamado sigueBuscando.txt que invita a los que entrar a seguir intentándolo por otra vía. También se modificó la cláusula local_enable igualándola a NO para restringir el acceso de usuarios no root. Esto no afecta al acceso anónimo.

Tras todas estas modificaciones se reinició el servicio con /etc/init.d/vsftpd restart y se comprobó que el acceso seguía operativo pero ya era seguro. También se elimina con esto el ftp bounce que antes estaba activo.

APACHE+PHP

Hemos visto que la versión de apache estaba disponible muy fácilmente tan pronto se ponía una url no válida. También hemos comprobado que los famosos “huevos de pascua” de php estaban activados. Además hemos bloqueado funciones de php peligrosas.

ASPECTO WEB

Hemos modificado el fichero /var/www/index.html y le hemos añadido nuestro logo que previamente hemos copiado en la misma carpeta. Hemos puesto nuestro eslogan.

REPOSITORIOS Y ARCHIVOS TROFEO

Como parte de asegurar el servidor, se revisa la lista de repositorios, se realiza una actualización del sistema y se ajustan permisos y atributos de los archivos «trofeo».

SSH+USERS:

Hemos decidido crear usuario para los integrantes del grupo, y deshabilitar el acceso por ssh a root.

Para ello primero hemos creado los usuarios y sus passwords

Mysql

Se han cambiado todas las contraseñas de la bbdd por unas contraseñas fuertes de muchos caracteres y ricos en variedad (números, letras, símbolos, etc). Primero para entrar vimos que en el fichero /etc/mysql/debian.cnf estaba la contraseña del usuario de base de datos debian-sys-maint y entrando a la base de datos con ella con el comando: mysql -h localhost -u debian-sys-maint –pxxxxxxxxxxxxx <- las equis son la contraseña

Una vez dentro vimos las bases de datos que había con show databases. Luego con show tables vimos las tablas de usuarios. En la bbdd mysql está la tabla user y en la bbdd cacti está la tabla auth_users. Hubo que hacer varios updates hasta actualizar todos los usuarios

Fail2ban

Instalamos Fail2ban. Esto lo podemos hacer simplemente con un apt-get install fail2ban.

Postfix

Por algún motivo, seguramente al actualizar el sistema, perdimos la configuración de postfix que la organización dejó en el server y que vimos el primer día. El primer día el server tenía abiertos todos los puertos de correo (25, 110, 143, 587, 993 y 995), por lo que decidimos reconfigurarlo de nuevo a fin de no dejar de dar el servicio pero aprovechando a securizarlo.

COURIER POP, IMAP, POP-SSL, IMAP-SSL

Al igual que en postfix, por algún motivo, seguramente al actualizar el sistema, o bien la organización del consejo jedi así lo decidió, perdimos la configuración de courier que parecía haber originalmente. Así que lo hemos vuelto a configurar.

GIT

Para asegurar que no entran a ningún directorio .git de los repositorios de gitweb, se coloca en el .htaccess del raíz de apache /var/www/.htaccess la siguiente línea al principio del fichero:

RedirectMatch 404 /\.git

También evitamos ejecuciones de ficheros tapando el acceso a los directorios de cache y evitando que funcionen ficheros .htaccess en dichos directorios, para ello editamos /etc/apache2/conf.d/gitlists.conf

Cacti

Para evitar el exploit de la inyección sql que parece afectar a la versión 0.8.8a que tenemos instalada, desactivamos la variable de php register_argc_argv. Está desactivada en php.ini pero se estaba activando en la configuración del fichero /etc/apache2/conf.d/cacti.conf . Se modifica: php_flag register_argc_argv Off

ATAQUE

FTP:

Fueron los mas sencillos de conseguir, a través de de los FTP, ya que con usuario anonymous y pass en blanco podías acceder y enviarte un archivo con la instrucción «get».

CACTI:

Primero me informe de las vulnerabilidades de Cacti para intentar sacar algo pero no conseguí mucho fueron mis compañeros los que me ayudaron leyendo sus mensajes.

GITLIST:

Con ayuda de los compañeros, supe que se podría ejecutar una instrucción en la url, entre comillas simples, y a través de la página de Cacti, pude enviarme por correo en un server que supongo que tenía habilitado relay por SMTP, uno de los archivos trofeo.

No tengo unos conocimientos muy avanzados sobre esta materia pero podría decir que este curso me ha ayudado mucho a entender cosas que antes no sabia y a trabajar en equipo, también me ha dado ideas de lo que me gustaría hacer en un futuro profesional. Me ha gustado mucho en general y espero poder disfrutar de mas cursos así.

INSTALAR SERVIDOR FTP

miércoles, octubre 21st, 2015

Instalar seridor FTP y cambiar permisos.

vsftpd es un servidor FTP para sistemas tipo Unix, incluyendo Linux, y su nombre proviene de las siglas en inglés Very Secure FTP Daemon. En comparación con otros programas de servidor ftp, vsftpd está construido para ser especialmente eficaz y muy seguro.

Para dar un poco mas de seguridad a nuestro seridor voy a explicar como instalar y como modificar los permisos en vsftpd.

Lo primero de todo sera istalar mediante comandos vsftpd, para ello escribimos el siguiente comando:

sudo apt-get install vsftpd

Una vez instalado comprobaremos con nmap si el servicio esta activo, para ello:

nmap localhost

Como vemos el puerto 21/tcp open esto nos indica que ya tenemos corriendo nuestro servidor ftp.

Lo siguiente sera editar los permisos por defecto, para ello editaremos el fichero de configuración situado en /etc/vsftpd

sudo nano /etc/vsftpd

Los parámetros que modificaremos serán:

listen = YES : Para que se inicie con el sistema.

anonymous_enable = NO : No permitimos que usuarios anónimos puedan conectarse a nuestro servidor. Es por seguridad.

local_enable = YES : Para poder conectarse con los usuarios locales del servidor donde está instalado.

write_enable = YES : Si quieres que los usuarios puedan escribir y no sólo descargar cosas.

local_umask = 022 : Esta máscara hace que cada vez que subas un archivo, sus permisos sean 755. Es lo más típico en servidores FTP.

chroot_local_user = YES

chroot_list_enable = YES : Sirven para que los usuarios locales puedan navegar por todo el árbol de directorios del servidor. Evidentemente esto sólo queremos permitírselo a ciertos usuarios, para ello tenemos el siguiente parámetro.

chroot_list_file = /etc/vsftpd.chroot_list : Indicamos el fichero donde están listados los usuarios que pueden navegar hacía arriba por los directorios del servidor, lo normal es que sea el administrador del servidor.

Debemos de tener cuidado ya que muchas de las opciones tienes un # por delante, esto las hace desactivarse y por mucho que este en YES  en realidad sera NO

En mi caso solo voy a configurar la restricción a usuarios anónimos, permitir conectarse solo a usuarios locales y permitir a estos escribir en el ftp , así que solo editare:

anonymous_enable=NO 
local_enable=YES 
write_enable=YES 

Ya solo nos falta reiniciar el servicio:

sudo service vsftpd restart

Una vez reiniciado comprobamos los permisos que hemos editado anteriormente con Filezilla , por ejemplo.

INSTALACIÓN Y CONFIGURACIÓN DE APACHE2 EN UBUNTU SERVER 14.04

miércoles, octubre 21st, 2015

Apache es un servidor web HTTP de código abierto para plataformas Unix-like (BSD, GNU/Linux, etc.), Windows, Macintosh y otras, que implementa el protocolo HTTP/1.1 y la noción de sitio virtual.

Apache2 utiliza un directorio por defecto /var/www. Aquí es donde normalmente guardamos los archivos de nuestros sitios.

Para cambiar este directorio lo primero que tenemos que tener es el Ubuntu server instalado en nuestra maquina una vez hecho esto procedemos a instalar Apache2 si es que todavía no lo tenemos instalado:

sudo apt-get install apache2

Una vez instalado comprobamos su funcionamiento haciendo un nmap:

nmap localhost

Una vez hecho esto nos debería de aparecer abierto el puerto 80/tcp http, este es el puerto que usa apache por defecto.


Primero vamos a crear una copia del sitio por defecto:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/sti.conf

(sti.conf es el sitio nuevo que vamos a crear que en mi caso a sido este, vosotros podéis poner el que queráis)

Antes de nada crearemos una carpeta en nuestro home de usuario. En este caso sti

sudo mkdir /home/usuario/sti

A continuación vamos a editar con un nano el directorio por defecto:  /var/www situado en:

/etc/apache2/sites-avaiable/sti.conf

sudo nano /etc/apache2/sites-available/sti.conf

Una vez dentro editamos las lineas DocumentRoot /var/www por /home/usuario/sti Ahora guardamos y salimos.

El siguiente paso es editar el fichero de configuracion de apache, es igual pero esta vez esta situado en /etc/apache2/apache.conf

sudo nano /etc/apache2/apache.conf

Una vez dentro del fichero de cofiguracion bajamos hasta ver: <Directory /var/www/> y lo cambiamos por <Directory /home/usuario/sti/>   Ahora guardamos y salimos.

Ya  solo nos queda deshabilitar el sitio por defecto y habilitar el nuevo sitio. Para ello utilizamos los comandos a2dissite y a2ensite :

sudo a2dissite 000-default.conf

sudo a2ensite sti.conf

Reiniciamos Apache2 :

sudo service apache2 reload

Y ya tendríamos nuestro directorio por defecto de Apache2 cambiado.

Si bien ahora lo que queremos es cambiar la pagina por defecto de Apache2, o que tenemos que hacer es editar el fichero index.html situado en nuestro caso en: /home/usuario/sti , para ello:

sudo nano /home/usuario/sti/index.html

Y en esta pagina podrás editar lo que quieras.

CAMBIAR PUERTO POR DEFECTO: SSH

miércoles, octubre 21st, 2015

SSH (o Secure SHell) es un protocolo que facilita las comunicaciones seguras entre dos sistemas usando una arquitectura cliente/servidor y que permite a los usuarios conectarse a un host remotamente. A diferencia de otros protocolos de comunicación remota tales como FTP o Telnet, SSH encripta la sesión de conexión, haciendo imposible que alguien pueda obtener contraseñas no encriptadas.

SSH usa por defecto el puerto 22, por lo que todos los ataques informáticos a SSH siempre irán por defecto al puerto 22. Una manera para protegernos es NO usar SSH en el puerto 22, lo cambiaremos por ejemplo al puerto 222.

Lo primero de todo es tener instalado el paquete SSH:

sudo apt-get install openssh-client

Una vez instalado comprobamos un con nmap si el puerto 22 ssh esta escuchando:

nmap localhost

Nos debe de aparecer 22/tcp open esto quiere decir que ya tenemos el SSH funcionando.

Ahora con un simple nano editaremos el archivo /etc/ssh/sshd_config:

sudo nano /etc/ssh/sshd_config

Ahora debemos de fijarnos donde dice: port22 , una vez localizado cambiamos el 22 por el 222. Nos quedaría tal que así: port222

ya solo queda reiniciar SSH para que lea la nueva configuración:

/etc/init.d/ssh restart

Por ultimo volvemos a hacer un nmap para asegurarnos de que el puerto 222 esta configurado como queriamos:

Captura de pantalla 2015-10-21 a las 20.07.07

Resoución del Enigma MoocHackigMU

miércoles, octubre 21st, 2015

Hace dos semanas MoocHackigMU nos planteaba un enigma el cual daba paso al reto final. Este consistía en descifrar un enigma utilizando conocimientos que pusimos en practica en tareas anteriores.

El enigma resultaba ser un archivo de texto cifrado cuya clave se escondía en http://pruebas.euskalert.net . Para obtenerla debíamos acceder a esta web y mediante técnicas de SQL Inyection debíamos encontrar dicha clave.

Hay que mencionar que Yoda nos dio una pista..

Consejo YOda

GUESTBOOK era el nombre de una de las tablas donde dicha clave se escondía, todo ello dentro de una base de datos del servidor DVWA.

Para ello entramos en http://pruebas.euskalert.net

Login: admin

Password: password

Tal y como aprendimos e tareas anteriores el primer paso fue configurar el nivel de seguridad del servidor DVWA:

DVWA Security -> Low -> Submit

Ahora en la misma pantalla seleccionamos SQL Injection.

Introducimos 1 en el cuadro de texto y pulsamos Submit.

Ahora introducimos el comando:

  • %’ and 1=0 union select null, table_name from information_schema.tables #

Ahora podremos ver las tablas que hay en el servidor y efectivamente vemos que la taba GUESTBOOK esta presente:

dfdfd

Una vez hecho esto mostraremos los campos que tiene la tabla GUESTBOOK con el siguiente comando:

  • %’ and 1=0 union select null, concat(table_name,0x0a,column_name) from information_schema.columns where table_name = ‘guestbook’ #

Ya sabemos los campos que tiene la tabla asi que los mostraremos con el siguiente comando:

  • %’ and 1=0 union select null, concat(comment_id,0x0a,comment,0x0a,name,0x0a) from guestbook #

Captura de pantalla 2015-10-01 a las 13.45.39

Ya hemos llegado al final! Podemos leer perfectamente  la frase The key is «use the force», Luke.

Ahora vamos a descifrar el archivo de texto con el programa Kleopatra, boton derecho al archivo de texto, descifrar, introducimos la clave…

fdff

TAREA 4: Actividad de Reflexión

martes, septiembre 29th, 2015

UNIDAD 2 MOOC Seguridad Hacking ético

TAREA 4: Actividad de Reflexión

Esta semana hemos utilizado Wireshark que es un analizador de protocolos utilizado para realizar análisis y solucionar problemas en redes de comunicaciones. En nuestro caso hemos analizado protocolos seguros e inseguros como telnet, que podemos encontrar fácilmente los datos sin encriptar, mientras que con otro tipo de protocolo cómo SSL o SSH el acceso a informaciones ya no es tan fácil porque esta encriptado.

También hemos visto la tecnica SQL injection esta técnica nos permitia explotar las vulnerabilidades existentes en Bases de Datos SQL, de forma que obteníamos acceso a la misma. Inyectamos un código malicioso a través de nuestro navegador en un servidor con una base de datos SQL.

Por ultimo hemos reflexionado a traves del foro sobre el tema de la empresa Hacking Team, que fue atacada y 400GB de datos privados que incluían contactos de clientes, facturas y otros documentos importantes se subían de forma pública a Internet para su descarga a través de torrents. Este ultimo tema me hace reflexionar y recordar una frase que dice mi profesor «La seguridad es una sensación»

Alex Bravo

Información sobre la tecnologia

ikerlarrea95

Look at the mirror and did your way

Iñigo Castresana Bausela

Estudiante de Sistemas de Telecomunicaciones e Informatica

javierarambalza

telecomunicaciones

Asier Bilbao

"Conócete, aceptate, superate."

sofiacuraarias.wordpress.com/

IT Blog: Professional career evolution

Josu Bilbao Iraegi

Telekomunikazio sistemak eta informatika ikasten!

Jon Ander Garaigordobil !

curiosità in ogni momento

WordPress.com en Español

Blog de Noticias de la Comunidad WordPress.com