Está en la página 1de 50

Configuracin FTP

Mario Tacle Klver Chvez

Qu es FTP?
FTP son las siglas de File Transfer Protocol o en espaol Protocolo de transferencia de archivos, que es un protocolo para la transferencia de archivos entre sistemas conectados a una red. Desde un equipo cliente se puede conectar a un servidor para descargar archivos desde l o para enviarle archivos, independientemente del sistema operativo utilizado en cada equipo.

Puertos 20 y 21

Qu es FTP?
Este protocolo para la subida y bajada de archivos no es del todo seguro, ya que la informacin que se manda por medio del protocolo, no va cifrada, sino en texto plano, por lo que si un hacker consigue acceder a uno de estos ficheros, podr ver la informacin sin ningn tipo de problemas. Para solucionar esto, aparecieron nuevos protocolos donde se manda la informacin cifrada.

Funcionamiento del Protocolo FTP


El protocolo FTP define la manera en que los datos deben ser transferidos a travs de una red TCP/IP. El objetivo del protocolo FTP es:

Permitir que equipos remotos puedan compartir archivos Permitir la independencia entre los sistemas de archivo del equipo del cliente y del equipo del servidor Permitir una transferencia de datos eficaz

Modos de conexin del cliente FTP

Modo Activo
FTP establece una doble conexin FTT entre el cliente y el servidor.
Cliente

CONEXIN CONTROL

Servidor FTP

Conexin de control: Suele utilizar el puerto 21 del servidor y es la que sirve para acceder a este e indicarle las operaciones que el cliente quiere realizar. Conexin de datos: Suele utilizar el puerto 20 del servidor y es la que sirve para la transferencia de archivos hacia o desde el servidor. El cliente puede negociar con el servidor un puerto distinto para establecer esta conexin.

1.- Usuario + Contrasea


2.- Autenticacin valida 3.- Copia Fichero.txt 3.- En mis documentos CONEXIN DATOS 4.- Fichero.txt P. 20 P. 21

Modo Pasivo
El cliente utiliza la conexin de control para solicitar al servidor la utilizacin de un puerto distinto al habitual para la transferencia de datos. El servidor comunicara al cliente el puerto por encima de 1024 por donde atender la conexin de datos. El cliente utiliza un puerto aleatorio para establecer la conexin de control y el puerto inmediatamente superior para establecer la conexin de datos.
CONEXIN CONTROL 1.- Usuario + Contrasea P. 1045 2.- Autenticacin valida 3,- Puerto distinto al 20 4.- Puerto 1029 P. 1046 5.- Copia Fichero.txt en mis documentos CONEXIN DATOS 6.- Fichero.txt P. 1029 P. 21 Servidor FTP

Cliente

Modos de acceso del cliente FTP

Acceso Annimo
Los servidores FTP annimos ofrecen sus servicios libremente a todos los usuarios, permitiendo acceder a sus archivos sin necesidad de disponer de ningn identificador. De esta forma todo el mundo tendr acceso al servicio, pudiendo acceder a la informacin sin ningn tipo de restriccin. Este usuario, por lo general, tiene privilegios limitados, ya que por lo general slo podr leer y copiar los archivos existentes, pero no podr modificarlos ni crear otros nuevos.

Acceso de usuario
Este es el tipo de acceso ms comn dentro de los servicios de alojamiento que nos podemos encontrar. Con este tipo de usuarios, se dispondr de un usuario y una clave para poder acceder al contenido, pudiendo as subir y bajar informacin. Es la forma ms segura de utilizar este servicio, ya que en todo momento podremos sabe quien se ha conectado.

Acceso de invitado
Esta forma de conectarse va FTP se trata de permitir que cada usuario conecte a la mquina mediante su login y su password, pero evitando que tenga acceso a partes del sistema de archivos que no necesita para realizar su trabajo, de esta forma acceder a un entorno restringido, algo muy similar a lo que sucede en los accesos annimos, pero con ms privilegios.

