Anonīms

Kā izmantot SSH pieteikšanos, izmantojot paroli, izmantojot anshable, izmantojot sshpass

Kā izmantot SSH pieteikšanos, izmantojot paroli, izmantojot anshable, izmantojot sshpass
Šajā rakstā es parādīšu, kā palaist Ansible playbooks, izmantojot SSH paroli balstītu pieteikšanos ar sshpass.

Priekšnoteikumi

Ja vēlaties izmēģināt šajā rakstā aplūkotos piemērus,

1) Jūsu datorā jābūt instalētai programmai Ansible.
2) Jums jābūt vismaz Ubuntu / Debian resursdatoram, kuram varat izveidot savienojumu no Ansible.

Vietnē LinuxHint ir daudz rakstu, kas veltīti instalēšanai Ansible. Jūs varat tos pārbaudīt, ja nepieciešams, lai instalētu nepieciešamās programmas savā sistēmā.

Jums arī vajadzēs sshpass instalēta datorā, kur jābūt instalētai Ansible. Es jums parādīšu, kā instalēt sshpass šajā rakstā par Ubuntu / Debian un CentOS / RHEL. Neuztraucieties, ja šīs programmas vēl nav instalētas jūsu sistēmā.

Sshpass instalēšana Ubuntu / Debian

Programma sshpass ir pieejams Ubuntu / Debian oficiālajā pakotņu krātuvē. Jūs varat viegli instalēt šo programmu savā datorā.

Vispirms atjauniniet APT pakotnes krātuves kešatmiņu, izmantojot šādu komandu:

$ sudo apt atjauninājums

Tagad instalējiet sshpass izmantojot šādu komandu:

$ sudo apt instalējiet sshpass -y

Tagad vajadzētu instalēt sshpass.

Sshpass instalēšana CentOS 8 / RHEL 8

sshpass ir pieejams CentOS 8 / RHEL 8 EPEL krātuvē. Lai instalētu sshpass, jābūt iespējotai EPEL repozitorijam.

Vispirms atjauniniet DNF pakotnes krātuves kešatmiņu, izmantojot šādu komandu:

$ sudo dnf makecache

Pēc tam instalējiet EPEL repozitorija pakotni, izmantojot šādu komandu:

$ sudo dnf instalējiet epel-release -y

Tagad ir jāinstalē EPEL repozitorija pakotne un jāiespējo EPEL repozitorijs.

Atkal atjauniniet DNF pakotnes krātuves kešatmiņu šādi:

$ sudo dnf makecache

Uzstādīt sshpass izmantojot šādu komandu:

$ sudo dnf instalējiet sshpass -y

sshpass jāuzstāda.

Ansible Project Directory iestatīšana

Pirms mēs turpinām turpināt, būtu ieteicams izveidot projekta direktoriju struktūru, lai lietas būtu mazliet sakārtotas.

Lai izveidotu projekta direktoriju sshpass / un visas nepieciešamās apakšdirektorijas (pašreizējā darba direktorijā), izpildiet šādu komandu:

$ mkdir -pv sshpass / faili, atskaņošanas grāmatas

Pārejiet uz projekta direktoriju šādi:

$ cd sshpass /

Izveidojiet a saimniekiem krājuma fails:

$ nano saimnieki

Inventāra failā pievienojiet sava resursdatora IP vai DNS nosaukumu.

Kad esat pabeidzis šo darbību, saglabājiet failu, nospiežot + X, sekoja un .

Projekta direktorijā izveidojiet Ansible konfigurācijas failu šādi:

$ nano ansible.cfg

Tagad ierakstiet šādās rindā iespējams.cfg failu.

Kad esat pabeidzis šo darbību, saglabājiet failu, nospiežot + X, sekoja un .

Notiek ar paroli balstītas SSH pieteikšanās pārbaude anonīms

Pēc tam mēģiniet pingēt resursdatorus inventarizācijas failā šādi:

$ ansible all -u shovon -m ping

PIEZĪME: Lūk, -u opcija tiek izmantota, lai norādītu iespējamam lietotājam, kā pieteikties. Šajā gadījumā tas būs lietotājs šovons. Turpmāk visā demonstrācijas laikā nomainiet šo lietotājvārdu ar savu.

