Ansible

Installeer Ansible op Debian voor automatisering

Installeer Ansible op Debian voor automatisering

Netwerk topologie

Hier, ansible-pc is een Debian 10-machine waarop we Ansible zullen installeren.

de servers 6f7c2 en 6b219 zijn Debian 10-machines die we zullen configureren voor Ansible-automatisering. Ik zal deze servers gewoon Ansible-hosts noemen voor het doel van dit artikel.

We kunnen Ansible gebruiken van ansible-pc om verschillende taken in de te automatiseren 6f7c2 en 6b219 Debian-servers.

Ansible installeren

In deze sectie laat ik je zien hoe je Ansible installeert op ansible-pc.

U kunt Ansible op Debian 10 installeren vanuit de officiële pakketrepository van Debian.

Werk eerst de cache van de APT-pakketrepository bij met de volgende opdracht:

$ sudo apt-update

Installeer nu Ansible met de volgende opdracht:

$ sudo apt install ansible

Om de installatie te bevestigen, drukt u op Y en druk vervolgens op .

Ansible moet worden geïnstalleerd.

Voer nu de volgende opdracht uit om te controleren of Ansible correct werkt:.

$ ansible --versie

Zoals je kunt zien, is het ansible-commando beschikbaar en werkt het correct. Ansible 2.7.7 is de nieuwste versie van Ansible die beschikbaar was in de pakketrepository van Debian op het moment dat dit artikel werd geschreven.

SSH-sleutel genereren

Op de Debian 10-machine (ansible-pc) waar je Ansible hebt geïnstalleerd, moet je eerst een SSH-sleutel genereren.

Voer de volgende opdracht uit om een ​​SSH-sleutel te genereren:

$ ssh-keygen

Druk nu op .

druk op .

druk op .

Er moet een SSH-sleutel worden gegenereerd.

Debian-hosts configureren voor Ansible-automatisering

In deze sectie laat ik u zien hoe u een Debian-host configureert voor Ansible-automatisering. Als je meerdere hosts hebt die je wilt automatiseren met Ansible, herhaal dan hetzelfde proces voor elk van de hosts.

Op de hosts die u wilt configureren voor Ansible-automatisering moet het SSH-serverpakket vooraf zijn geïnstalleerd.

Werk eerst de cache van de APT-pakketrepository bij met de volgende opdracht:

$ sudo apt-update

Installeer vervolgens de OpenSSH-server met de volgende opdracht:

$ sudo apt install openssh-server -y

In mijn geval is het OpenSSH-serverpakket al geïnstalleerd. Als het in uw geval niet is geïnstalleerd, moet het voorafgaand aan deze stap worden geïnstalleerd.

Controleer nu of de sshd service wordt uitgevoerd via de volgende opdracht:

$ sudo systemctl status sshd

Zoals je kunt zien, is de sshd service is actief (rennen) en ingeschakeld (start automatisch bij het opstarten van het systeem).

Als de sshd service is niet actief (actief), start het handmatig met de volgende opdracht:

$ sudo systemctl start sshd

Als de sshd service is niet ingeschakeld (niet toegevoegd aan het opstarten van het systeem) in uw geval, voeg het in uw geval handmatig toe aan het opstarten van het systeem met de volgende opdracht:

$ sudo systemctl sshd inschakelen

Maak nu een weerbaar gebruiker en sta wachtwoordloze sudo-toegang toe tot de weerbaar gebruiker.

om een ​​te maken weerbaar gebruiker, voer de volgende opdracht uit:

$ sudo adduser --shell /bin/bash --gecos "" ansible

Typ een wachtwoord voor de weerbaar gebruiker en druk op .

Typ het wachtwoord opnieuw en druk op .

Een weerbaar gebruiker moet worden aangemaakt.

Nu, om wachtwoordloze sudo-toegang tot de weerbaar gebruiker, bewerk de /etc/sudoers bestand met het volgende commando:

$ sudo visudo

Voeg nu de volgende regel toe aan de /etc/sudoers het dossier.

ansible ALL=(ALL) NOPASSWD:ALL

Sla het bestand vervolgens op door op te drukken + X gevolgd door Y, en druk vervolgens op .

