honzamach.geoip

.. _section-role-geoip:

Rol geoip

  • Página de Ansible Galaxy <https://galaxy.ansible.com/honzamach/geoip>__
  • Repositorio de GitHub <https://github.com/honzamach/ansible-role-geoip>__
  • Página de Travis CI <https://travis-ci.org/honzamach/ansible-role-geoip>__

Rol de Ansible para la instalación conveniente de las bases de datos de geolocalización IP gratuitas GeoLite2 <https://dev.maxmind.com/geoip/geoip2/geolite2/#Download_Access>__ proporcionadas por MaxMind <https://www.maxmind.com/en/home>__.

Tabla de Contenidos:

  • :ref:section-role-geoip-installation
  • :ref:section-role-geoip-dependencies
  • :ref:section-role-geoip-usage
  • :ref:section-role-geoip-variables
  • :ref:section-role-geoip-files
  • :ref:section-role-geoip-author

Este rol es parte del paquete MSMS <https://github.com/honzamach/msms>__. Algunas características comunes están documentadas en su :ref:manual <section-manual>.

.. _section-role-geoip-installation:

Instalación

Para instalar el rol honzamach.geoip <https://galaxy.ansible.com/honzamach/geoip>__ desde Ansible Galaxy <https://galaxy.ansible.com/>__, utiliza la siguiente variación del siguiente comando::

ansible-galaxy install honzamach.geoip

Para instalar el rol directamente desde GitHub <https://github.com>__ clonando el repositorio ansible-role-geoip <https://github.com/honzamach/ansible-role-geoip>__, usa la siguiente variación del siguiente comando::

git clone https://github.com/honzamach/ansible-role-geoip.git honzamach.geoip

Actualmente, la ventaja de usar la clonación directa de Git es la capacidad de actualizar fácilmente el rol cuando sale una nueva versión.

.. _section-role-geoip-dependencies:

Dependencias

Este rol no depende de otros roles.

Los siguientes roles dependen de este rol:

  • :ref:mentat <section-role-mentat>
  • :ref:mentat_dev <section-role-mentat-dev>

.. _section-role-geoip-usage:

Uso

Ejemplo de contenido de archivo de inventario inventory::

[servers_geoip]
tu-servidor

Ejemplo de contenido de archivo de playbook del rol role_playbook.yml::

- hosts: servers_geoip
  remote_user: root
  roles:
    - role: honzamach.geoip
  tags:
    - role-geoip

Ejemplo de uso::

# Ejecutar todo:
ansible-playbook --ask-vault-pass --inventory inventory role_playbook.yml

Se recomienda seguir estos principios de configuración:

  • Crea/edita el archivo inventory/group_vars/all/vars.yml y dentro define algunas configuraciones sensatas para todos tus servidores administrados. Ejemplo::

      hm_geoip__account_id: "{{ vault_hm_geoip__account_id }}"
      hm_geoip__license_key: "{{ vault_hm_geoip__license_key }}"
    
  • Crea/edita el archivo encriptado :ref:vault <section-overview-vault> inventory/group_vars/all/vault.yml y dentro almacena tu contraseña de cifrado de respaldo::

      vault_hm_geoip__account_id: 123456
      vault_hm_geoip__license_key: algo-tan-secreto-que-nadie-lo-averiguará
    
  • Usa los archivos inventory/host_vars/[tu-servidor]/vars.yml para personalizar configuraciones para servidores en particular. Consulta la sección :ref:section-role-geoip-variables para todas las opciones disponibles.

.. _section-role-geoip-variables:

Variables de configuración

Variables internas del rol


.. envvar:: hm_geoip__package_url

    URL por defecto del paquete desde el cual instalar la utilidad geoipupdate.

    * *Tipo de dato:* ``string``
    * *Por defecto:* ``https://github.com/maxmind/geoipupdate/releases/download/v4.1.5/geoipupdate_4.1.5_linux_amd64.deb``

.. envvar:: hm_geoip__account_id

    Tu identificador único de cuenta de MaxMind (numérico).

    * *Tipo de dato:* ``integer``
    * *Por defecto:* ``null``

.. envvar:: hm_geoip__license_key

    Tu clave de licencia de cuenta de MaxMind. Asegúrate de haber habilitado la opción *Update* durante la creación de la clave.

    * *Tipo de dato:* ``string``
    * *Por defecto:* ``null``

.. envvar:: hm_geoip__edition_ids

    Lista de bases de datos de geolocalización IP solicitadas para ser instaladas en el host objetivo.

    * *Tipo de dato:* ``lista de strings``
    * *Por defecto:* ``["GeoLite2-ASN", "GeoLite2-City", "GeoLite2-Country"]``

.. envvar:: hm_geoip__database_directory

    El directorio para almacenar los archivos de la base de datos.

    * *Tipo de dato:* ``string``
    * *Por defecto:* ``/usr/share/GeoIP``


Variables integradas de Ansible

.. envvar:: ansible_lsb['codename']

El nombre en clave de la distribución de Debian se usa para la :ref:`personalización de plantillas <section-overview-role-customize-templates>`.

.. _section-role-geoip-files:

Archivos gestionados

.. nota::

Este rol soporta la característica de :ref:`personalización de plantillas <section-overview-role-customize-templates>`.

Este rol gestiona el contenido de los siguientes archivos en el sistema objetivo:

  • /etc/cron.d/geoipupdate [PLANTILLA]
  • /etc/GeoIP.conf [PLANTILLA]

.. _section-role-geoip-author:

Autor y licencia

| Copyright: (C) desde 2019 Honza Mach honza.mach.ml@gmail.com | Autor: Honza Mach honza.mach.ml@gmail.com | El uso de este rol está regido por la licencia MIT, consulta el archivo LICENSE. |

Acerca del proyecto

Ansible role for convenient installation of the free IP geolocation databases GeoLite2 provided by MaxMind.

Instalar
ansible-galaxy install honzamach.geoip
Licencia
mit
Descargas
169
Propietario