Kā redzat, es nevaru pieteikties resursdatorā un palaist nevienu komandu.

Lai piespiestu Ansible pieprasīt lietotāja paroli, palaidiet iespējams komandu ar -ask-pass šāds arguments:

$ ansible all -u shovon --ask-pass -m ping

Kā redzat, Ansible pieprasa lietotāja SSH paroli. Tagad ierakstiet savu SSH paroli (lietotāja pieteikšanās paroli) un nospiediet .

Saimnieku var pingēt šādi:

SSH pieteikšanās uz paroli, kas paredzēta Playbooks

Palaižot Ansible playbooks, varat izmantot paroli balstītu SSH pieteikšanos. Apskatīsim piemēru.

Vispirms izveidojiet jaunu spēļu grāmatu askpass1.yaml iekš playbooks / direktorijā:

$ nano playbooks / askpass1.yaml

Ierakstiet šādas rindiņas askpass1.yaml atskaņošanas grāmatas fails:

- saimnieki: visi
lietotājs: shovon
uzdevumi:
- nosaukums: Ping visiem saimniekiem
ping:
- nosaukums: izdrukājiet ziņojumu
atkļūdošana:
msg: “Viss iestatīts”

Kad esat pabeidzis šo darbību, saglabājiet failu, nospiežot + X, sekoja un .

Palaidiet askpass1.yaml playbook šādi:

$ ansible-playbook atskaņošanas grāmatas / askpass1.yaml

Kā redzat, es nevaru izveidot savienojumu ar resursdatoru. Jūs varat redzēt, ka tas ir tāpēc, ka es neizmantoju ansible-playbook komandu ar -ask-pass opcija.

Palaidiet askpass1.yaml spēļu grāmata ar -ask-pass šādi:

$ ansible-playbook -ask-pass playbooks / askpass1.yaml

Kā redzat, Ansible lūdz SSH paroli. Ievadiet savu SSH paroli un nospiediet .

Spēļu grāmata askpass1.yaml tagad vajadzētu veiksmīgi darboties.

Anonīma sudo paroles pieteikšanās Playbooks

The -ask-pass opcija prasīs tikai SSH pieteikšanās paroli. Ko darīt, ja vēlaties arī ievadīt sudo paroli? Kā to izdarīt, jūs redzēsiet nākamajās darbībās.

Vispirms izveidojiet jaunu spēļu grāmatu askpass2.yaml iekš playbooks / direktorijā:

$ nano playbooks / askpass2.yaml

Ierakstiet šādas rindiņas askpass2.yaml failu.

- saimnieki: visi
lietotājs: shovon
kļūt: Patiesi
uzdevumi:
- nosaukums: Instalējiet apache2 pakotni
apt:
nosaukums: apache2
stāvoklis: vēlākais
- nosaukums: Pārliecinieties, vai darbojas apache2 pakalpojums
apkalpošana:
nosaukums: apache2
stāvoklis: sākts
iespējots: taisnība
- nosaukums: Kopēt indeksu.HTML failu uz serveri
kopija:
src:… / files / index.html
dest: / var / www / html / index.html
režīms: 0644
īpašnieks: www-data
grupa: www-dati

Lūk, es esmu izmantojis komandu kļūt: Patiesi pateikt Ansible palaist šo atskaņošanas grāmatu ar sudo privilēģijām. Kad esat pabeidzis šo darbību, saglabājiet askpass2.yaml failu, nospiežot + X, sekoja un .

Izveidojiet indekss.html failu faili / direktorijā:

$ nano faili / indekss.html

Ierakstiet šādus HTML kodus indekss.html fails:




Mājas lapa


Sveika pasaule


Tas strādā



Kad esat pabeidzis šo darbību, saglabājiet failu, nospiežot + X sekoja un .

Jūs varat palaist askpass2.yaml spēļu grāmata ar -ask-pass šādi:

$ ansible-playbook - ask-pass playbooks / askpass2.yaml

Pēc tam jums tiks lūgts ievadīt SSH paroli, tāpat kā iepriekš.

