apuntes:servicios_transferencia
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
apuntes:servicios_transferencia [2017/09/28 15:21] – [Servicio SSH (Secure SHell)] Santiago Faci | apuntes:servicios_transferencia [2019/01/04 13:02] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 10: | Line 10: | ||
=== Servidores FTP === | === Servidores FTP === | ||
+ | |||
+ | [[http:// | ||
<code bash> | <code bash> | ||
santi@zenbook: | santi@zenbook: | ||
</ | </ | ||
+ | |||
+ | El fichero de configuración principal lo podemos encontrar en ''/ | ||
<file apache / | <file apache / | ||
Line 25: | Line 29: | ||
=== Servidores SFTP === | === Servidores SFTP === | ||
+ | |||
+ | En el caso de que queramos utilizar una opción segura a este protocolo, podemos utilizar también '' | ||
<code bash> | <code bash> | ||
santi@zenbook: | santi@zenbook: | ||
</ | </ | ||
+ | |||
+ | En este caso el fichero de configuración lo encontraremos en ''/ | ||
=== Clientes FTP === | === Clientes FTP === | ||
+ | |||
+ | Como cliente FTP de consola tendremos el comando '' | ||
<code bash> | <code bash> | ||
Line 44: | Line 54: | ||
ftp> | | ftp> | | ||
</ | </ | ||
+ | |||
+ | Utilizando el comando '' | ||
<code bash> | <code bash> | ||
Line 66: | Line 78: | ||
debug macdef proxy send | debug macdef proxy send | ||
</ | </ | ||
+ | |||
+ | A continuación se describen los más utilizados | ||
< | < | ||
Line 76: | Line 90: | ||
| ls | Lista el contenido de un directorio de la máquina remota| | | ls | Lista el contenido de un directorio de la máquina remota| | ||
| mdelete | Elimina múltiples ficheros en la máquina remota | | | mdelete | Elimina múltiples ficheros en la máquina remota | | ||
+ | | mget | Descarga múltiples ficheros en la máquina local | | ||
| mkdir | Crea un directorio en la máquina remota | | | mkdir | Crea un directorio en la máquina remota | | ||
| mput | Sube múltiples ficheros a la máquina remota | | | mput | Sube múltiples ficheros a la máquina remota | | ||
Line 84: | Line 99: | ||
| verbose | Activa/ | | verbose | Activa/ | ||
< | < | ||
+ | |||
+ | Hay que tener en cuenta que podemos obtener, interactivamente, | ||
<code bash> | <code bash> | ||
Line 89: | Line 106: | ||
rmdir | rmdir | ||
</ | </ | ||
+ | |||
+ | En el caso de que queramos conectar a un FTP seguro, utilizando el servicio SSH, podemos hacerlo conectando a través del comando '' | ||
<code bash> | <code bash> | ||
Line 96: | Line 115: | ||
Are you sure you want to continue connecting (yes/ | Are you sure you want to continue connecting (yes/ | ||
</ | </ | ||
+ | |||
+ | Igualmente contamos con ayuda sobre los diferentes comandos de que disponemos, muy del estilo a los que podemos encontrar en un servicio FTP | ||
<code bash> | <code bash> | ||
Line 134: | Line 155: | ||
sftp> | sftp> | ||
</ | </ | ||
+ | |||
+ | Conviene tener en cuenta que la IP asociada a un dominio puede cambiar. En ese caso el comando '' | ||
<code bash> | <code bash> | ||
Line 154: | Line 177: | ||
Couldn' | Couldn' | ||
</ | </ | ||
+ | |||
+ | En el caso de que estemos seguros de que simplemente ha sido un cambio de IP y confiemos plenamente en el servidor al que nos vamos a conectar, podremos añadir dicho dominio al registro de //hosts conocidos// con el siguiente comando: | ||
<code bash> | <code bash> | ||
Line 161: | Line 186: | ||
Original contents retained as / | Original contents retained as / | ||
</ | </ | ||
+ | ==== Configuración del servicio FTP ==== | ||
+ | |||
+ | === Creación de un sistema de cuentas de usuario === | ||
+ | |||
+ | El primer paso será instalar el servidor FTP '' | ||
+ | |||
+ | <code bash> | ||
+ | santi@zenbook: | ||
+ | </ | ||
+ | |||
+ | En el sistema tendremos que crear un grupo y usuario al que asignaremos a todos aquellos usuarios que, más adelante, se registren a través de la Base de Datos | ||
+ | |||
+ | <code bash> | ||
+ | santi@zenbook: | ||
+ | santi@zenbook: | ||
+ | </ | ||
+ | |||
+ | Y echando un vistazo a los ficheros ''/ | ||
+ | |||
+ | <code bash> | ||
+ | santi@zenbook: | ||
+ | usuarioftp: | ||
+ | santi@zenbook: | ||
+ | grupoftp: | ||
+ | </ | ||
+ | |||
+ | De la salida de los dos últimos comandos podemos concluir que el usuario '' | ||
+ | |||
+ | <code sql> | ||
+ | CREATE DATABASE ftp; | ||
+ | USE ftp; | ||
+ | |||
+ | CREATE TABLE usuarios ( | ||
+ | | ||
+ | | ||
+ | uid INTEGER default 1002, | ||
+ | gid INTEGER default 1003, | ||
+ | home VARCHAR(255), | ||
+ | shell VARCHAR(255) default NULL, | ||
+ | | ||
+ | ); | ||
+ | |||
+ | CREATE TABLE grupos ( | ||
+ | | ||
+ | gid INTEGER NOT NULL, | ||
+ | | ||
+ | ); | ||
+ | </ | ||
+ | |||
+ | Activamos el módulo de SQL en la configuración de proftpd | ||
+ | |||
+ | <file apache / | ||
+ | . . . | ||
+ | LoadModule mod_sql.c | ||
+ | . . . | ||
+ | </ | ||
+ | |||
+ | Y en el fichero de configuración principal modificamos algunos parámetros | ||
+ | |||
+ | <file apache / | ||
+ | . . . | ||
+ | # No es necesario que los usuarios tengan una consola de sistema | ||
+ | RequireValidShell Off | ||
+ | # Hace que los usuarios no puedan salir de su carpeta de inicio | ||
+ | DefaultRoot ~ | ||
+ | . . . | ||
+ | </ | ||
+ | |||
+ | Ahora pasamos a configurar la conexión de proftpd con la Base de Datos | ||
+ | |||
+ | <file apache etc/ | ||
+ | SQLBackend | ||
+ | SQLAuthTypes | ||
+ | SQLConnectInfo | ||
+ | SQLUserInfo | ||
+ | SQLGroupInfo | ||
+ | SQLUserWhereClause | ||
+ | </ | ||
+ | |||
+ | Para que los cambios sean efectivos tendremos que reiniciar el servicio | ||
+ | |||
+ | <code bash> | ||
+ | santi@zenbook: | ||
+ | </ | ||
+ | |||
+ | Y registrar el grupo en la Base de Datos: | ||
+ | |||
+ | <code sql> | ||
+ | INSERT INTO grupos (nombre, gid, miembros) VALUES (" | ||
+ | </ | ||
+ | |||
+ | Por último, nos queda dar de alta algún usuario en la Base de Datos para comprobar que todo funciona correctamente | ||
+ | |||
+ | <code sql> | ||
+ | INSERT INTO usuarios (usuario, password, home) VALUES (" | ||
+ | </ | ||
+ | |||
+ | Habrá que asegurarse de que dicha carpeta existe y, en caso contrario, crearla y asignarle permisos correctamente | ||
+ | |||
+ | <code bash> | ||
+ | santi@zenbook: | ||
+ | </ | ||
+ | |||
+ | Y ahora ya podemos probar a conectarnos a nuestro servidor FTP con el nuevo usuario creado | ||
+ | |||
+ | <code bash> | ||
+ | santi@zenbook: | ||
+ | Connected to localhost. | ||
+ | 220 Proftpd 1.3.5b Server (Debian) [::1] | ||
+ | Name (localhost: | ||
+ | </ | ||
+ | |||
- | < | ||
- | {{ filezilla.png}} | ||
- | {{bareftp.png }} | ||
- | < | ||
- | === Configuración del servicio FTP === | ||
==== Servicio SSH (Secure SHell) ==== | ==== Servicio SSH (Secure SHell) ==== | ||
Line 193: | Line 325: | ||
===== Ejercicios ===== | ===== Ejercicios ===== | ||
+ | |||
+ | - Conectate a un servidor FTP y descarga varios ficheros evitando que el servidor te pida confirmación para descargar cada uno de ellos | ||
+ | - Conectate a un servidor FTP y sube varios ficheros que se encuentran en diferentes carpetas en tu equipo local. En el servidor deben estar juntos en una sola carpeta que se llamara '' | ||
+ | - Conectate al servidor FTP y elimina una serie de ficheros | ||
+ | - A partir de tu máquina Debian 9 instala lo necesario para montar un sistema de usuarios en MySQL para el servidor FTP proftpd | ||
---- | ---- |
apuntes/servicios_transferencia.1506612069.txt.gz · Last modified: 2019/01/04 13:02 (external edit)