Hálózati topológia
Itt, ansible-pc egy Debian 10 gép, ahova telepítjük az Ansible-t.
A szerverek 6f7c2 és 6b219 azok a Debian 10 gépek, amelyeket az Ansible automatizáláshoz konfigurálunk. E cikk céljából egyszerűen ezeket a szervereket hívom Ansible hostoknak.
Használhatjuk az Ansible from alkalmazást ansible-pc automatizálni a különböző feladatokat a 6f7c2 és 6b219 Debian szerverek.
Az Ansible telepítése
Ebben a részben megmutatom, hogyan kell telepíteni az Ansible alkalmazást ansible-pc.
Az Ansible telepíthető a Debian 10-re a Debian hivatalos csomagtárából.
Először frissítse az APT csomagtárház gyorsítótárát a következő paranccsal:
$ sudo apt frissítés
Most telepítse az Ansible parancsot a következő paranccsal:
$ sudo apt install ansible
A telepítés megerősítéséhez nyomja meg a gombot Y majd nyomja meg
Ansible-t kell telepíteni.
Most futtassa a következő parancsot annak ellenőrzéséhez, hogy az Ansible megfelelően működik-e.
$ ansible --verzióAmint láthatja, az ansible parancs elérhető és megfelelően működik. 2. lehetséges.7.A 7 az Ansible legújabb verziója, amely a cikk írásakor elérhető a Debian csomagtárban.
SSH-kulcs generálása
A Debian 10 gépen (ansible-pc), ahol telepítette az Ansible alkalmazást, először elő kell állítania egy SSH kulcsot.
SSH-kulcs előállításához futtassa a következő parancsot:
$ ssh-keygen
Most nyomja meg
nyomja meg
nyomja meg
SSH kulcsot kell létrehozni.
A Debian gépeinek beállítása az automatizáláshoz
Ebben a részben bemutatom, hogyan konfigurálhatja a Debian hosztot az Ansible automatizáláshoz. Ha több gazdagépe van, amelyeket automatizálni szeretne az Ansible használatával, akkor ismételje meg ugyanazt a folyamatot az egyes gazdagépeknél.
Az Ansible automatizáláshoz konfigurálni kívánt gazdagépeknek előre telepíteniük kell az SSH kiszolgáló csomagot.
Először frissítse az APT csomagtárház gyorsítótárát a következő paranccsal:
$ sudo apt frissítés
Ezután telepítse az OpenSSH szervert a következő paranccsal:
$ sudo apt install openssh-server -y
Esetemben az OpenSSH szerver csomag már telepítve van. Ha az Ön esetében nincs telepítve, akkor ezt a lépést megelőzően kell telepíteni.
Most ellenőrizze, hogy a sshd szolgáltatás a következő paranccsal fut:
$ sudo systemctl status sshdMint láthatja, a sshd szolgáltatás aktív (futás) és engedélyezve (automatikusan elindul a rendszer indításakor).
Ha a sshd szolgáltatás nem aktív (fut), indítsa el manuálisan a következő paranccsal:
$ sudo systemctl start sshd
Ha a sshd szolgáltatás nem engedélyezve (nincs hozzáadva a rendszer indításához), adja hozzá manuálisan a rendszer indításához a következő paranccsal:
$ sudo systemctl enable sshd
Most hozzon létre egy lehetséges felhasználót, és engedélyezze a jelszó nélküli sudo hozzáférést a lehetséges felhasználó.
Annak létrehozásához lehetséges felhasználó futtassa a következő parancsot:
$ sudo adduser --shell / bin / bash --gecos "" ansible
Írja be a jelszót a lehetséges felhasználót, és nyomja meg a gombot
Írja be újra a jelszót, és nyomja meg a gombot
An lehetséges felhasználót kell létrehozni.
Jelszó nélküli sudo hozzáférés engedélyezése a lehetséges felhasználó, szerkessze a / etc / sudoers fájl a következő paranccsal:
$ sudo visudo
Most adja hozzá a következő sort a / etc / sudoers fájl.
ansible ALL = (ALL) NOPASSWD: MINDENEzután mentse a fájlt a megnyomásával
Most keresse meg az Ansible hoszt IP-címét 6f7c2 a következő paranccsal:
$ hostname -IItt az IP-cím az én esetemben az 192.168.20.167. Neked más lesz. Tehát mindenképpen cserélje le ezt a címet a saját űrlapjával.
Az SSH nyilvános kulcs másolása az Ansible Hostba
A számítógépről, ahová telepítette az Ansible (ansible-pc), másolja az SSH nyilvános kulcsot az Ansible gazdagépre 6f7c2 alábbiak szerint:
$ ssh-copy-id ansible @ 192.168.20.167
Begépel Igen és nyomja meg
Ezután írja be a lehetséges felhasználót, és nyomja meg a gombot
A nyilvános SSH kulcsot át kell másolni az Ansible hostba 6f7c2.
Az SSH-t képesnek kell lennie az Ansible hosztra 6f7c2 mint felhasználó lehetséges jelszó nélkül, amint az alábbi képernyőképen látható:
$ ssh ansible @ 192.168.20.167
Ezenkívül képesnek kell lennie a sudo parancsok futtatására anélkül, hogy bármilyen jelszót kérnének tőlük.
$ sudo ls /
Végül zárja le az SSH munkamenetet az alábbiak szerint:
$ exit
Biztonságos vendéglátók
Mivel a lehetséges a felhasználó bármilyen sudo parancsot futtathat, anélkül, hogy jelszót kérne tőlünk, konfiguráltuk az SSH kulcs alapú bejelentkezést az Ansible hosts számára. De továbbra is SSH-t használhat az Ansible hosztokba lehetséges felhasználó a. jelszavával lehetséges felhasználó. Tehát ez nem túl biztonságos.
A biztonság javítása érdekében futtassa az Ansible hosts következő parancsot a jelszó alapú bejelentkezés letiltásához lehetséges felhasználó:
$ sudo usermod -L ansible
Ha később úgy dönt, hogy engedélyezi a jelszó alapú bejelentkezést a lehetséges felhasználó futtassa a következő parancsot az Ansible hoston:
$ sudo usermod -U ansibleTesztelés lehetséges
Hozzon létre egy új projekt könyvtárat ~ / project / a Debian gépben, ahová az Ansible-t telepítette (ansible-pc) a következő kód használatával:
$ mkdir ~ / project
Navigáljon a ~ / project / könyvtárat a következő kód használatával:
$ cd ~ / project /
Újat csinálni otthont ad fájl a projekt könyvtárban az alábbiak szerint:
$ nano házigazdák
Most sorolja fel az Ansible hosts IP-címeit vagy DNS-neveit (6f7c2 és 6b219 esetemben) a otthont ad fájl:
192.168.20.167192.168.20.168
Ha végzett, mentse a fájlt a gombbal
A teszteléshez próbálja meg pingelni az összes gazdagépet az Ansible használatával a következő kóddal:
$ ansible -i ./ host all -u ansible -m pingJEGYZET: Itt a -u opció a felhasználónév (lehetséges ebben az esetben), amelyet az Ansible SSH-re fog használni a gazdagépeken.
Amint láthatja, az Ansible hozzáférhet az összes gazdagéphez. Tehát a gazdagépek készen állnak az Ansible automatizálásra.
Így telepíti az Ansible-t a Debian 10-re és konfigurálja a Debian-állomásokat az Ansible automatizáláshoz. Köszönjük, hogy elolvasta ezt a cikket.