Top 5 Best Commandos of Pakistan Army - Pakistani Commandos Training
Inhoudsopgave:
- OpenSSH Client installeren
- OpenSSH Client installeren op Linux
- OpenSSH installeren op Ubuntu en Debian
- OpenSSH installeren op CentOS en Fedora
- OpenSSH Client installeren op Windows 10
- OpenSSH Client installeren op macOS
- Hoe het
sshcommando te gebruiken - SSH-configuratiebestand
- Port forwarding
- Doorsturen van lokale poorten
- Remote Port Forwarding
- Dynamische poort doorsturen
- Conclusie
Secure Shell (SSH) is een cryptografisch netwerkprotocol dat wordt gebruikt voor een gecodeerde verbinding tussen een client en een server. De SSH-client maakt een veilige verbinding met de SSH-server op een externe computer. De gecodeerde verbinding kan worden gebruikt om opdrachten uit te voeren op de server, X11-tunneling, port forwarding en meer.
Er zijn een aantal SSH-clients beschikbaar, zowel gratis als commercieel, waarbij OpenSSH de meest gebruikte client is. Het is beschikbaar op alle belangrijke platforms, waaronder Linux, OpenBSD, Windows, macOS en andere.
, leggen we uit hoe u de OpenSSH-opdrachtregelclient (
ssh
) kunt gebruiken om in te loggen op een externe computer en opdrachten uit te voeren of andere bewerkingen uit te voeren.
OpenSSH Client installeren
Het OpenSSH-clientprogramma wordt
ssh
en kan vanaf de terminal worden opgeroepen. Het OpenSSH-clientpakket biedt ook andere SSH-hulpprogramma's zoals
scp
en
sftp
die naast de opdracht
ssh
worden geïnstalleerd.
OpenSSH Client installeren op Linux
OpenSSH-client is standaard vooraf geïnstalleerd op de meeste Linux-distributies. Als de ssh-client niet op uw systeem is geïnstalleerd, kunt u deze installeren met behulp van de pakketbeheerder van uw distributie.
OpenSSH installeren op Ubuntu en Debian
sudo apt update
sudo apt install openssh-client
OpenSSH installeren op CentOS en Fedora
sudo dnf install openssh-clients
OpenSSH Client installeren op Windows 10
De meeste Windows-gebruikers gebruiken Putty om via SSH verbinding te maken met een externe machine. De nieuwste versies van Windows 10 bevatten echter een OpenSSH-client en -server. Beide pakketten kunnen worden geïnstalleerd via de GUI of PowerShell.
Typ de volgende opdracht om de exacte naam van het OpenSSH-pakket te vinden:
Get-WindowsCapability -Online | ? Name -like 'OpenSSH*'
Het commando moet zoiets teruggeven:
Name: OpenSSH.Client~~~~0.0.1.0 State: NotPresent Name: OpenSSH.Server~~~~0.0.1.0 State: NotPresent
Zodra u de pakketnaam kent, installeert u deze door:
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Bij succes ziet de output er ongeveer zo uit:
Path: Online: True RestartNeeded: False
OpenSSH Client installeren op macOS
macOS wordt standaard geleverd met de OpenSSH-client.
Hoe het
ssh
commando te gebruiken
Aan de volgende vereisten moet worden voldaan om via SSH in te kunnen loggen op een externe machine:
- Er moet een SSH-server op de externe computer actief zijn. De SSH-poort moet open zijn in de firewall van de externe machine. U moet de gebruikersnaam en het wachtwoord van de externe account weten. Het account moet de juiste rechten hebben voor inloggen op afstand.
De basissyntaxis van de opdracht
ssh
is als volgt:
ssh:HOST
Om de opdracht
ssh
gebruiken, opent u uw Terminal of PowerShell en typt u
ssh
gevolgd door de externe hostnaam:
ssh ssh.linuxize.com
Wanneer u voor het eerst verbinding maakt met een externe machine via SSH, ziet u een bericht zoals hieronder.
The authenticity of host 'ssh.linuxize.com (192.168.121.111)' can't be established. ECDSA key fingerprint is SHA256:Vybt22mVXuNuB5unE++yowF7lgA/9/2bLSiO3qmYWBY. Are you sure you want to continue connecting (yes/no)?
Elke host heeft een unieke vingerafdruk die is opgeslagen in het bestand
~/.ssh/known_hosts
.
Typ
yes
om de externe vingerafdruk op te slaan en u wordt gevraagd uw wachtwoord in te voeren.
Warning: Permanently added 'ssh.linuxize.com' (ECDSA) to the list of known hosts. [email protected]'s password:
Nadat u het wachtwoord hebt ingevoerd, wordt u aangemeld op de externe machine.
Wanneer de gebruikersnaam niet wordt opgegeven, gebruikt de opdracht
ssh
de huidige systeemaanmeldingsnaam.
Om in te loggen als een andere gebruiker, geeft u de gebruikersnaam en de host op in de volgende indeling:
ssh username@hostname
De gebruikersnaam kan ook worden opgegeven met de optie
-l
:
ssh -l username hostname
Wanneer er geen poort wordt gegeven, probeert de SSH-client standaard verbinding te maken met de externe server op poort 22. Op sommige servers wijzigen beheerders de standaard SSH-poort om een extra beveiligingslaag aan de server toe te voegen door het risico van geautomatiseerde aanvallen.
Gebruik de optie
-p
om de poort op te geven om verbinding te maken via een niet-standaardpoort:
ssh -p 5522 username@hostname
ssh -v username@hostname
Gebruik
-vvv
of
-vvv
om het niveau van verbosity te
-vvv
.
De opdracht
ssh
accepteert een aantal opties.
Lees de
ssh
man-pagina door
man ssh
in uw terminal te typen voor een volledige lijst van alle opties.
SSH-configuratiebestand
De OpenSSH-client leest de opties die zijn ingesteld in het configuratiebestand per gebruiker (
~/.ssh/config
). In dit bestand kunt u verschillende SSH-opties opslaan voor elke externe machine waarmee u verbinding maakt.
Hieronder ziet u een voorbeeld van een SSH-configuratie:
Host dev HostName dev.linuxize.com User mike Port 4422
Wanneer u de ssh-client oproept door
ssh dev
typen, leest de opdracht het bestand
~/.ssh/config
en gebruikt de verbindingsdetails die zijn opgegeven voor de dev-host. In dit voorbeeld is
ssh dev
gelijk aan het volgende:
ssh -p 4422 [email protected]
Raadpleeg het artikel in het SSH-configuratiebestand voor meer informatie.
Public Key Authentication
Het SSH-protocol ondersteunt verschillende authenticatiemechanismen.
Met het op openbare sleutels gebaseerde verificatiemechanisme kunt u zich aanmelden bij de externe server zonder dat u uw wachtwoord hoeft te typen.
Deze methode werkt door een paar cryptografische sleutels te genereren die worden gebruikt voor authenticatie. De persoonlijke sleutel wordt opgeslagen op het clientapparaat en de openbare sleutel wordt overgedragen naar elke externe server waarop u zich wilt aanmelden. De externe server moet worden geconfigureerd om sleutelverificatie te accepteren.
ssh-keygen -t rsa -b 4096 -C "[email protected]"
U wordt gevraagd om een veilige wachtwoordzin te typen. Of u een wachtwoordzin wilt gebruiken, het is aan u.
Nadat u uw sleutelpaar hebt, kopieert u de openbare sleutel naar de externe server:
ssh-copy-id username@hostname
Voer het externe gebruikerswachtwoord in en de openbare sleutel wordt toegevoegd aan het bestand met
authorized_keys
voor de externe gebruiker.
Nadat de sleutel is geüpload, kunt u zich aanmelden bij de externe server zonder dat u om een wachtwoord wordt gevraagd.
Door een op sleutels gebaseerde authenticatie in te stellen, kunt u het aanmeldingsproces vereenvoudigen en de algehele serverbeveiliging verhogen.
Port forwarding
SSH-tunneling of SSH-poort doorsturen is een methode voor het maken van een gecodeerde SSH-verbinding tussen een client en een servermachine waarmee servicespoorten kunnen worden doorgestuurd.
SSH-forwarding is handig voor het transporteren van netwerkgegevens van services die een niet-gecodeerd protocol gebruiken, zoals VNC of FTP, toegang tot geo-beperkte inhoud of het omzeilen van tussenliggende firewalls. Kortom, u kunt elke TCP-poort doorsturen en het verkeer via een beveiligde SSH-verbinding tunnelen.
Er zijn drie soorten SSH-poort doorsturen:
Doorsturen van lokale poorten
Met lokale poortdoorschakeling kunt u een verbinding van de clienthost naar de SSH-serverhost en vervolgens naar de doelhostpoort doorsturen.
Om een lokale port forwarding te maken, geeft u de optie
-L
aan de
ssh
client:
ssh -L LOCAL_PORT:DESTINATION_HOST:DESTINATION_PORT -N -f username@hostname
De optie -f geeft de opdracht
ssh
aan dat deze op de achtergrond moet worden uitgevoerd en
-N
om geen opdracht op afstand uit te voeren.
Remote Port Forwarding
Port forwarding op afstand is het tegenovergestelde van lokale port forwarding. Het stuurt een poort van de serverhost naar de clienthost en vervolgens naar de doelhostpoort.
De optie
-L
vertelt
ssh
om een poortdoorschakeling op afstand te maken:
ssh -R REMOTE_PORT:DESTINATION:DESTINATION_PORT -N -f username@hostname
Dynamische poort doorsturen
Dynamische port forwarding creëert een SOCKS-proxyserver die communicatie via verschillende poorten mogelijk maakt.
Om een dynamische port forwarding (SOCKS) te maken, geeft u de optie
-D
aan de ssh-client:
ssh -D LOCAL_PORT -N -f username@hostname
Raadpleeg het artikel over SSH-tunneling instellen (poort doorsturen) voor meer informatie en stapsgewijze instructies.
Conclusie
Om via SSH verbinding te maken met een externe server, gebruikt u de opdracht
ssh
gevolgd door de externe gebruikersnaam en hostnaam (
ssh username@hostname
).
Weten hoe je de
ssh
opdracht moet gebruiken, is essentieel voor het beheer van een externe server.
Gratis SSH-clients voor Windows 10/8/7
Secure Shell of SSH is een programma waarmee u zich bij een externe machine kunt aanmelden, uitvoeren opdrachten & verplaats bestanden. Controleer deze gratis SSH Client Software voor Windows.
Hoe ssh tunneling in te stellen om een firewall te omzeilen
Een firewall is een goede zaak, maar als het u ervan weerhoudt iets te doen, dan is SSH Tunneling een goede optie om te verkennen.
Hoe de SSH-poort in Linux te wijzigen
Standaard luistert SSH op poort 22. Het wijzigen van de standaard SSH-poort voegt een extra beveiligingslaag toe aan uw server door het risico van geautomatiseerde aanvallen te verminderen. In deze zelfstudie wordt uitgelegd hoe u de standaard SSH-poort in Linux kunt wijzigen.







