Implementación masiva
Este tema proporciona información general de alto nivel de implementación masiva de ESET Server Security for Linux a través de Puppet, Chef y Ansible. Los siguientes bloques de código contienen solo ejemplos básicos de cómo se podrían instalar los paquetes. Pueden diferir según la distribución de Linux.
Selección de paquetes
Antes de iniciar la implementación masiva de ESET Server Security for Linux, debe decidir el paquete que usará. ESET Server Security for Linux se distribuye como un paquete .bin. Sin embargo, puede obtener el paquete deb/rpm al ejecutar el script de distribución de ESET con el argumento de la línea de comandos "-n".
Puppet
Condiciones previas
•paquete bin o deb/rpm disponible en puppet-master
•puppet-agent conectado con puppet-master
Paquete Bin
Pasos de implementación:
•copiar el paquete de instalación bin en los equipos deseados
•ejecutar el paquete de instalación bin
Muestra del manifiesto de Puppet node default { file {"/tmp/efs-8.0.1081.0.x86_64.bin": mode => "0700", owner => "root", group => "root", source => "puppet:///modules/efs/efs-8.0.1081.0.x86_64.bin" } exec {"Execute bin package installation": command => '/tmp/efs-8.0.1081.0.x86_64.bin -y -f' } } |
Paquete deb/rpm
Pasos de implementación:
•copiar paquete de instalación deb/rpm según la familia de distribución en los equipos deseados
•ejecutar paquete de instalación deb/rpm
Dependencias Las dependencias deben resolverse antes de comenzar la instalación |
Muestra del manifiesto de Puppet node default { if $osfamily == 'Debian' { file {"/tmp/efs-8.0.1081.0.x86_64.deb": mode => "0700", owner => "root", group => "root", source => "puppet:///modules/efs/efs-8.0.1081.0.x86_64.deb" } package {"efs": ensure => "installed", provider => 'dpkg', source => "/tmp/efs-8.0.1081.0.x86_64.deb" } } if $osfamily == 'RedHat' {
file {"/tmp/efs-8.0.1081.0.x86_64.rpm": mode => "0700", owner => "root", group => "root", source => "puppet:///modules/efs/efs-8.0.1081.0.x86_64.rpm" }
package {"efs": ensure => "installed", provider => 'rpm', source => "/tmp/efs-8.0.1081.0.x86_64.rpm" } } } |
Chef
Condiciones previas
•paquete bin o deb/rpm disponible en servidor Chef
•Cliente Chef conectado con servidor Chef
Paquete Bin
Pasos de implementación:
•copiar el paquete de instalación bin en los equipos deseados
•ejecutar el paquete de instalación bin
Muestra de la receta de Chef cookbook_file '/tmp/efs-8.0.1084.0.x86_64.bin' do source 'efs-7.0.1084.0.x86_64.bin' owner 'root' group 'root' mode '0700' action :create end
execute 'package_install' do command '/tmp/efs-8.0.1084.0.x86_64.bin -y -f' end |
Paquete deb/rpm
Pasos de implementación:
•copiar paquete de instalación deb/rpm según la familia de distribución en los equipos deseados
•ejecutar paquete de instalación deb/rpm
Dependencias Las dependencias deben resolverse antes de comenzar la instalación |
Muestra de la receta de Chef cookbook_file '/tmp/efs-8.0.1084.0.x86_64.deb' do source 'efs-8.0.1084.0.x86_64.deb' owner 'root' group 'root' mode '0700' action :create only_if { node['platform_family'] == 'debian'} end
cookbook_file '/tmp/efs-8.0.1084.0.x86_64.rpm' do source 'efs-8.0.1084.0.x86_64.rpm' owner 'root' group 'root' mode '0700' action :create only_if { node['platform_family'] == 'rhel'}
dpkg_package 'efsu' do source '/tmp/efs-8.0.1084.0.x86_64.deb' action :install only_if { node['platform_family'] == 'debian'} end
rpm_package 'efsu' do source '/tmp/efs-8.0.1084.0.x86_64.rpm' action :install only_if { node['platform_family'] == 'rhel'} end |
Ansible
Condiciones previas
•paquete bin o deb/rpm disponible en servidor Ansible
•acceso ssh a equipos de destino
Paquete Bin
Pasos de implementación:
•copiar el paquete de instalación bin en los equipos deseados
•ejecutar el paquete de instalación bin
Muestra de la tarea de Playbook .... - name: "INSTALL: Copy configuration json files" copy: src: efs-8.0.1084.0.x86_64.bin dest: /home/ansible/
- name : "Install product bin package" shell: bash ./efs-8.0.1084.0.x86_64.bin -y -f -g ..... |
Paquete deb/rpm
Pasos de implementación:
•copiar paquete de instalación deb/rpm según la familia de distribución en los equipos deseados
•ejecutar paquete de instalación deb/rpm
Muestra de la tarea de Playbook .... - name: "Copy deb package to VM" copy: src: ./efs-8.0.1085.0.x86_64.deb dest: /home/ansible/efs-8.0.1085.0.x86_64.deb owner: ansible mode: a+r when: - ansible_os_family == "Debian"
- name: "Copy rpm package to VM" copy: src: ./efs-8.0.1085.0.x86_64.rpm dest: /home/ansible/efs-8.0.1085.0.x86_64.rpm owner: ansible mode: a+r when: - ansible_os_family == "RedHat"
- name: "Install deb package" apt: deb: /home/ansible/efs-8.0.1085.0.x86_64.deb state: present when: - ansible_os_family == "Debian"
- name: "Install rpm package" yum: name: /home/ansible/efs-8.0.1085.0.x86_64.rpm state: present when: - ansible_os_family == "RedHat" .... |