es el nombre de un protocolo y del programa que lo implementa.sirve para acceder a maquinas remotas atraves de una red.permite manejar por completo un computador mediante un interprete de comandos.ssh utiliza tecnicas de cifrado que hacen que la imformacion viaje por el medio de manera no legible.
OPENSSH!!
es un conjunto de herramientas que proporcionan sesiones encriptadas de comunicacion usando el protocolo SSH.es una alternativa de codigo abierto con licencia BSD. y dirigido por theo de raadt .se condidera que es mas seguro que el original.
CONFIGURACION DE OPENSSH EN DEBIAN LENNY!!
En primer lugar procederemos a instalarlo
#apt-get install ssh
luego de haberlo instalado ingresaremos al archivo de configuracion principal ssh el cual es sshd_config
#pico /etc/ssh/sshd_config
en este archivo los siguiente parametros deben de estar de la siguiente manera
port 22 :ya que este es el puerto por defecto del ssh.
protocol 2 :ya que es que el protocolo con el que trabajaremos.
LoginGraceTime 120: este es el tiempo que tendra el usuario para loguearse.
PermitRootLogin no:este es para permitir si un usuario root se puede o no conectar al servidor.
MaxStartups 2:este es para indicar cuantos logueos se permitiran simultaneamente.
MaxAuthTries 2: este es para indicar el maximo intento del login en el servidor.
PasswordAuthentication yes:aqui se especifica si se quiere trabajar con autenticacion.
ListenAddress:aqui le especificamos si queremos que escuche peticiones por cualquier ip.
X11Forwarding yes:Esta línea es para indicarle al Servidor si vamos a permitir aplicaciones graficas por medio de la consola SSH.
ahora reiniciaremos el servicio .
#/etc/init.d/ssh/restart
ahora procedemos a conectarnos de la siguiente manera:
EJEMPLO: luisa@192.168.0.173
a la hora de conectarnos nos pedira una contraseña la cual cual es la del usuario y ya de esta forma nos conectaremos.
si queremos ver el fingerprint de nuestras llaves ejecutaremos el siguiente comando.
# ssh-keygen -l -f /home/luisa/.ssh/id_dsa.pub
como se muestra en la figura:
AUTENTICACION CON LLAVES!!
la autenticacion con llaves es un metodo para que el usuario no tenga que siempre ingresar con un login y una contraseña si no que con sus llave publica la cual debe tener el servidor el se pueda conectar a el sin ningun tipo de requisito.
en primer lugar debemos generar las llaves con el siguiente comando.
#ssh-keygen -t dsa -b1024
como se muestra en la figura:
cuando estamos generando las llaves nos dice que donde queremos alojar nuestras llaves.si queremos le cambiamos el lugar o si deseamos lo dejamos asi por defecto.
tambien nos pedira que ingresemos una contraseña la cual sera las de nuestras llaves. y ya con esto generamos nuestras llaves. con las cuales el servidor identificara que si soy el que digo ser.
ya con nuestras llaves generadas debemos de enviarselas al servidor pues con ellas es como nos autenticaremos .se las enviaremos dela siguiente manera:
#scp /home/luisa/.ssh/id_dsa.pub luisa@192.168.0.173:/home/mona/id_dsa.pub
ahora nos vamos para el archivo de configuracion del ssh en el servidor y en el archivo principal o sea sshd_config descomentamos la siguientes linea Authorizedkeysfile.luego mas abajo de esta linea se encuentra esta la cual es donde estara ese archivo (%h/.ssh/authorized_keys) si deseamos podemos cambiar esa ruta y el nombre del archivo.
en esta caso se cambio la ruta
EJEMPLO
/home/luisa/.ssh/Authorizedkeysfile aqui estaran todas las llaves que podran autenticarse contra el servidor.
ya de esta maneras es mucho mas seguro autenticarse contra el servidor
TRANSFERENCIA DE ARCHIVOS POR SSH!!
para la transferencia de archivos utilizamos scp el cual es un medio de tranferencia segura de archivos imformaticos de un host remoto a otro host remoto localmente usuando el protocolo ssh.
para la transferencia de archivos utilizamos la siguiente ruta:
#scp /home/luisa/archivo luisa@192.168.0.173:/home/sena/Desktop
primero colocamos scp que es el que nos permite la transferencia,luego la ruta de donde se encuentra el archivo a tranferir y el archivo osea /home/luisa/archivo y hacia donde lo debemos enviar osea luisa@192.168.0.173 y adonde copiaremos ese archivo. /home/sena/Desktop.
HACER TUNNEL CON SSH!!
los tuneles ssh nos permite establecer una comunicacion segura que ademas es independiente de firewalls y otros filtros.
la forma de implementarlo es cuando un usuario inicia sesion desde su equipo local a el equipo remoto al establecer esa conexion se le indica que puerto sera tunelizado .de tal forma que cuando el usuario se conecte a un puerto de la maquina local sera como si se conectara a un puerto de la maquina remota.
EJEMPLO
ssh -p 2020 -L 127.0.0.1:80 usuario@192.168.0.173
ssh -p 2020 es el puerto por donde esta corriendo nuestro ssh.
-L Con este parámetro estamos levantando el túnel que necesitamos. Concretamente le estamos diciendo que escuche en el puerto local.
127.0.0.1:80 que es nuestro maquina local y el puerto que esta utilizando .
usuario@192.168.0.173 es donde queremos que nos conectar
ALGORITMO MD5
MD5 (Funciones de digestión "Hash")
Una función de digestión MD5 permite crear una "huella dactilar" digital para cualquier tipo de datos. Constituye una operación unidireccional que transforma una cadena de datos de cualquier longitud en otra cadena más corta de longitud fija. El valor resultante de dos cadenas de datos distintos sometidas a un algoritmo de digestión nunca es el mismo.
a continuacion veremos como funciona el algoritmo md5.
en primer lugar le haremos hash a un texto en claro con el md5.
primero crearemos el texto por ejemplo luisa.txt
luego de haberlo creado le daremos el comando
md5sum nombre de texto en este caso luisa.txt de la siguente manera:
podemos ver la cadena de caracteres que el md5 para asegurar la integridad de l texto.si se cambiara algo del texto la cadena de caracteres cambiaria.
md5sum y la ruta de donde se encuentra el binario ejemplo /bin/su como se muestra en la figura.
esta es la forma en como hacemos un hash con el md5sum de los binarios del sistema.
GnuPG es una aplicación que sirve para encriptar mensajes, documentos ... GnuPG usa un sistema de claves públicas lo que quiere decir que cada usuario tiene una clave privada y una clave pública.
La clave privada es la que se usa para desencriptar aquello que nos envían encriptado con nuestra clave pública, La clave privada es una clave que solo ha de conocer el propietario ya que si alguien más la conoce podría desencriptar lo que nos mandan encriptado.
La clave pública es la que se da a la gente para que nos manden cosas encriptadas y usaran para encriptar aquello que nos quieran pasar.
El programa se puede obtener de la siguiente url http://www.gnupg.org
gpg --gen-key.
Ver claves públicas disponibles
gpg --list-keys.
Esto lo que haces listar las claves que hay disponibles dentro del fichero pubring.gpg.
Ver claves privadas disponibles
Para ver las claves privadas que tenemos disponibles hay que hacerlo con el comando
gpg --list-secret-keys.
Esto lo que haces listar las claves que hay disponibles dentro del fichero secring.gpg.
Exportar claves
Las claves se pueden exportar a ficheros para que las podamos distribuir entre la gente que queremos que nos encripte o firme cosas o bien porque vamos a formatear el equipo y necesitamos salvarlas.
Para exportar la clave publica se hace poniendo gpg -a -o nombrearchivo.asc --export {ID}
en nombrearchivo.asc es donde estara la llave.
Si quisieramos salvar todas las claves que tenemos valdría con copiar los archivos pubring.gpg y secring.gpg y luego cuando vayamos al nuevo equipo poneralas en el directorio de GnuPG.
Importar claves
Si se quiere importar claves nuevas porque por ejemplo hemos formateado el equipo y queremos volver a tener nuestras claves las importamos con el comando.
gpg --import {ID}
En el apartado anterior se han salvado las claves publica y privada pues ahora vamos a importarlas. Primero importamos la publica y luego la privada.
Ahora si queremos importar la clave de una amigo pues se haría igual.
Enviar la llave a un servidor de llaves publicas
gpg -keyserver pgp.rediris.es --send-key ID
Encriptar mensajes
Si se quiere encriptar mensajes se puede hacer poniendo.
gpg -e -a ruta_del_archivo
el -e seria de encriptar y la -a seria para crearlo en formato ascii.
Desencriptar mensajes
Para desencriptar el mensaje que hemos encriptado antes hay que poner
gpg -d mensaje.asc
Verificar mensajes firmados
Para verificar mensajes firmados se hace poniendo
gpg --verify mensaje.
Clave de revocación
La clave de revocación es una clave que lo que hace es que cuando la importemos a nuestro anillo de claves inavalide esa clave. Para generarla se hace con la opción
--gen-revoke.
Esta clave se puede crear nada más generar las llaves o bien cuando se halla comprometido. Hay gente que lo crea nada más crear las claves porque si por ejemplo ha olvidado la contraseña no podra generar la clave de recovación ya que al final del proceso de generación se pide la contraseña. Esta clave ha de guardarse en un lugar seguro ya que si alguien la obtuviese podría revocar nuestras claves y dejarnos las claves inutilizadas.
Anillo de confianza
Crear un anillo de confianza consiste en tener claves de gente firmada por otra gente que la han firmado y que con su firma aseguran que esa clave es realmente de quien dice ser y no ha sido alterada.
Las civilizaciones mas antiguas (egipcia, mesopotámica, china..) ya usaban esos métodos.Uno de los primeros métodos de encriptado que está documentado es atribuido a Julio Cesar, que se basaba en la sustitución de las letras de un documento por la tercera letra que le correspondiese en el alfabeto. Así la A se convertía en una D, la B en E .etc Con el tiempo y debido principalmente a su uso militar, los sistemas criptográfícos fueron avanzando en complejidad, hasta llegar a nuestros días donde la informática ha entrado en nuestras vidas y la necesidad de seguridad al realizar nuestras operaciones aumenta. En la actualidad, en la vida real, estamos acostumbrados a enviar o recibir cartas postales que vienen encerradas en un sobre para que su lectura esté reservada solo a nosotros o a su destinatario. En el mundo virtual, en el caso del e-mail esto no es así, ya que lo que enviamos es la carta sin el "sobre" que lo contenga, es decir, sin nada que impida su lectura por parte de cualquiera que pudiera interceptarla. ¿Queremos que nuestras confidencias, nuestros números de tarjeta de crédito, nuestros saldos en bancos, etc .. sean vistos por cualquiera?
Como funciona
La palabra criptología proviene de las palabras griegas Kryto y logos y siginifica estudio de lo oculto. Una rama de la criptología es la criptografía, que se ocupa del cifrado de mensajes. Esta se basa en que el emisor emite un mensaje en claro, que es tratado mediante un cifrador con la ayuda de una clave, para crear un texto cifrado. Este texto cifrado, por medio del canal de comunicación establecido, llega al descifrador que convierte el texto cifrado, apoyandose en otra clave, para obtener el texto en claro original. Las dos claves implicadas en el proceso de cifrado/descifrado pueden ser o no iguales dependiendo del sistema de cifrado utilizado.
Sistemas de cifrado simetrico
Los sistemas de cifrado simétrico son aquellos que utilizan la misma clave para cifrar y descrifrar un documento. El principal problema de seguridad reside en el intercambio de claves entre el emisor y el receptor ya que ambos deben usar la misma clave. Por lo tanto se tiene que buscar también un canal de comunicación que sea seguro para el intercambio de la clave.Es importante que dicha clave sea muy difícil de adivinar ya que hoy en día los ordenadores pueden adivinar claves muy rápidamente. Por ejemplo el algoritmo de cifrado DES usa una clave de 56 bits, lo que significa que hay 72 mil billones de claves posibles. Actualmente ya existen ordenadores especializados que son capaces de probar todas ellas en cuestión de horas.Hoy por hoy se están utilizando ya claves de 128 bits que aumentan el "espectro" de claves posibles (2 elevado a 128) de forma que aunque se uniesen todos los ordenadores existentes en estos momentos no lo conseguirían en miles de millones de años.
algoritmos clave simetrico
- Des
- tripleDes
- idea
- blowfish
- rc5
- cast
También son llamados sistemas de cifrado de clave pública. Este sistema de cifrado usa dos claves diferentes. Una es la clave pública y se puede enviar a cualquier persona y otra que se llama clave privada, que debe guardarse para que nadie tenga acceso a ella.Para enviar un mensaje, el remitente usa la clave pública del destinatario para cifrar el mensaje. Una vez que lo ha cifrado, solamente con la clave privada del destinatario se puede descifrar, ni siquiera el que ha cifrado el mensaje puede volver a descifrarlo.Por ello, se puede dar a conocer perfectamente la clave pública para que todo aquel que se quiera comunicar con el destinatario lo pueda hacer.
algoritmos clave asimetrico.
- diffie-hellman
- rsa
- dsa
- elgamal
- criptografia de curva eliptica.
la firma digital se basa en la criptografía y puede ser definida como una secuencia de datos electrónicos (bits) que se obtienen mediante la aplicación de un algoritmo (fórmula matemática) de cifrado asimétrico o de clave pública.
Estos sistemas cifran los mensajes mediante la utilización de dos claves diferentes, una privada y otra pública. La privada es conocida únicamente por la persona a quien pertenece el par de claves. La pública, por su parte, puede ser conocida por cualquiera pero no sirve para hallar matemáticamente la clave privada.
La utilización de la firma digital asegura que el emisor y el receptor del mensaje (ya sean dos empresarios, un empresario y un consumidor o un ciudadano y la Administración) puedan realizar una transacción fiable- Normas de seguridad informática
- Criptografia
- PKI & PGP
- Seguridad perimetral (firewall, proxy, ids)
- Scripting
- IPSEC
- PenTesting
aunque no es nada facil la tareita de estos ultimos meses todos o casi todos le ponen su mayor esfuerzo por que sinceramente de es proyecto depende muchas cosas para la titulacion y ya muchos estudiantes se encuentran preocupados pues no saben si va a hacer capaz con la carga academica que ya ahi.pero de todas maneras hay que ponerle mucho empeño y dedicacion para poder sacarlo adelante ........................
estos son los temas que se realizaran.
Proyecto 1. Plataforma de correo segura
Objetivos
Instalar y configurar un sistema de correo que:
* Cifre el tráfico entre usuario y servidor.
* Valide los usuarios contra un directorio activo.
* Almacene los correos de los usuarios en un directorio activo o en una base de datos.
* Tenga usuarios y dominios virtuales.
* Tenga un sistema de antivirus y antispam.
* Que tenga administración gráfica (fácil de administrar para el usuario).
* Montar un WebMail para que los usuarios revi
sen el correo por ahí. (hacerlo de forma segura - SSL)
* Bonus ( hacer algo adicional para diferenciar el proyecto de otros similares).
Proyecto 2. Gestion y monitoreo integral
Escenario
* 3 Servidores en sistemas operativos diferentes
* 3 clientes en sistemas operativos diferentes (uno de todos debe ser Windows Vista)
* 1 Router
* 1 SW
* 1 Equipo activo diferente a un SW o un Router
Objetivos
seguidos (simulando tráfico
* Monitorear tráfico interno y externo en una LAN.
* En los clientes y en los servidores se debe monitorear CPU, memoria RAM, swap, cantidad de procesos, Cantidad de usuarios, disponibilidad, tarjetas de red, discos duros, lo que quiera adicionar.
* En los equipos activos monitorear trafico por puerto (hardware), usuarios (que entran a configurarlo), CPU, RAM.
Proyecto 3. Administración de aplicaciones WEB
Objetivos
* Seleccionar 3 (tres)
Las aplicaciones deben ser útiles para una empresa, por ejemplo:
- Sistema de compras Online
- Portal web
- Software de inventario de Hardware y Software
- Sistema de Tickets
- Sistema Colaborativo (groupware, calendario, agenda, IM, etc).
al menos una (1) de las aplicaciones debe autenticarse contra un Servidor RADIUS
* Bonus: Simularlo
en maquinas virtuales (RAID, LAMP, WAMP, etc).