- Hoe ssh root-toegang op Debian 10 Buster uit te schakelen
- Alternatieven om uw ssh-toegang te beveiligen
- De ssh-poort filteren met iptables
- TCP-wrappers gebruiken om ssh . te filteren
- De ssh-service uitschakelen
- Gerelateerde artikelen
Hoe ssh root-toegang op Debian 10 Buster uit te schakelen
Om ssh root-toegang uit te schakelen, moet u het ssh-configuratiebestand bewerken, op Debian is dit: /etc/ssh/sshd_config
, om het te bewerken met behulp van nano-teksteditor:
Op nano kun je op . drukken CTRL+W (waar) en typ PermitRoot om de volgende regel te vinden:
#PermitRootLogin verbieden-wachtwoord
Om de root-toegang via ssh uit te schakelen, hoeft u alleen maar die regel te verwijderen en te vervangen verbieden-wachtwoord voor Nee zoals in de volgende afbeelding.
Nadat u de root-toegang hebt uitgeschakeld, drukt u op CTRL+X en Y om op te slaan en af te sluiten.
De verbieden-wachtwoord optie voorkomt inloggen met wachtwoord waardoor alleen inloggen via fall-back acties zoals openbare sleutels, brute force-aanvallen worden voorkomen.
Alternatieven om uw ssh-toegang te beveiligen
Beperk de toegang tot verificatie met openbare sleutel:
Om inloggen met een wachtwoord uit te schakelen en alleen inloggen met een openbare sleutel toe te staan, opent u de /etc/ssh/ssh_config
configuratiebestand opnieuw door het volgende uit te voeren:
Om inloggen met een wachtwoord uit te schakelen en alleen inloggen met een openbare sleutel toe te staan, open /etc/ssh/ssh_config configuratiebestand opnieuw door het volgende uit te voeren:
nano /etc/ssh/sshd_configZoek de regel met PubkeyAuthenticatie en zorg ervoor dat het zegt Ja zoals in het onderstaande voorbeeld:
Zorg ervoor dat wachtwoordverificatie is uitgeschakeld door de regel te zoeken met: WachtwoordAuthenticatie, indien becommentarieerd, verwijder het commentaar en zorg ervoor dat het is ingesteld als Nee zoals in de volgende afbeelding:
Druk vervolgens op CTRL+X en Y om nano-teksteditor op te slaan en af te sluiten.
Nu moet je als gebruiker door wie je ssh-toegang wilt toestaan, privé- en openbare sleutelparen genereren. Rennen:
ssh-keygenBeantwoord de vraagreeks waarbij het eerste antwoord de standaard blijft door op ENTER te drukken, stel uw wachtwoordzin in, herhaal deze en de sleutels worden opgeslagen op ~/.ssh/id_rsa
Publiek/privé rsa-sleutelpaar genereren.
Voer het bestand in waarin u de sleutel wilt opslaan (/root/.ssh/id_rsa):
Voer wachtwoordzin in (leeg voor geen wachtwoordzin):
Uw identificatie is opgeslagen in /root/.ssh/id_rsa.
Je openbare sleutel is opgeslagen in /root/.ssh/id_rsa.kroeg.
De belangrijkste vingerafdruk is:
SHA256:34+uXVI4d3ik6ryOAtDKT6RaIFclVLyZUdRlJwfbVGo root@linuxhint
De willekeurige afbeelding van de sleutel is:
+---[RSA 2048]----+
Om de zojuist gemaakte sleutelparen over te dragen, kunt u de ssh-kopie-id commando met de volgende syntaxis:
ssh-kopie-idWijzig de standaard ssh-poort:
Open de /etc/ssh/ssh_config configuratiebestand opnieuw door het volgende uit te voeren:
nano /etc/ssh/sshd_config
Stel dat u poort 7645 wilt gebruiken in plaats van de standaardpoort 22. Voeg een regel toe zoals in het onderstaande voorbeeld:
Druk vervolgens op CTRL+X en Y om op te slaan en af te sluiten.
Start de ssh-service opnieuw door het volgende uit te voeren:
service sshd opnieuw opstarten
Vervolgens moet u iptables configureren om communicatie via poort 7645 toe te staan:
iptables -t nat -A PREROUTING -p tcp --dport 22 -j REDIRECT --naar-poort 7645
U kunt in plaats daarvan ook UFW (Uncomplicated Firewall) gebruiken:
ufw toestaan 7645/tcp
De ssh-poort filteren
U kunt ook regels definiëren om ssh-verbindingen te accepteren of te weigeren volgens specifieke parameters. De volgende syntaxis laat zien hoe u ssh-verbindingen van een specifiek IP-adres kunt accepteren met behulp van iptables:
iptables -A INPUT -p tcp --dport 22 --sourceiptables -A INPUT -p tcp --dport 22 -j DROP
De eerste regel van het bovenstaande voorbeeld geeft iptables de instructie om inkomende (INPUT) TCP-verzoeken naar poort 22 vanaf IP 192 te accepteren.168.1.2. De tweede regel instrueert IP-tabellen om alle verbindingen naar poort 22 . te verbreken. Je kunt de bron ook filteren op mac-adres, zoals in het onderstaande voorbeeld:
iptables -I INPUT -p tcp --dport 22 -m mac ! --mac-bron 02:42:df:a0:d3:8f-j WEIGEREN
Het bovenstaande voorbeeld verwerpt alle verbindingen behalve het apparaat met mac-adres 02:42:df:a0:d3:8f.
TCP-wrappers gebruiken om ssh . te filteren
Een andere manier om IP-adressen op de witte lijst te zetten om verbinding te maken via ssh terwijl de rest wordt afgewezen, is door de directory-hosts te bewerken.ontkennen en hosten.toestaan gelegen in /etc.
Alle hosts-run weigeren:
nano /etc/hosts.ontkennen
Voeg een laatste regel toe:
sshd: ALLES
Druk op CTRL+X en Y om op te slaan en af te sluiten. Om nu specifieke hosts toe te staan via ssh, bewerk het bestand /etc/hosts.toestaan, om het te bewerken:
nano /etc/hosts.toestaan
Voeg een regel toe met daarin:
sshd:
Druk op CTRL+X om nano op te slaan en af te sluiten.
De ssh-service uitschakelen
Veel binnenlandse gebruikers beschouwen ssh als nutteloos, als je het helemaal niet gebruikt, kun je het verwijderen of je kunt de poort blokkeren of filteren.
Op Debian Linux of gebaseerde systemen zoals Ubuntu kunt u services verwijderen met behulp van de apt-pakketbeheerder.
Om de ssh-servicerun te verwijderen:
Druk op Y indien gevraagd om de verwijdering te voltooien.
En dat gaat allemaal over binnenlandse maatregelen om de ssh veilig te houden.
Ik hoop dat je deze tutorial nuttig vond, blijf Linux volgen Hint voor meer tips en tutorials over Linux en netwerken.
Gerelateerde artikelen:
- SSH-server inschakelen op Ubuntu 18.04 LTS
- Schakel SSH in op Debian 10
- SSH-poort doorsturen op Linux
- Algemene SSH-configuratie-opties Ubuntu
- Hoe en waarom de standaard SSH-poort wijzigen?
- Configureer SSH X11 Forwarding op Debian 10
- Arch Linux SSH-server instellen, aanpassen en optimaliseren
- Iptables voor beginners
- Werken met Debian Firewalls (UFW)