Instalacin de un Servidor FTP

1.- Instalacin de PROFTPD

Configuramos este archivo

Desactivamos el uso de IPV6

Des comentamos estas lneas Y le agregamos /home/ftp

Usuario New

Des comentamos estas lneas

Le asigna una contrasea: barcelona

---

=0

No se tiene ningn permiso

--x
-w-

=1
=2

Solo permiso de ejecucin


Solo permiso de escritura Permisos de escritura y ejecucin Solo permiso de lectura Permisos de lectura y ejecucin Permisos de lectura y escritura Todos los permisos establecidos, lectura, escritura y ejecucin

-wx =3 r-r-x rw=4 =5 =6

rwx =7

Se le asigna los permisos

Agregamos en /hosts el nombre del servidor ftp: Debian

Reiniciar el Servidor FTP

SSH
Bajo Linux
Configuracin SSH

Katheen Robles Frederman Benavides

Qu es SSH?
Es un protocolo que permite conectarse a un host remotamente usando una arquitectura cliente/servidor. Encripta la sesin de conexin haciendo imposible que alguien pueda obtener los datos que se envan y reciben (diferencia con FTP o Telnet). Todos los datos enviados y recibidos durante la sesin se transfieren por medio de encriptacin de 128 bits, lo cual los hacen extremamente difcil de descifrar y leer.

Cada paquete est cifrado por medio de una llave conocida slo por el sistema local y el remoto , no sirviendo de nada los intentos de falsificar la identidad de cualquier de los dos lados de la comunicacin
Utiliza llaves pblicas para la autenticacin en la mquina remota.

SSH Servicios implicados

Para parar el servicio ejecutaramos service ssh stop Para arrancarlo ejecutaramos service ssh start Para reiniciarlo ejecutaramos service ssh restart

Versiones del protocolo SSH


SSH v.1: Hace uso de muchos algoritmos de encriptacin patentados, sin embargo, algunas de estas patentes han expirado y es vulnerable a un hueco de seguridad que potencialmente permite a un intruso insertar datos en la corriente de comunicacin SSH v.2: OpenSSH bajo Red Hat Enterprise Linux utiliza por defecto la versin 2 de SSH, la cual tiene un algoritmo de intercambio de llaves mejorado que no es vulnerable al hueco de seguridad en la versin 1. Sin embargo, la suite OpenSSH tambin soporta las conexiones de la versin 1.

SSH Ficheros implicados

Los ficheros implicados para el cliente son:


/etc/ssh/ssh_config (cliente)

SSH Ficheros implicados

Los ficheros implicados para el servidor son:


/etc/ssh/sshd_config (servidor)

SSH Puertos

El puerto utilizado por SSH es el 22 por TCP. Pero se puede elegir cualquier otro puerto que este entre el 1025 y 65535. Si modificamos el puerto y ponemos otro puerto que no sea el 22 para conectarnos tendremos que hacer referencia al puerto que nos vamos a conectar, se hara de la siguiente forma:
# ssh -p [puerto] cuenta_usuario@ip_equipo_remoto

SSH Restriccin de usuarios

Hay varias formas de restringir usuarios: Una es configurando que solo ciertos usuarios tengan acceso por ssh. Para ello hay que modificar el fichero sshd_conf y damos solo permiso a los usuarios:

Un ejemplo para restringirlos


DenyUsers usuario1 usuario2 usuario3 Con este ejemplo le denegamos el acceso a los 3 usuarios nombrados

SSH Restriccin de usuarios

Otra forma es por el rango IP AllowUsers usuario@192.168.112.* Con este ejemplo lo que todos los equipos que estn en ese rango de red podrn acceder a travs de ssh.

Y la ultima por la IP del usuario AllowUsers usuario@192.168.112.9

Con este ejemplo slo podr conectarse el equipo con esa IP con este usuario.

