Linux సర్వర్కు కనెక్ట్ అవ్వడానికి ప్రాథమిక మార్గం SSH ప్రోటోకాల్ . ఈ రకమైన కనెక్షన్ సురక్షితమైనది, ఎందుకంటే దీని ద్వారా బదిలీ చేయబడిన డేటా అంతా ఎన్క్రిప్ట్ చేయబడి ఉంటుంది. SSH కనెక్షన్ను ఏర్పాటు చేయడానికి , మీరు కనెక్ట్ అవ్వాలనుకుంటున్న రిమోట్ సర్వర్లో మరియు వినియోగదారు వైపున ఉన్న క్లయింట్లో దానిని కాన్ఫిగర్ చేయాలి. SSH కనెక్షన్ కోసం చాలా సాఫ్ట్వేర్లు అందుబాటులో ఉన్నాయి. Linux విషయానికొస్తే, OpenSSH ప్యాకేజీ అత్యంత ప్రజాదరణ పొందింది మరియు Windows కోసం ప్రజలు ఎక్కువగా PuTTYని ఉపయోగిస్తున్నారు.
ఉబుంటు సర్వర్ 18.04 ను ఉదాహరణగా ఉపయోగించి సర్వర్ కాన్ఫిగరేషన్ను నిశితంగా పరిశీలిద్దాం, ఆపై Linux మరియు Windows నుండి సర్వర్కు కనెక్ట్ అవ్వడానికి ప్రయత్నిద్దాం.
మనం చేసే ప్రతీదీ ఒక సాధారణ యూజర్ ఖాతా నుండే ఉంటుంది. ఈ సందర్భంలో, మేము “ మిహైల్ ” అనే యూజర్ను సృష్టించాము మరియు “ రూట్ ” ఖాతా డిఫాల్ట్గా నిలిపివేయబడింది.
సర్వర్ వైపు సెటప్
ఈ ఆదేశాన్ని అమలు చేస్తూ ప్యాకేజీని సెటప్ చేయండి:
sudo apt install openssh-server
ఇన్స్టాలేషన్ పూర్తయిన తర్వాత, సేవ నడుస్తుందని నిర్ధారించుకోండి. ఈ ఆదేశాన్ని ఉపయోగించండి:
systemctl status sshd
స్థితి “ యాక్టివ్ (నడుస్తోంది) ” అంటే సేవ ప్రారంభించబడి, సాధారణంగా పనిచేస్తోందని అర్థం.
ఫైర్వాల్ ద్వారా ఇన్కమింగ్ కనెక్షన్లను నిరోధించకుండా ఉండటానికి, మీరు దానిని నిలిపివేయాలని నిర్ధారించుకోండి, ఎందుకంటే ఈ వ్యాసంలో మనం నెట్వర్క్ ఫైర్వాల్ను కాన్ఫిగర్ చేయబోవడం లేదు.
ఈ ఆదేశాన్ని ఉపయోగించండి:
sudo ufw disable
ఈ దశలో మీరు ఇప్పటికే సర్వర్కు కనెక్ట్ అవ్వవచ్చు. డిఫాల్ట్ సెట్టింగ్లతో సర్వర్ పాస్వర్డ్ ఆధారిత ప్రామాణీకరణతో ప్రామాణిక పోర్ట్ 22 కి కనెక్షన్ను అనుమతిస్తుంది.
Linux నుండి SSH కనెక్షన్
నియమం ప్రకారం, OpenSSH క్లయింట్ డిఫాల్ట్గా Linuxలో ఇన్స్టాల్ చేయబడి ఉంటుంది మరియు దీనికి అదనపు మాన్యువల్ కాన్ఫిగరేషన్ అవసరం లేదు. ssh కమాండ్ సహాయంతో టెర్మినల్ నుండి కనెక్షన్ను ఏర్పాటు చేయవచ్చు. ఈ సందర్భంలో పారామితులు రిమోట్ సర్వర్ యొక్క వినియోగదారు పేరు మరియు IP చిరునామాగా ఉంటాయి. మేము ఉదాహరణగా ఉపయోగిస్తున్న మా టెస్ట్ సర్వర్లో “mihail” అనే ఒకే ఒక ఖాతా ఉంది, కాబట్టి మేము దీన్ని ఉపయోగిస్తాము.
ssh [email protected]
మొదటి కనెక్షన్ వద్ద మీరు సర్వర్ యొక్క పబ్లిక్ కీని డేటాబేస్కు జోడించడాన్ని నిర్ధారించవలసి ఉంటుంది, కాబట్టి “ అవును ” అని ప్రతిస్పందించండి. ఆ తర్వాత మీరు పాస్వర్డ్ను నమోదు చేయవచ్చు. కనెక్షన్ విజయవంతంగా జరిగితే, మీరు సర్వర్ కమాండ్ లైన్ యొక్క స్వాగత సందేశాన్ని చూస్తారు. ఇప్పుడు అన్ని ఆదేశాలు నేరుగా రిమోట్ సర్వర్లో అమలు చేయబడతాయి.
విండోస్ నుండి SSH
Puttyని తెరిచి, కనెక్షన్ పారామీటర్లను సెట్ చేయండి. “ కనెక్షన్ రకం ” స్విచ్ SSH కి సెట్ చేయబడిందని నిర్ధారించుకోండి . “ హోస్ట్ పేరు ” ఫీల్డ్లో IP చిరునామాను , “ పోర్ట్ ” లో డిఫాల్ట్ విలువ 22ను నమోదు చేసి , “ ఓపెన్ ” పై క్లిక్ చేయండి.
మొదటిసారి కనెక్ట్ అయినప్పుడు, మీరు ఈ సర్వర్ను విశ్వసిస్తున్నారని నిర్ధారించమని Putty మిమ్మల్ని అడుగుతుంది, కాబట్టి “ అవును ” అని క్లిక్ చేయండి.
మీరు లాగిన్ మరియు పాస్వర్డ్ను నమోదు చేసిన తర్వాత, మీరు రిమోట్ సర్వర్ యొక్క కమాండ్ లైన్ను చూస్తారు.
కీ ద్వారా ప్రామాణీకరణ. భద్రతా స్థాయిని పెంచడం
క్లయింట్ SSH ద్వారా సర్వర్కు సురక్షిత కనెక్షన్ను ఏర్పాటు చేయడానికి ప్రయత్నిస్తున్నప్పుడు, కనెక్షన్ను అనుమతించే ముందు సర్వర్ క్లయింట్ను ప్రామాణీకరించాలి (ధృవీకరించాలి). ముందు చెప్పినట్లుగా, పాస్వర్డ్ ఆధారిత ప్రామాణీకరణ సాధారణంగా డిఫాల్ట్గా ఉపయోగించబడుతుంది. ఇది బలమైన భద్రతను అందించదు, ఎందుకంటే దానిని బలవంతంగా చేయడానికి ఎల్లప్పుడూ ఒక మార్గం ఉంటుంది. అంతేకాకుండా, స్క్రిప్ట్లను ఉపయోగించి SSH కనెక్షన్లకు పాస్వర్డ్ ప్రామాణీకరణ వర్తించదు.
ఈ రకమైన పనులకు కీ ద్వారా ప్రత్యేక ప్రామాణీకరణ పద్ధతి ఉంది. విషయం ఏమిటంటే క్లయింట్ ప్రైవేట్ మరియు పబ్లిక్ కీలను ఉత్పత్తి చేస్తుంది మరియు తరువాత పబ్లిక్ కీ సర్వర్కు పంపబడుతుంది. ఆ తర్వాత సర్వర్కు కనెక్ట్ అవ్వడానికి మీకు పాస్వర్డ్ అవసరం లేదు, ఎందుకంటే ప్రామాణీకరణ పబ్లిక్ మరియు ప్రైవేట్ క్లయింట్ కీల ఆధారంగా నిర్వహించబడుతుంది. మంచి స్థాయి భద్రతను అందించడానికి, ప్రైవేట్ కీకి ప్రాప్యతను పరిమితం చేయాలి. ప్రైవేట్ కీ క్లయింట్ వైపు నిల్వ చేయబడుతుంది మరియు నెట్వర్క్ ద్వారా బదిలీ చేయబడదు కాబట్టి, ఈ పద్ధతి మరింత సురక్షితమైనదని నమ్ముతారు.
Linuxలో కీ ద్వారా ప్రామాణీకరణ
ssh-keygen యుటిలిటీ సాఫ్ట్వేర్ సహాయంతో క్లయింట్లో పబ్లిక్ మరియు ప్రైవేట్ కీలను జనరేట్ చేద్దాం. అదనపు భద్రత కోసం ప్రైవేట్ కీకి పాత్ను మార్చమని మరియు పాస్ఫ్రేజ్ని నమోదు చేయమని సాధనం సూచిస్తుంది. అన్ని అభ్యర్థనల వద్ద ఎంటర్ నొక్కడం ద్వారా డిఫాల్ట్గా అన్ని పారామితులను వదిలివేయండి.
ఫలితంగా, హోమ్ డైరెక్టరీలోని .ssh ఫోల్డర్లో , ప్రైవేట్ మరియు పబ్లిక్ కీలను వరుసగా కలిగి ఉన్న id_rsa మరియు id_rsa.pub అనే రెండు ఫైళ్లు రూపొందించబడతాయి .
ఆ తర్వాత, మీరు పబ్లిక్ కీని సర్వర్కు పంపవలసి ఉంటుంది. అలా చేయడానికి, “ id_rsa.pub ” ఫైల్లోని కంటెంట్ను సర్వర్లోని “ ~/.ssh/authorized_keys ” ఫైల్లోకి కాపీ చేయండి. “ ssh-copy-id ” టూల్ సహాయంతో మనం సులభమైన మార్గాన్ని అనుసరిద్దాం . సాధారణ కనెక్షన్లో లాగానే, సర్వర్ యొక్క లాగిన్ మరియు IP చిరునామాను నమోదు చేయండి. మీరు పాస్వర్డ్ను నమోదు చేసిన తర్వాత, క్లయింట్ యొక్క పబ్లిక్ కీ స్వయంచాలకంగా సర్వర్కు కాపీ చేయబడుతుంది. ఈ కమాండ్ను అమలు చేయండి:
ssh-copy-id [email protected]
మీరు అదంతా చేసిన తర్వాత, సర్వర్ ఇకపై పాస్వర్డ్ నమోదు చేయవలసిన అవసరం లేదు.
Windowsలో కీ ద్వారా ప్రామాణీకరణ
PUTTYGEN ను తెరిచి , “ జనరేట్ ” పై క్లిక్ చేయండి. కీలను జనరేట్ చేయడానికి, మీరు మీ మౌస్ను స్క్రీన్పై కదిలిస్తే చాలు, ఈ టూల్ యాదృచ్ఛికంగా కీలను జనరేట్ చేస్తుంది.
కీలు జనరేట్ అయిన తర్వాత, “ సేవ్ ప్రైవేట్ కీ ” పై క్లిక్ చేసి, దానిని మీ డిస్క్లోని ప్రైవేట్ కీ ఫైల్లో సేవ్ చేయండి. మీరు మీకు నచ్చిన పాత్ను సెట్ చేసుకోవచ్చు, కానీ కొద్దిసేపటి తర్వాత మీరు దానిని Puttyలో పేర్కొనవలసి ఉంటుంది. ఆ తర్వాత విండో పైభాగం నుండి పబ్లిక్ కీని కాపీ చేసుకోండి.
పబ్లిక్ కీని టెర్మినల్లోకి కాపీ చేసి పంపుదాం. ఎప్పటిలాగే Puttyని తెరిచి సర్వర్కు కనెక్ట్ అవ్వండి. ఇప్పుడు “ .ssh/authorized_keys ” అనే ఫైల్ను సృష్టించి, అది కేవలం దానిని సృష్టించిన వారికి మాత్రమే అందుబాటులో ఉండేలా ఇతర వినియోగదారులను ఆ ఫైల్ను యాక్సెస్ చేయకుండా పరిమితం చేద్దాం.
mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
ఫైల్ను సృష్టించిన తర్వాత, క్లయింట్ యొక్క పబ్లిక్ కీని అందులో ఉంచండి. మునుపటి దశలో మనం పబ్లిక్ కీని క్లిప్బోర్డ్కు కాపీ చేసాము. క్లిప్బోర్డ్లో ఉన్న వాటిని ఫైల్కు రికార్డ్ చేయడానికి cat కమాండ్ మరియు అవుట్పుట్ రీడైరెక్షన్ని ఉపయోగించండి.
cat > .ssh/authorized_keys
మీరు కమాండ్ను ఎంటర్ చేసిన తర్వాత, టెర్మినల్ విండోలో కుడి మౌస్ బటన్ను క్లిక్ చేసి, క్లిప్బోర్డ్లో ఉన్నదాన్ని పేస్ట్ చేయండి. ఇన్పుట్ను నిర్ధారించడానికి, “ Ctrl+D ” షార్ట్కట్ను నొక్కి, సర్వర్ నుండి డిస్కనెక్ట్ అవ్వండి.
ఇప్పుడు పుట్టీలోని ప్రైవేట్ కీకి మార్గాన్ని పేర్కొని, మళ్ళీ సర్వర్కు కనెక్ట్ చేద్దాం.
ఇప్పటి నుండి, సర్వర్కు కనెక్ట్ అవ్వడానికి మీరు వినియోగదారు పేరును మాత్రమే నమోదు చేయాలి. సరైన ప్రైవేట్ కీ లేని మరొక పరికరం నుండి సర్వర్కు కనెక్ట్ అవ్వడానికి మీరు ప్రయత్నిస్తుంటే, సర్వర్ పాస్వర్డ్ను అభ్యర్థిస్తుంది. కీ-ఆధారిత ప్రామాణీకరణను సెటప్ చేసిన తర్వాత, మీరు పాస్వర్డ్ ద్వారా యాక్సెస్ను నిరాకరించవచ్చు.