xat59.vsftpd
Descripción
Instalar y configurar el servidor FTP vsftpd.
Características:
- usuarios locales
- usuarios virtuales
- chrooting
- inseguro / tls v1
- TLS explícito e implícito
- varias instancias de vsftpd
No cubre:
- creación de certificados y claves SSL
Instalación del rol
$ git clone https://github.com/Xat59/ansible-role-vsftpd
Variables
vsftpd_enable_local_users: Habilitar la conexión de usuarios locales
Nota: Si vsftpd_enable_virt_users es 'true', el valor de esta variable se sobrescribirá a 'true'.- requerido: No
- valor predeterminado: true
- opciones: true o false
vsftpd_chroot_local_users: Habilitar chrooting para usuarios locales
Nota: el chrooting requiere que el usuario esté chrooted en una ruta de chroot válida (propietario y modo).- requerido: No
- valor predeterminado: false
- opciones: true o false
vsftpd_ftp_banner: Banner de saludo cuando una conexión llega por primera vez.
- requerido: No
- valor predeterminado: Servidor FTP privado
vsftpd_passive_min_port: Número mínimo de puerto para conexión de datos
Nota: útil para la configuración del firewall.- requerido: No
vsftpd_passive_max_port: Número máximo de puerto para conexión de datos
Nota: útil para la configuración del firewall.- requerido: No
vsftpd_passive_address: Dirección IP para la conexión.
- requerido: No
vsftpd_ssl_enabled: Habilitar o deshabilitar el soporte SSL.
- requerido: No
- valor predeterminado: false
- opciones: true o false
vsftpd_ssl_privkey: Ruta a la clave del certificado SSL.
- requerido: si vsftpd_ssl_enabled es 'True'.
vsftpd_ssl_certificate: Ruta al certificado SSL.
- requerido: si vsftpd_ssl_enabled es 'True'.
vsftpd_ssl_implicit: Habilitar o deshabilitar TLS implícito
Si habilitado, un apretón de manos SSL es lo primero que se espera en todas las conexiones (FTPs)
Si deshabilitado, se habilita TLS explícito (FTPes).- requerido: No
- valor predeterminado: true
- opciones: true o false
vsftpd_systemd_service_name: Nombre de la instancia de vsftpd
Nota: Si redefinido, el archivo de configuración de vsftpd y el archivo de servicio systemd heredarán este nombre. Si no se redefine, el archivo de configuración y el archivo de servicio systemd mantendrán sus valores predeterminados.
Ejemplo: con vsftpd_systemd_service_name establecido en 'vsftpd-implicit', el archivo de configuración será /etc/vsftpd/vsftpd-implicit.conf y el archivo de servicio systemd será vsftpd@vsftpd-implicit.service.- requerido: No
- valor predeterminado: vsftpd
vsftpd_guest_username: Un inicio de sesión de invitado (todas las no anónimas) se remapea al usuario real especificado en esta configuración.
- requerido: No
vsftpd_enable_virt_users: Habilitar usuarios virtuales en la instancia de vsftpd
Nota: establecer esta variable en 'true' sobrescribirá la variable vsftpd_chroot_local_users a 'true'.- requerido: No. Pero, si tienes que definir usuarios virtuales a través de vsftpd_virt_users, debes establecer vsftpd_enable_virt_users a 'True'.
- valor predeterminado: false
- opciones: true o false
vsftpd_no_log: Deshabilitar la registración de tareas que manejan información sensible.
- requerido: No.
- valor predeterminado: true
- opciones: true o false
vsftpd_virt_users: Lista de usuarios virtuales habilitados con sobrescrituras de parámetros por usuario.
requerido: No
Parámetros disponibles por usuario:
- username: nombre de usuario del usuario virtual actual.
- requerido: Sí
- password: contraseña del usuario virtual actual.
- requerido: Sí
- local_root: directorio home del usuario virtual actual.
- requerido: No
- write_enable: permiso de escritura del usuario virtual actual.
- requerido: No
- guest_username: remapeo del usuario virtual actual al usuario local especificado.
- requerido: No
Ejemplo: ver ejemplos a continuación.
- username: nombre de usuario del usuario virtual actual.
Uso
- FTP inseguro
---
- hosts: host01
gather_facts: yes
become: yes
- role: ansible-role-vsftpd
- FTP seguro con TLS explícito (FTPes)
---
- hosts: host01
gather_facts: yes
become: yes
- role: ansible-role-vsftpd
vsftpd_ssl_enabled: true
vsftpd_ssl_privkey: /etc/vsftpd/ssl/vsftpd.key
vsftpd_ssl_certificate: /etc/vsftpd/ssl/vsftpd.crt
vsftpd_ssl_implicit: false
- FTP seguro con TLS implícito (FTPs)
---
- hosts: host01
gather_facts: yes
become: yes
- role: ansible-role-vsftpd
vsftpd_ssl_enabled: true
vsftpd_ssl_privkey: /etc/vsftpd/ssl/vsftpd.key
vsftpd_ssl_certificate: /etc/vsftpd/ssl/vsftpd.crt
vsftpd_ssl_implicit: true
- FTP inseguro con usuarios virtuales
---
- hosts: host01
gather_facts: yes
become: yes
- role: ansible-role-vsftpd
vsftpd_enable_virt_users: true
vsftpd_virt_users:
- username: xat
password: xat
guest_username: www-data
local_root: /var/www/
write_enable: yes
- username: jdoe
password: jdoe
guest_username: www-data
local_root: /var/www
write_enable: no
Contribuir
Hoja de ruta
ansible-galaxy install xat59.vsftpd