ਲਿਨਕਸ VPS ‘ਤੇ SSH ਨੂੰ ਸੁਰੱਖਿਅਤ ਕਿਵੇਂ ਕਰੀਏ
ਇੱਕ ਜਨਤਕ VPS ਚਾਲੂ ਹੋਣ ਦੇ ਕੁਝ ਮਿੰਟਾਂ ਅੰਦਰ ਹੀ ਆਟੋਮੈਟਿਕ ਲੌਗਇਨ ਕੋਸ਼ਿਸ਼ਾਂ ਪ੍ਰਾਪਤ ਕਰਨ ਲੱਗ ਪੈਂਦਾ ਹੈ। ਇਹ ਕਦਮ SSH ਉੱਤੇ ਹਮਲੇ ਨੂੰ ਕਾਫ਼ੀ ਔਖਾ ਬਣਾਉਂਦੇ ਹਨ। ਇਹ ਹਦਾਇਤਾਂ Ubuntu ਜਾਂ Debian ਲਈ ਲਿਖੀਆਂ ਗਈਆਂ ਹਨ; ਜੇ ਤੁਸੀਂ ਅਜੇ ਸਰਵਰ ਨਹੀਂ ਬਣਾਇਆ, ਤਾਂ ਤੁਸੀਂ ਲਿਨਕਸ VPS ਕਿਰਾਏ ‘ਤੇ ਲਓ ਅਤੇ ਸਾਫ਼ ਇਮੇਜ ਨਾਲ ਸ਼ੁਰੂ ਕਰ ਸਕਦੇ ਹੋ। ਦੂਜੀ ਵਿੰਡੋ ਤੋਂ ਨਵੀਆਂ ਸੈਟਿੰਗਾਂ ਦੀ ਜਾਂਚ ਕਰਨ ਤੱਕ ਆਪਣਾ ਮੌਜੂਦਾ 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 ਵਿੱਚ ਨਵੀਂ ਪਬਲਿਕ ਕੀਅ ਜੋੜੋ ਅਤੇ ਪੁਰਾਣੀ ਹਟਾ ਦਿਓ।