manala.proftpd
#######################################################################################################
:exclamación: DESAPROBACIÓN :exclamación:
Este repositorio y el rol asociado están desaprobados en favor de la Colección de Ansible de Manala
Encontrarás información sobre su uso en el repositorio de la colección
#######################################################################################################
Rol de Ansible: ProFTPd 
:exclamación: Informa problemas y envía Pull Requests en el repositorio principal de Roles de Ansible :exclamación:
Este rol se encargará de la configuración de ProFTPd.
Es parte del stack de Ansible de Manala pero puede ser utilizado como un componente independiente.
Requisitos
Ninguno.
Dependencias
Ninguna.
Instalación
Ansible 2+
Usando la CLI de ansible galaxy:
ansible-galaxy install manala.proftpd
Usando un archivo de requisitos de ansible galaxy:
- src: manala.proftpd
Manejadores del rol
Nombre | Tipo | Descripción |
---|---|---|
proftpd restart |
Servicio | Reiniciar el servidor proftpd |
Variables del rol
Nombre | Predeterminado | Tipo | Descripción |
---|---|---|---|
manala_proftpd_install_packages |
~ | Array | Paquetes de dependencia a instalar |
manala_proftpd_install_packages_default |
['proftpd-basic'] | Array | Paquetes de dependencia predeterminados |
manala_proftpd_configs_exclusive |
false | Boolean | Exclusividad de configuraciones |
manala_proftpd_configs_dir |
'/etc/proftpd/conf.d' | String | Ruta del directorio de configuraciones |
manala_proftpd_configs_defaults |
{} | String | Predeterminados de configuraciones |
manala_proftpd_configs |
[] | Array | Configuraciones |
manala_proftpd_users_file |
'/etc/ftpd.passwd' | String | Ruta del archivo de definición de usuarios |
manala_proftpd_users_template |
'users/_default.j2' | String | Ruta de la plantilla de definición de usuarios |
manala_proftpd_users_defaults |
{...} | Array | Predeterminados de cuentas de usuarios |
manala_proftpd_users |
[] | Array | Cuentas de usuarios de ProFTPd |
Ejemplo de configuración
La clave manala_proftpd_configs
está diseñada para permitirte definir configuraciones basadas en el formato de plantilla elegido.
manala_proftpd_configs_exclusive
permite limpiar los archivos de configuración existentes de proFTPd en el directorio definido por la clave manala_proftpd_configs_dir
. Esto se hace para asegurarse de que no haya archivos antiguos o creados manualmente que alteren la configuración actual.
manala_proftpd_configs_exclusive: true
Se puede proporcionar un estado (presente|ausente).
manala_proftpd_configs:
# Basado en diccionario
- file: default.conf
config:
ServerName: Manala
PassivePorts: 10000 10030
DefaultRoot: "~"
AuthOrder: mod_auth_file.c
AuthUserFile: /etc/ftpd.passwd
RequireValidShell: false
# Basado en array de diccionarios (desaprobado)
- file: default_deprecated.conf
config:
- ServerName: Manala
- PassivePorts: 10000 10030
- DefaultRoot: "~"
- AuthOrder: mod_auth_file.c
- AuthUserFile: /etc/ftpd.passwd
- RequireValidShell: false
# Basado en contenido
- file: content.conf
config: |
<Anonymous ~ftp>
User ftp
Group nogroup
</Anonymous>
# Basado en plantilla
- file: template.conf
template: my_proftpd_template.conf.j2
config:
Foo: bar
# Asegurar que la configuración esté ausente
- file: absent.conf
state: absent # "present" por defecto
# Ignorar configuración
- file: ignore.conf
state: ignore
# Aplanar configuraciones
- "{{ my_custom_configs_array }}"
VirtualHost
También puedes usar la configuración de VirtualHost
- file: virtual_host_foo.conf
config:
- VirtualHost ftp.foo.com:
- ServerName: Servidor FTP Foo
- MaxClients: 10
- MaxLoginAttempts: 1
- Limit LOGIN:
- Order: Allow,Deny
- AllowUser: foo
- Deny: from all
- DefaultRoot: "~"
- Directory /srv/ftp/docs:
- Limit ALL:
- DenyAll
Configuración de cuentas de usuario
Usa la clave manala_proftpd_users_template
para definir los usuarios autorizados a acceder al almacenamiento FTP.
manala_proftpd_users_defaults:
uid: 1337 # Se aplicará por defecto a los usuarios
gid: 7331
manala_proftpd_users:
- name: manala
password: "$1$KBijsXOEr4"b$9HEyZDLPnSe3SXq0n66oE3y/"
home: /srv/my_dir
shell: /bin/false
- name: toto
password: "$1$9f19dba0ce5ece883b53275dcc1721b9"
home: /home/toto
shell: /bin/false
mode: "0755"
uid: 1000
gid: 1000
Te recomendamos encarecidamente que generes un hash de contraseña SHA2.
En Linux, se puede generar con:
echo -n tucontraseña | mkpasswd --method=sha-512 -
Ejemplo de playbook
- hosts: servidores
roles:
- role: manala.proftpd
Licencia
MIT
Información del autor
Manala (http://www.manala.io/) es un proyecto de código abierto respaldado por la agencia web francesa (ELAO)
ansible-galaxy install manala.proftpd