informatica:linux:sftp
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
informatica:linux:sftp [2015/07/20 09:57] – [sftp] javi | informatica:linux:sftp [2018/10/22 09:43] (current) – [Restringir sftp a un usuario con escritura] javi | ||
---|---|---|---|
Line 5: | Line 5: | ||
Comentario comun a todos lo articulos: | Comentario comun a todos lo articulos: | ||
- | * El directorio especificado en " | + | * El directorio especificado en " |
+ | |||
+ | drwxr-xr-x 4 root root 4096 Nov 17 12:02 www | ||
+ | |||
+ | Es decir, pertenecer al usuario | ||
+ | |||
+ | < | ||
+ | packet_write_wait: | ||
+ | Couldn' | ||
+ | </ | ||
===== Restringir sftp a un usuario y a una IP, solo lectura ===== | ===== Restringir sftp a un usuario y a una IP, solo lectura ===== | ||
Line 41: | Line 50: | ||
===== Restringir sftp a un usuario con escritura ===== | ===== Restringir sftp a un usuario con escritura ===== | ||
+ | |||
+ | **NOTA** Procedimiento revisado 22/10/2018. Sospecho que otras secciones en este artículo deben ser revisados | ||
1. Crear el usuario " | 1. Crear el usuario " | ||
Line 48: | Line 59: | ||
Contestar a todas las preguntas. Recordar la contrasenya | Contestar a todas las preguntas. Recordar la contrasenya | ||
- | 2. Crear el directorio al que se podra conectar: | + | 2. Crear el punto de montaje: |
- | sudo mkdir -p /srv/ftp/usuario/ftp | + | sudo mkdir -p /srv/ftp/ftp_user/ftp |
- | sudo chmod 0755 /srv/ftp/usuario/ | + | sudo chmod 0755 /srv/ftp/ftp_user/ |
| | ||
- | 3. Crear el punto de montaje: | + | 3. Crear el directorio al cual se podrá conectar: |
- | sudo mkdir -p /home/usuario/ftp | + | sudo mkdir -p /home/ftp_user/ftp |
- | sudo chown usuario:usuario | + | sudo touch / |
+ | sudo chown ftp_user:ftp_user | ||
| | ||
4. Montarlo de forma persistente: | 4. Montarlo de forma persistente: | ||
Line 64: | Line 76: | ||
Con la siguiente linea: | Con la siguiente linea: | ||
- | /srv/ftp/usuario/ftp /home/ | + | /home/ |
5. Editar: | 5. Editar: | ||
Line 76: | Line 88: | ||
Subsystem sftp internal-sftp | Subsystem sftp internal-sftp | ||
- | Match User usuario | + | Match User ftp_user |
PasswordAuthentication yes | PasswordAuthentication yes | ||
- | ChrootDirectory /srv/ftp/usuario | + | ChrootDirectory /srv/ftp/ftp_user |
AllowTCPForwarding no | AllowTCPForwarding no | ||
X11Forwarding no | X11Forwarding no | ||
Line 90: | Line 102: | ||
7. Probar desde el cliente: | 7. Probar desde el cliente: | ||
- | sftp usuario@maquina_remota | + | sftp ftp_user@maquina_remota |
cd ftp | cd ftp | ||
put local_file.txt | put local_file.txt | ||
+ | | ||
+ | **NOTA** Para que funcione, y esto hay que revisarlo, el directorio padre tiene que pertener a root y el hijo al usuario ftp: | ||
+ | |||
+ | ^ Directorio ^ Propietario ^ | ||
+ | | / | ||
+ | | / | ||
+ | |||
+ | ===== Acceso escritura usuario www-data ===== | ||
+ | |||
+ | Es un parche para que se puedan subir archivos vía SFTP o a través de la aplicación web (por ejemplo Wordpress) sin que haya colisión de permisos: | ||
+ | |||
+ | 1. Editar el archivo original: | ||
+ | |||
+ | sudo cp / | ||
+ | sudo vim / | ||
+ | | ||
+ | Y anyadir al final: | ||
+ | |||
+ | AllowUsers www-data | ||
+ | |||
+ | 2. Editar: | ||
+ | |||
+ | sudo cp /etc/passwd / | ||
+ | sudo vim /etc/passwd | ||
+ | | ||
+ | Y dejar la linea del usuario ' | ||
+ | |||
+ | www-data: | ||
+ | |||
+ | 3. Asignar una contraseña al usuario ' | ||
+ | |||
+ | sudo passwd www-data | ||
+ | | ||
+ | 4. Probar: | ||
+ | |||
+ | sftp www-data@ip_servidor | ||
+ |
informatica/linux/sftp.txt · Last modified: 2018/10/22 09:43 by javi