SSH Seguridad

Otro dato que debemos saber, en cuanto a seguridad, es restringir la administracin de ssh para el usuario root, que se modifica en una directiva del fichero /etc/ssh/sshd_config

Como se aprecia en la imagen, estamos hablando de la directiva, PermitRootLogin no es de fcil intuicin... al estar en no, indicamos que no permita el acceso de root mediante ssh.

SCP (SECURE COPY)

Quiere decir que puedes realizar copias seguras y encriptadas usando ssh. La conexin ser encriptada, haciendo de esta una forma muy segura de transferir o copiar archivos de un servidor a otro. Explicaremos como copiar archivos desde un pc a otro mediante este protocolo basado en ssh similar al ftp y con ms ventajas con respecto a este. Aqu un ejemplo:

scp /home/usuario/Escritorio/prueba.txt usuario@192.168.0.8:/home/usuario/Escritorio/prueba_a migo.txt

http://bitacora.garron.me/linux/uso-de-scp-en-linux-comando-para-copiar-sobre-ssh.html

SCP (SECURE COPY)


Tambin

inversa:

lo podemos hacer de manera

scp usuario@192.168.0.8:/home/usuario/Escritori o/prueba_amigo.txt /home/usuario/Escritorio/prueba.txt.

MONTAR UNA UNIDAD MEDIANTE SSH (SSHFS)

Permite crear una carpeta en un PC remoto y trabajar con/en ella como si fuera local, con transparencia total y la seguridad que ofrece SSH al estar usndose por debajo. En primer lugar vamos a crear nuestro directorio, para ello ejecutamos: mkdir /media/ssh

Una vez creado, vamos a instalar este paquete, (sshfs), que es el sistema de archivos para ssh, ejecutamos: apt-get install sshfs

MONTAR UNA UNIDAD MEDIANTE SSH (SSHFS)

A continuacin vamos a crear un script para conectar dicha unidad, el script contiene lo siguiente: #!/usr/bin if [ $# -eq 0 ]; then usuario=default else usuario=$1 fi sshfs $usuario@192.168.0.8:/home/rafa/sshfs_disc /media/sshfs

Cada vez que queramos montarlo, ejecutamos el script y ya est, ya tendremos nuestra unidad montada.
Y comprobaremos como se monta la unidad del servidor en nuestro cliente

SSH Ventajas e Inconvenientes


Ventajas: Una gran ventaja con respecto a Telnet, como ya hemos explicado en el punto anterior, es que telnet no va cifrado, y ssh s. El principal inconveniente de SSH es que hay que tener acceso a un servidor que pueda ejecutar SSH en su extremo de la conexin.

Tareas que se pueden realizar con SSH


Algunas de las tareas que puedes realizar con SSH son: Instalar programas. Extraer los archivos de audio o msica. Transferir ringtones. Transferir imgenes o fotografas. Copiar, mover, renombrar archivos.

Iptables

Segundo Ibarra Eddy Salinas

Introduccin
El kernel de Linux incorpora varias funciones integradas que le permiten trabajar como un firewall TCP/IP Incluye cdigo (el framework Netfilter) que permite interceptar y manipular paquetes de red, Presenta una herramienta en el espacio de usuario (iptables) que el administrador puede usar para establecer las reglas del firewall.

Que son Iptables


Iptables se usa para crear, mantener y revisar las tablas de filtrado de paquetes en el kernel de Linux. Existen diferentes tablas (tables) dentro de las cuales puede haber varias cadenas (chains) Dentro de cada tabla, existen varias cadenas predefinidas y puede haber otras definidas por el usuario.

Cada cadena consiste en una lista de reglas con las que se


comparan los paquetes. Las reglas especifican qu se hace con los paquetes que se ajustan a ellas (target)

Targets
Cuando un paquete no se ajusta a una regla, se contina examinando la siguiente hasta que se ajusta con alguna. En ese momento se examina el target: DROP: El paquete se descarta, no puede pasar ACCEPT: El paquete contina su camino normal Si se llega al final de una chain predefinida se ejecuta un target por

