అన్సిబుల్ కావలసిన సిస్టమ్ స్థితిని వివరించడానికి డిక్లరేటివ్ భాషను ఉపయోగిస్తుంది మరియు ఆ స్థితిని సాధించడానికి అవసరమైన పనులను స్వయంచాలకంగా నిర్వహిస్తుంది.
లక్ష్య మెషీన్కు కనెక్ట్ చేయడానికి Ansible SSHని డిఫాల్ట్ కనెక్షన్ పద్ధతిగా ఉపయోగిస్తుంది. SSH అన్సిబుల్ కంట్రోల్ నోడ్ మరియు టార్గెట్ హోస్ట్ల మధ్య సురక్షితమైన మరియు ఎన్క్రిప్టెడ్ కమ్యూనికేషన్ ఛానెల్ని అందిస్తుంది.
సాధారణంగా, లక్ష్య హోస్ట్ కోసం SSH కీ-ఆధారిత ప్రమాణీకరణను కాన్ఫిగర్ చేసే అత్యంత సాధారణ పద్ధతి ssh-copy-id ఆదేశం. కమాండ్ కంట్రోల్ నోడ్ యొక్క పబ్లిక్ కీని టార్గెట్ హోస్ట్లోని “authorized_keys” ఫైల్కి కాపీ చేస్తుంది.
అయితే, మొదటిసారిగా సిస్టమ్ను కాన్ఫిగర్ చేస్తున్నప్పుడు, ప్లేబుక్లో దీన్ని చేయడానికి మీకు Ansible అవసరం కావచ్చు. ఇక్కడే అన్సిబుల్ సంఘం రక్షించడానికి వస్తుంది.
Ansible కమ్యూనిటీలో, మేము పాస్వర్డ్ లేని SSH ప్రమాణీకరణ కోసం సిస్టమ్లను ప్రామాణీకరించడానికి అనుమతించే ssh_id_copy పాత్రకు ప్రాప్యతను కలిగి ఉన్నాము.
ఈ పాత్ర రిమోట్ మెషీన్లో SSH కీల సెటప్ను నిర్వహిస్తుంది, ఇది రిమోట్ మెషీన్తో Ansible ఇన్వెంటరీ ఫైల్ను సృష్టించడానికి అనుమతిస్తుంది. మేము రిమోట్ మెషీన్కు వ్యతిరేకంగా ఏదైనా Ansible ప్లేబుక్కి త్వరగా కాల్ చేయవచ్చు.
Ansible Ssh_Copy_Id పాత్ర
రోల్ రిమోట్ హోస్ట్లో SSH కీలను కాన్ఫిగర్ చేయడానికి Ansibleని అనుమతించే వేరియబుల్లను కలిగి ఉంది. ఇటువంటి వేరియబుల్స్ ఉన్నాయి:
హోస్ట్ పేరు – ఇది (FQDN లేదా IP)కి కనెక్ట్ చేయడానికి రిమోట్ సిస్టమ్ను నిర్వచిస్తుంది.
వినియోగదారు పేరు – ఇది రిమోట్ సిస్టమ్కు కనెక్ట్ చేయడానికి వినియోగదారు పేరును నిర్దేశిస్తుంది.
పాస్వర్డ్ – ఇది రిమోట్ సిస్టమ్కు కనెక్ట్ చేయడానికి వినియోగదారు పేరు యొక్క పాస్వర్డ్ను నిర్వచిస్తుంది.
ssh_public_key – ఇది రిమోట్ హోస్ట్లో కాన్ఫిగర్ చేయడానికి పబ్లిక్ కీ ఫైల్కు సంపూర్ణ మార్గాన్ని నిర్వచిస్తుంది.
పోర్ట్ - ఇది SSH పోర్ట్ను నిర్వచిస్తుంది.
Ssh_Copy_Id పాత్రను ఇన్స్టాల్ చేస్తోంది
జాగ్రత్త: కమ్యూనిటీ నడిచే పాత్రలు మరియు మాడ్యూల్స్ యొక్క చెల్లుబాటు మరియు భద్రతను మేము అందించలేము. దయచేసి ఒక పాత్ర/మాడ్యూల్ని ఉత్పత్తిలో మరియు నిజమైన మెషీన్లలో ఉపయోగించే ముందు దాని పనితీరును తనిఖీ చేయండి మరియు ధృవీకరించండి. ఈ పోస్ట్లో వివరించిన దశలతో పని చేస్తున్నప్పుడు భద్రతకు హామీ లేదు.
పేర్కొన్నట్లుగా, ssh_copy_id అనేది ర్యాన్ అందించిన సంఘం అందించిన పాత్ర. రిపోజిటరీకి లింక్ క్రింది విధంగా అందించబడింది:
https://github.com/ryankwilliams/ansible-ssh-copy-id
మనం దీన్ని ఉపయోగించే ముందు, కింది ఆదేశాన్ని అమలు చేయడం ద్వారా ఇది ఇన్స్టాల్ చేయబడిందని నిర్ధారించుకోవాలి:
$ ansible-galaxy ఇన్స్టాల్ rywillia.ssh-copy-id
ఉదాహరణ ఉపయోగం
ఇన్స్టాల్ చేసిన తర్వాత, కింది వాటిలో ప్రదర్శించిన విధంగా మనం ప్లేబుక్లోని పాత్రను ఉపయోగించవచ్చు:
---- పేరు : రిమోట్ మెషీన్లో పాస్వర్డ్ లేని ssh ప్రమాణీకరణను కాన్ఫిగర్ చేయండి
అతిధేయలు : స్థానిక హోస్ట్
అవుతాయి : అవును
పాత్రలు :
- పాత్ర : ryankwilliams.ssh_copy_id
ఎవరిది :
హోస్ట్ పేరు : 172.168.112.23
వినియోగదారు పేరు : ఉబుంటు
పాస్వర్డ్ : పాస్వర్డ్
ssh_public_key : /home/debian12/.ssh/id_rsa.pub
ssh_పోర్ట్ : 22
రిమోట్ మెషీన్లో నిర్వచించబడిన వినియోగదారు అయిన పాస్వర్డ్ లేని SSH ప్రమాణీకరణను సెటప్ చేయడానికి పాత్రను ఎలా ఉపయోగించాలో మునుపటి ఉదాహరణ ప్లేబుక్ ప్రదర్శిస్తుంది.
ముగింపు
ఈ పరిచయ ట్యుటోరియల్లో, మీరు Ansible ప్లేబుక్ని ఉపయోగించి రిమోట్ హోస్ట్లలో పాస్వర్డ్ లేని SSH ప్రమాణీకరణను కాన్ఫిగర్ చేయడానికి సంఘం అందించిన పాత్రలు మరియు మాడ్యూళ్ల ప్రయోజనాన్ని ఎలా పొందవచ్చో తెలుసుకున్నారు.