Linux VPSలో SSHని ఎలా సురక్షితం చేయాలి
పబ్లిక్ VPS ఆన్లైన్కు వచ్చిన కొన్ని నిమిషాల్లోనే ఆటోమేటెడ్ లాగిన్ ప్రయత్నాలు అందుతాయి. ఈ దశలు SSHపై దాడి చేయడం చాలా కష్టతరం చేస్తాయి. ఇవి Ubuntu లేదా Debian కోసం రాయబడ్డాయి; మీరు ఇంకా సర్వర్ సృష్టించకపోతే, Linux VPSని అద్దెకు తీసుకుని శుభ్రమైన ఇమేజ్ నుండి ప్రారంభించవచ్చు. కొత్త SSH సెట్టింగ్లను రెండవ విండో నుండి పరీక్షించే వరకు మీ ప్రస్తుత SSH సెషన్ను తెరిచే ఉంచండి.
1. sudo అధికారంతో సాధారణ యూజర్ను సృష్టించండి
adduser deploy
usermod -aG sudo deploy2. పాస్వర్డ్లకు బదులు SSH కీలు వాడండి
మీ స్వంత కంప్యూటర్లో:
ssh-keygen -t ed25519 -C "you@example.com"
ssh-copy-id deploy@YOUR_SERVER_IP
ssh deploy@YOUR_SERVER_IPపాస్వర్డ్లను ఆపివేసే ముందు, కీ పనిచేస్తుందో లేదో నిర్ధారించుకోవడానికి ఒకసారి కీతో లాగిన్ అవ్వండి.
3. పాస్వర్డ్ మరియు root లాగిన్ ఆపివేయండి
/etc/ssh/sshd_config.d/99-hardening.conf ఫైల్ను సృష్టించండి:
PasswordAuthentication no
PermitRootLogin no
PubkeyAuthentication yes
MaxAuthTries 3సింటాక్స్ తనిఖీ చేసి సర్వీస్ను రీలోడ్ చేయండి. Ubuntu మరియు Debianలో సర్వీస్ పేరు ssh, RHEL ఆధారిత సిస్టమ్లలో sshd:
sudo sshd -t && sudo systemctl reload sshరెండవ టెర్మినల్ తెరిచి మళ్లీ లాగిన్ అవ్వండి. ఆ తర్వాతే పాత సెషన్ను మూసివేయండి.
4. ఫైర్వాల్ ఎనేబుల్ చేయండి
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status verboseమీకు అవసరమైన పోర్ట్లను మాత్రమే తెరవండి, ఉదాహరణకు వెబ్ సర్వర్ కోసం 80 మరియు 443. క్లౌడ్ కన్సోల్లోని ఫైర్వాల్ నియమంతో SSHను మీ స్వంత IP చిరునామాకు పరిమితం చేయవచ్చు.
5. Fail2banతో పదే పదే విఫలమయ్యే ప్రయత్నాలను ఆపండి
sudo apt install -y fail2ban/etc/fail2ban/jail.local ఫైల్ను సృష్టించండి:
[sshd]
enabled = true
maxretry = 5
findtime = 10m
bantime = 1hsudo systemctl enable --now fail2ban
sudo fail2ban-client status sshd6. భద్రతా అప్డేట్లను ఆటోమేటిక్గా ఇన్స్టాల్ చేయండి
sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades7. ఐచ్ఛిక అదనపు చర్యలు
- SSH పోర్ట్ మార్చడం లాగ్ శబ్దాన్ని తగ్గిస్తుంది, కానీ అది స్వయంగా భద్రతా చర్య కాదు.
- ప్రైవేట్ కీని పాస్ఫ్రేజ్తో రక్షించండి మరియు దాని బ్యాకప్ను సురక్షిత స్థలంలో ఉంచండి.
lastమరియుsudo journalctl -u ssh --since todayద్వారా లాగిన్లను సమీక్షించండి.- సర్వర్ కాన్ఫిగర్ అయిన తర్వాత ఒక స్నాప్షాట్ తీసుకోండి, తద్వారా శుభ్రమైన బేస్లైన్కు తిరిగి వెళ్లవచ్చు.
మీరు లాక్ అవుట్ అయితే, మీ క్లౌడ్ ప్యానెల్లోని బ్రౌజర్ కన్సోల్ ఉపయోగించి లాగిన్ అయ్యి కాన్ఫిగరేషన్ను సరిచేయండి. తదుపరి రక్షణ పొర కోసం మా DDoS రక్షణ గైడ్ చూడండి.
తరచుగా అడిగే ప్రశ్నలు
root లాగిన్ ఆపివేయడం సురక్షితమేనా?
అవును, ముందుగా sudo యూజర్ను సృష్టించి, దాని కీ పనిచేస్తుందో పరీక్షించినట్లయితే. మీరు ఇంకా sudo ద్వారా అడ్మినిస్ట్రేటివ్ ఆదేశాలను నడపవచ్చు.
కీలు మాత్రమే వాడితే నాకు Fail2ban అవసరమా?
ఇది ఐచ్ఛికం. పాస్వర్డ్ లాగిన్ ఆపివేసినప్పుడు, బ్రూట్ ఫోర్స్ విజయవంతం కాలేదు, కానీ Fail2ban లాగ్ శబ్దం మరియు లోడ్ను తగ్గిస్తుంది.
నా SSH కీని పోగొట్టుకుంటే ఏమిటి?
మీ క్లౌడ్ ప్యానెల్లోని కన్సోల్ ఉపయోగించి లాగిన్ అవ్వండి, ~/.ssh/authorized_keysకి కొత్త పబ్లిక్ కీని జోడించి పాత కీని తీసివేయండి.