defecto, llamado chain policy.

Tablas
Existen tres tablas (filter, nat y mangle) filter: Es la tabla por defecto y se utiliza para especificar filtros de paquetes. Contiene 3 chains predefinidas

1. INPUT: Se consulta para los paquetes cuyo destino es la propia


mquina 2. FORWARD: La atraviesan los paquetes rutados a travs de esta mquina (tanto origen como destino son externos)

3. OUTPUT: Para paquetes generados localmente

Tablas
nat: esta tabla se consulta cada vez que se ve un paquete que inicia una nueva conexin, con el objetivo de alterar algn parmetro de esa conexin. Tiene 3 chains predefinidas: 1) PREROUTING: Se consulta con los paquetes que entran en la mquina, tan pronto como llegan, antes de decidir qu hacer con ellos . 2) OUTPUT: se utiliza para alterar paquetes generados localmente, antes de rutarlos. 3) POSTROUTING: Para alterar los paquetes que estn a punto de salir de la mquina

Tablas
mangle: Tabla especial, destinada a alterar determinados parmetros de los paquetes (TOS, TTL ...)

PREROUTING
INPUT FORWARD OUTPUT

POSTROUTING

Flujo de paquetes

Listado de reglas
#iptables [-t tabla] [opciones] -L [chain]
Muestra un listado de todas las reglas de una chain, o de todas ellas Opciones disponibles: o -v: informacin detallada o -n: salida numrica o -x: valor exacto de cada nmero

Borrado de contadores
#iptables [-t tabla] -Z [chain]
Borra los contadores de una determinada chain, o de todas ellas. Se puede combinar con la opcin -L para mostrar la

informacin justo antes de borrarla.

Borrado de reglas
#iptables [-t tabla] -F [chain]
Borra las reglas de una determinada chain, o de todas ellas

Creado y borrado de reglas


#iptables #iptables #iptables #iptables #iptables [-t [-t [-t [-t [-t table] table] table] table] table] -A -I -R -D -D chain chain chain chain chain rule-spec [rulenum] rule-spec rulenum rule-spec rule-spec rulenum

-A: Aade una regla al final de la lista -I: Inserta una regla al comienzo de la lista o en el punto especificado -R: Reemplaza una regla (especificada por su nmero de regla) por otra -D: Borra una regla determinada

Especificacin de reglas
Con las opciones -A, -I, -R, y -D de iptables se tiene que especificar una regla: -p [!] protocolo: El protocolo del paquete a comprobar. Puede ser 'tcp', 'udp', 'icmp' o 'all' -[sd] [!] direccin[/mscara]: Direccin ip origen (s) o destino (d) del paquete -[io] [!] iface: Nombre de la interfaz de entrada (i) o de salida (o) del paquete -j target: Especifica el target de dicha regla. Puede ser una accin predefinida (ACCEPT, DROP), una extensin o el nombre de una chain

Establecer poltica por defecto


#iptables [-t table] -P chain target
Establece el taget que se ejecutar para los paquetes que no cumplan

con ninguna regla de la chain especificada

Obtener ayuda
#iptables -h #man iptables

Un ejemplo sencillo

Queremos que slo la mquina B pueda hablar con C, y slo usando el protocolo TCP Los paquetes que no cumplan estas condiciones sern descartados.

#iptables -F FORWARD #iptables -P FORWARD DROP #iptables -t filter -A FORWARD -p tcp -s 192.168.1.2 -d 192.168.2.1 -j ACCEPT #iptables -t filter -A FORWARD -p tcp -s 192.168.2.1 -d 192.168.1.2 -j ACCEPT Ejemplo. Cmo se lee la tercera lnea?

En vez de escribir los comandos uno tras otro, podramos crear un script de shell

Dudas?

FIN