Zoek nu het IP-adres van de Ansible-host 6f7c2 met het volgende commando:

$ hostnaam -I

Hier is het IP-adres in mijn geval: 192.168.20.167. Het zal voor jou anders zijn. Zorg er dus voor dat u dit adres nu vervangt door uw eigen formulier.

Openbare SSH-sleutel kopiëren naar de Ansible-host

Vanaf de computer waarop je Ansible hebt geïnstalleerd (ansible-pc), kopieer de openbare SSH-sleutel naar de Ansible-host 6f7c2 als volgt:

$ ssh-copy-id [email protected]

Typ in Ja en druk op .

Typ vervolgens het wachtwoord voor de weerbaar gebruiker en druk op .

De openbare SSH-sleutel moet worden gekopieerd naar de Ansible-host 6f7c2.

Je zou in staat moeten zijn om te SSH naar de Ansible-host 6f7c2 als de gebruiker weerbaar zonder wachtwoord, zoals je kunt zien in de onderstaande schermafbeelding:

$ ssh [email protected]

Je zou ook sudo-commando's moeten kunnen uitvoeren zonder dat je om een ​​wachtwoord wordt gevraagd.

$ sudo ls /

Sluit ten slotte de SSH-sessie als volgt af:

$ afsluiten

Ansible-hosts beveiligen

als de weerbaar gebruiker kan elke sudo-opdracht uitvoeren zonder om een ​​wachtwoord te worden gevraagd, we hebben de op SSH-sleutel gebaseerde login geconfigureerd voor de Ansible-hosts. Maar je kunt nog steeds SSH naar de Ansible-hosts als weerbaar gebruiker met het wachtwoord van de of weerbaar gebruiker. Dit is dus niet erg veilig.

Om de beveiliging te verbeteren, voert u de volgende opdracht uit op de Ansible-hosts om op wachtwoord gebaseerde aanmelding uit te schakelen voor de weerbaar gebruiker:

$ sudo usermod -L ansible

Als u later besluit om op wachtwoord gebaseerde aanmelding in te schakelen voor de weerbaar gebruiker, voert u de volgende opdracht uit op de Ansible-host:

$ sudo usermod -U ansible

Ansible testen

Een nieuwe projectdirectory maken ~/project/ op de Debian-machine waarop u Ansible hebt geïnstalleerd (ansible-pc) met de volgende code:

$ mkdir ~/project

Navigeer naar de ~/project/ directory met de volgende code:

$ cd ~/project/

Maak een nieuwe gastheren bestand in de projectdirectory als volgt:

$ nano-hosts

Maak nu een lijst van de IP-adressen of DNS-namen van de Ansible-hosts (6f7c2 en 6b219 in mijn geval) in de gastheren het dossier:

192.168.20.167
192.168.20.168

Als u klaar bent, slaat u het bestand op door op . te drukken + X gevolgd door Y en dan hit .

Probeer om te testen alle hosts met Ansible te pingen met de volgende code:

$ ansible -i ./hosts alle -u ansible -m ping

OPMERKING: Hier de -jij optie wordt gebruikt om de gebruikersnaam (weerbaar in dit geval) die Ansible zal gebruiken om SSH naar de hosts te sturen.

Zoals je kunt zien, heeft Ansible toegang tot alle hosts. Dus de hosts zijn klaar voor Ansible-automatisering.

Dus zo installeer je Ansible op Debian 10 en configureer je Debian-hosts voor Ansible-automatisering. Bedankt voor het lezen van dit artikel.

AppyMouse trackpad en muisaanwijzer op het scherm voor Windows-tablets
Tabletgebruikers missen vaak de muisaanwijzer, vooral wanneer ze gewend zijn om de laptop te gebruiken. Het touchscreen Smartphones en tablets hebben ...
Middelste muisknop werkt niet in Windows 10
De middelste muis knop helpt u door lange webpagina's en schermen met veel gegevens te bladeren. Als dat stopt, zul je uiteindelijk het toetsenbord ge...
Hoe de linker- en rechtermuisknop op Windows 10 pc te veranderen
Het is nogal een norm dat alle computermuisapparaten ergonomisch zijn ontworpen voor rechtshandige gebruikers. Maar er zijn muisapparaten beschikbaar ...