SSH ఫైల్లు దీనిలో నిల్వ చేయబడతాయి .స్ష్ ఫోల్డర్ ఇది హోమ్ డైరెక్టరీలో ఉండే దాచిన ఫోల్డర్. ది .స్ష్ డైరెక్టరీ డిఫాల్ట్గా సృష్టించబడలేదు; మీరు రిమోట్ హోస్ట్తో కనెక్షన్ను ప్రారంభించినప్పుడు లేదా దీనిని ఉపయోగించినప్పుడు ఇది సృష్టించబడుతుంది ssh-keygen మీకు కావలసినప్పుడు ప్రైవేట్ మరియు పబ్లిక్ ప్రామాణీకరణ కీలను రూపొందించడానికి ఆదేశం పాస్వర్డ్ లేని ssh ప్రామాణీకరణను సెటప్ చేయండి.
ది .స్ష్ ఫోల్డర్ అవసరమైన SSH ఫైల్స్ ఉన్నాయి:
- పబ్లిక్ మరియు ప్రైవేట్ కీలు ( id_rsa మరియు id_rsa.pub ).
- ది తెలిసిన_హోస్ట్లు ఫైల్ - మీరు కనెక్ట్ చేసిన అన్ని రిమోట్ సిస్టమ్ల పబ్లిక్ కీలను కలిగి ఉంటుంది.
- ది config క్లయింట్ కాన్ఫిగరేషన్ ఫైల్
ఒకవేళ config ఫైల్ ఉనికిలో లేదు, చూపిన విధంగా మీరు సులభంగా ఒకదాన్ని సృష్టించవచ్చు.
$ టచ్ ~/.ssh/config
.Ssh/config క్లయింట్ కాన్ఫిగరేషన్ ఫైల్
మీరు ఒక SSH కనెక్షన్ను ప్రారంభించిన ప్రతిసారి, మీరు IP చిరునామా లేదా డొమైన్ పేరు మరియు SSH వింటున్న పోర్ట్ వంటి వివరాలను పేర్కొనాలి. ఉదాహరణకి,
$ ssh [ఇమెయిల్ రక్షించబడింది] -పి 22అలాంటి వివరాలను ఎల్లప్పుడూ గుర్తుంచుకోవలసిన అవసరం ఉంది. మరియు ఇక్కడే ~/.ssh/config ఫైల్ వస్తుంది ~/.ssh/config ఫైల్ అనేది కాన్ఫిగరేషన్ ఫైల్, ఇది రిమోట్ హోస్ట్ యొక్క ప్రతి వినియోగదారు కాన్ఫిగరేషన్ వివరాలను కాన్ఫిగర్ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది. కనెక్షన్ కోసం అవసరమైన ప్రతి హోస్ట్ వివరాలను ఎల్లప్పుడూ రీకాల్ చేయాల్సిన వేదనను ఇది ఆదా చేస్తుంది.
చూపిన విధంగా నమూనా కాన్ఫిగర్ ఫైల్ కనిపిస్తుంది.
హోస్ట్ స్టేజింగ్-సర్వర్హోస్ట్ నేమ్ 192.168.2.103
యూజర్ జేమ్స్
పోర్ట్ 22
రిమోట్ హోస్ట్లోకి ఒక సాధారణ SSH కమాండ్ క్రింది విధంగా కనిపిస్తుంది:
$ ssh స్టేజింగ్-సర్వర్
.Ssh/config ఫైల్ అనుమతులు
డిఫాల్ట్గా, ది ~/.ssh/config క్లయింట్ కాన్ఫిగరేషన్ ఫైల్ కలిగి ఉంది 644 ఫైల్ అనుమతులు. మీరు దీనిని ఉపయోగించి ధృవీకరించవచ్చు ls -la కింది విధంగా ఆదేశం.
$ ls -la ~ / .ssh / config
ఫైల్ యొక్క యజమాని మరియు సమూహం ఇద్దరూ చదవడానికి మరియు వ్రాయడానికి అనుమతులు (rw) కలిగి ఉన్నారని ఇది సూచిస్తుంది, అయితే ఇతర వినియోగదారులు అనుమతులు మాత్రమే చదివారని (r).
-rw-rw-r--గమనిక:
నియమం ప్రకారం, ఇతర వినియోగదారులకు వ్రాత అనుమతులను కేటాయించవద్దు. ఇది మీ ఫైల్కు భద్రతా ప్రమాదాన్ని కలిగిస్తుంది మరియు మీ లేదా మీ సమూహంలో లేని ఇతర వినియోగదారులు ఫైల్లోని కంటెంట్లను సవరించవచ్చు. వ్రాత అనుమతులను కేటాయించడం వలన ' చెడ్డ యజమాని లేదా అనుమతులు దిగువ సూచించిన విధంగా లోపం.
ఇక్కడ, config ఫైల్కు 666 అనుమతులు కేటాయించబడ్డాయి. ఇది ప్రతిఒక్కరూ ఫైల్ను చదవగలరు మరియు వ్రాయగలరని సూచిస్తుంది.
అదేవిధంగా, ఫైల్కు 777 అనుమతులు కేటాయించినప్పుడు అదే కేసు ఇక్కడ వర్తిస్తుంది. ప్రతిఒక్కరూ ఫైల్ను చదవగలరు, వ్రాయగలరు మరియు అమలు చేయగలరని ఇది సూచిస్తుంది. సరళంగా చెప్పాలంటే, ప్రమాదకరమైన ఫైల్పై ఎవరికైనా అన్ని హక్కులు ఉంటాయి.
మీరు డిఫాల్ట్ అనుమతులను వదిలివేయాలని ఉత్తమ అభ్యాసం సిఫార్సు చేస్తుంది 664 లేదా 600, ఇక్కడ యజమాని మాత్రమే చదవడానికి మరియు వ్రాయడానికి అనుమతులు (rw). ఈ విధంగా, ఫైల్ అనధికార వినియోగదారులచే సవరించబడకుండా సురక్షితంగా ఉంటుంది.
అదనంగా, మీరు ఫైల్ను కలిగి ఉన్నారని నిర్ధారించుకోండి. ఫైల్ను మరొక యూజర్గా మార్చినట్లయితే, SSH కాన్ఫిగర్ ఫైల్లో అందించిన హోస్ట్ పేరును పరిష్కరించలేకపోతుంది.
దిగువ ఉదాహరణలో, ది ~/.ssh/config యాజమాన్యం సెట్ చేయబడింది బాబ్: బాబ్.
ఈ సమస్యను పరిష్కరించడానికి, నేను దాన్ని ఉపయోగించి అసలు ఫైల్ యాజమాన్యానికి తిరిగి వచ్చాను చౌన్ కమాండ్
$ sudo చౌన్ జేమ్స్: జేమ్స్ ~/.ssh/configఫైల్ అనుమతులు తిరిగి పొందడంతో, ఇప్పుడు నేను SSH ఆదేశాన్ని ఆరంభించడం ద్వారా కాన్ఫిగర్ ఫైల్లో పేర్కొన్న హోస్ట్ పేరును అనుసరించడం ద్వారా యాక్సెస్ పొందగలను.
$ ssh స్టేజింగ్-సర్వర్
మరియు అనుమతులను సెట్ చేయడం గురించి మీరు తెలుసుకోవలసినది అంతే ~/.ssh/config ఫైల్. మీరు మిగిలిన వినియోగదారులకు చదవడానికి అనుమతులను సెట్ చేయలేదని నిర్ధారించుకోండి మరియు మీరు ఫైల్ను కలిగి ఉన్నారని నిర్ధారించుకోండి.