sudo iptables -t nat -A POSTROUTING -o eno1 -j MASQUERADE
Puppet este un tool pentru gestiunea configuratiei unui sistem. Pentru descrierea configuratiilor foloseste un limbaj declarativ. Puppet poate gestiona atat sisteme Linux, cat si Windows.
Puppet abstractizeaza majoritatea entitatilor din sistem prin resurse. De exemplu, fiecare serviciu, fie ca este pornit sau oprit, este vazut ca o resursa.
Folositi comanda puppet resource service
pentru a inspecta serviciile de sistem din perspectiva Puppet:
[root@learn ~]# puppet resource service service { 'abrt-ccpp': ensure => 'running', enable => 'true', } service { 'abrt-oops': ensure => 'stopped', enable => 'false', } service { 'abrtd': ensure => 'running', enable => 'true', } service { 'acpid': ensure => 'running', enable => 'true', } ...
Semnificatia comenzii puppet resource service
este urmatoarea:
In afara de servicii, si alte entitati din sistem sunt abstractizate prin resurse. Spre exemplu:
Afisati resursa ce descrie contul utilizatorului root, folosind comanda puppet resource user root
.
[root@learn ~]# puppet resource user root user { 'root': ensure => 'present', comment => 'root', gid => '0', home => '/root', password => '$1$jrm5tnjw$h8JJ9mCZLmJvIxvDLjw1M/', password_max_age => '99999', password_min_age => '0', shell => '/bin/bash', uid => '0',
Structura resursei este data de urmatoarele elemente:
Sintaxa de mai sus constituie “declararea unei resurse”.
In afara de servicii si utilizatori, Puppet implementeaza multe alte tipuri de resurse. Pentru a le lista, folositi comanda puppet describe –list
:
[root@learn ~]# puppet describe --list These are the types known to puppet: anchor - A simple resource type intended to be used a ... augeas - Apply a change or an array of changes to the ... computer - Computer object management using DirectorySer ... cron - Installs and manages cron jobs exec - Executes external commands file - Manages files, including their content, owner ... file_line - Ensures that a given line is contained withi ... filebucket - A repository for storing and retrieving file ... firewall - This type provides the capability to manage ... firewallchain - This type provides the capability to manage ... group - Manage groups ...
Folosind comanda puppet resource
putem crea si resurse noi. Sintaxa generala este:
puppet resource type name attr1=val1 attr2=val2 …
Dorim sa cream utilizatorul gigel astfel incat:
Comanda Puppet corespunzatoare este:
[root@learn ~]# puppet resource user gigel ensure=present shell="/bin/sh" home="/home/gigel" Notice: /User[gigel]/ensure: created user { 'gigel': ensure => 'present', home => '/home/gigel', shell => '/bin/sh', }
Inspectati fisierul /etc/passwd si verificati ca utilizatorul a fost creat.
Pentru a sterge o resursa, atributul ensure al acesteia trebuie setat la valoarea absent.
De exemplu, pentru a sterge utilizatorul gigel creat anterior:
[root@learn ~]# puppet resource user gigel ensure=absent Notice: /User[gigel]/ensure: removed user { 'gigel': ensure => 'absent', }
Verificati, din nou, in /etc/passwd faptul ca utilizatorul a fost sters.