Bet playbook joprojām var nedarboties, pat ja norādāt SSH paroli. Iemesls tam ir tāpēc, ka jums jāpasaka Ansible pieprasīt sudo paroli, kā arī SSH paroli.

Jūs varat pateikt Ansible lūgt sudo paroli, izmantojot -jautāt-kļūt-pāriet opcija, palaižot atskaņošanas grāmatu, šādi:

$ ansible-playbook - ask-pass - ask-tapti-pass atskaņošanas grāmatas / askpass2.yaml

Tagad Ansible pieprasīs ievadīt SSH paroli.

Pēc tam Ansible pieprasīs ievadīt sudo paroli. Ja jūsu sudo parole ir tāda pati kā SSH parole (kas, visticamāk), tad atstājiet to tukšu un nospiediet .

Kā redzat, spēļu grāmata veiksmīgi darbojās.

Automātiskas SSH pieteikšanās un uz paroles pieteikšanās sudo konfigurēšana

Iespējams, vēlēsities izmantot paroli balstītu SSH un sudo pieteikšanos, taču nevēlaties katru reizi palaist atskaņošanas grāmatu ierakstīt SSH paroli un sudo paroli. Ja tas tā ir, tad šī sadaļa ir domāta jums.

Lai izmantotu paroli balstītu SSH pieteikšanos un sudo pieteikšanos bez paroļu pieprasīšanas, jums atliek tikai pievienot ansible_ssh_pass un ansible_become_pass resursdatora mainīgos vai grupas mainīgos jūsu krājuma failā.

Vispirms atveriet saimniekiem krājuma fails:

$ nano saimnieki

Ja krājuma failā ir vairāki resursdatori un katram no tiem ir atšķirīgas paroles, pievienojiet ansible_ssh_pass un ansible_become_pass mainīgie kā resursdatora mainīgie (aiz katra resursdatora) šādi.

Noteikti nomainiet noslēpums ar savu SSH un sudo paroli.

Ja visiem vai dažiem saimniekiem ir viena un tā pati parole, varat pievienot ansible_ssh_pass un ansible_become_pass mainīgie kā grupas mainīgie, kā parādīts zemāk esošajā piemērā.

Šeit man ir tikai viens resursdators, tāpēc esmu pievienojis ansible_ssh_pass un ansible_become_pass mainīgie lielumam visi grupa (visi resursdatori krājuma failā). Bet jūs varat pievienot šos mainīgos arī citām konkrētām grupām.

Kad esat pabeidzis pievienot ansible_ssh_pass un ansible_become_pass mainīgie lielumos saimniekiem inventāra failu, saglabājiet saimniekiem inventāra failu, nospiežot + X, sekoja un .

Tagad jūs varat palaist askpass2.yaml playbook šādi:

$ ansible-playbook atskaņošanas grāmatas / askpass2.yaml

Kā redzat, atskaņošanas grāmata darbojās veiksmīgi, lai gan tā neprasīja SSH paroli vai sudo paroli.

Tātad, jūs to izmantojat sshpass paroli balstītai SSH un sudo pieteikšanās iespējai Ansible. Paldies, ka izlasījāt šo rakstu!

Kontrolējiet un pārvaldiet peles kustību starp vairākiem monitoriem sistēmā Windows 10
Dual Display Mouse Manager ļauj kontrolēt un konfigurēt peles kustību starp vairākiem monitoriem, palēninot tās kustību robežas tuvumā. Windows 10/8 ļ...
WinMouse ļauj jums pielāgot un uzlabot peles rādītāja kustību Windows datorā
Ja vēlaties uzlabot peles rādītāja noklusējuma funkcijas, izmantojiet bezmaksas programmatūru WinMouse. Tas pievieno vairāk funkciju, kas palīdzēs jum...
Peles kreisā klikšķa poga nedarbojas operētājsistēmā Windows 10
Ja ar klēpjdatoru vai galddatoru izmantojat īpašu peli, bet nedarbojas peles kreisās klikšķa poga kādu iemeslu dēļ operētājsistēmā Windows 10/8/7 šeit...