Linux/Unix SSH, PingFTP- en Telnet-communicatieopdrachten

⚡ Slimme samenvatting

Linux-communicatiecommando's zoals SSH, PingMet FTP en Telnet kunt u verbinding maken met externe systemen, de netwerkbeschikbaarheid testen, bestanden overdragen en servers beheren, rechtstreeks vanaf de terminal op elke Linux- of Unix-machine.

  • 🔐 SSH: Secure Shell maakt via een versleuteld kanaal op TCP-poort 22 verbinding met externe machines en vervangt het onveilige Telnet voor serverbeheer.
  • 📡 Ping: De ping Deze opdracht verzendt ICMP-pakketten om te bevestigen dat een host bereikbaar is en om de status van de verbinding te meten.
  • 📁 ftp: File Transfer Protocol (FTP) uploadt en downloadt bestanden tussen lokale en externe computers met behulp van commando's zoals 'put' en 'get'.
  • 💻 Telenet: Telnet opent een externe terminalsessie op poort 23, maar verzendt gegevens, inclusief wachtwoorden, in platte tekst.
  • 🔒 Beveiliging: Geef de voorkeur aan SSH en SFTP boven Telnet en gewone FTP, omdat ze inloggegevens en gegevens tijdens de overdracht versleutelen.
  • 🤖 AI-assistentie: AI-assistenten en GitHub Copilot kunnen verbindingsopdrachten genereren en helpen bij het diagnosticeren van netwerkfouten.

Linux- en Unix-communicatiecommando's SSH, Ping, FTP en Telnet

Tijdens het werken aan een Linux Als je een Linux-besturingssysteem gebruikt, moet je mogelijk met andere apparaten communiceren. Hiervoor zijn er een aantal basisprogramma's die je kunt gebruiken. Deze programma's helpen je bij de communicatie met netwerken, andere Linux-systemen en externe gebruikers. De onderstaande afbeelding laat zien hoe deze tools je computer verbinden met netwerken en externe hosts.

Linux-communicatiehulpprogramma's die een computer verbinden met netwerken en externe systemen.

Laten we ze dus één voor één bekijken: SSH, Ping, FTP en Telnet.

SSH

SSH, wat staat voor Secure Shell, wordt gebruikt om op een veilige manier verbinding te maken met een externe computer. In vergelijking met Telnet is SSH veiliger omdat de client/server-verbinding wordt geverifieerd met een digitaal certificaat en wachtwoorden worden versleuteld. Daarom wordt het veel gebruikt door systeembeheerders om Linux-servers op afstand te beheren.

De syntax om via SSH in te loggen op een externe Linux-machine is:

ssh username@ip-address or hostname

De onderstaande schermafbeelding toont een terminal die via het ssh-commando verbinding maakt met een externe machine.

Inloggen op een externe Linux-machine met behulp van het ssh-commando

Zodra je bent ingelogd, kun je alle commando's uitvoeren die je normaal gesproken in je eigen terminal zou gebruiken. Gebruik bijvoorbeeld het commando `ls` om de bestanden in de huidige map weer te geven:

ls

De uitvoer van het commando ls ziet er als volgt uit.

Uitvoer van het commando `ls` waarmee de inhoud van een directory via een SSH-sessie wordt weergegeven.

Gebruik op dezelfde manier het commando `pwd` om de huidige werkmap weer te geven:

pwd

Het commando `pwd` geeft het pad van de werkmap weer, zoals hieronder te zien is.

Uitvoer van het commando `pwd` dat de werkmap weergeeft tijdens een SSH-sessie.

Ping

De ping Deze utility wordt vaak gebruikt om te controleren of je verbinding met een server stabiel is. Deze opdracht wordt ook gebruikt voor:

  • Analyseren van netwerk- en hostverbindingen
  • Tracking Netwerkprestaties en het beheer ervan.
  • Testen van hardware- en softwareproblemen

Opdrachtsyntaxis:

ping hostname or IP-address

Bijvoorbeeld ping een apparaat herkennen aan zijn IP-adres:

ping 172.16.170.1

De ping Het commando verzendt pakketten naar het IP-adres en rapporteert de antwoorden, zoals hieronder weergegeven.

Uitgang van de ping commando dat pakketten naar een IP-adres verzendt

Ook ping een host aan de hand van zijn domeinnaam:

ping google.com

De onderstaande uitvoer toont ping Een host bereiken via de hostnaam.

Uitgang van de ping commando om een ​​host te bereiken via zijn domeinnaam

Hier verstuurt een systeem datapakketten van 64 bytes naar het IP-adres (172.16.170.1) of de hostnaam (www.google.com). Als zelfs maar één van de datapakketten niet terugkomt of verloren gaat, duidt dit op een verbindingsfout. De internetverbinding wordt meestal op deze manier gecontroleerd. U kunt Ctrl + c indrukken om het programma te verlaten. ping lus.

FTP

FTP staat voor File Transfer Protocol. Het is het meest gebruikte protocol voor het overdragen van gegevens tussen computers. De onderstaande afbeelding illustreert een FTP-bestandsoverdracht tussen een lokale en een externe computer.

FTP-bestandsoverdracht tussen een lokale computer en een externe host.

Je kunt gebruiken FTP tot:

  • Log in en maak verbinding met een externe host.
  • Upload en download bestanden
  • Navigeer door mappen
  • Bekijk de inhoud van mappen.

De syntax voor het tot stand brengen van een FTP-verbinding met een externe host is:

ftp hostname or IP-address

Zodra u dit commando invoert, wordt u gevraagd om authenticatie met een gebruikersnaam en wachtwoord, zoals hieronder weergegeven.

Authenticatie bij een externe host met een gebruikersnaam en wachtwoord via FTP

Zodra de verbinding tot stand is gebracht en u bent ingelogd, kunt u de volgende commando's gebruiken om verschillende acties uit te voeren.

commando Functie
dir Geef bestanden weer in de huidige map van een externe computer
cd “mapnaam” Wijzig de directory naar "dirname" op een externe computer.
bestand plaatsen Upload 'bestand' van lokaal naar externe computer
bestand ophalen Download 'bestand' van de externe naar de lokale computer
ophouden Uitloggen

De onderstaande schermafbeelding toont enkele van deze belangrijke FTP-opdrachten die in een sessie worden uitgevoerd.

Het uitvoeren van FTP-opdrachten zoals dir, get en put in een terminalsessie.

Telnet

Telnet helpt je bij:

  • Verbinding maken met een externe Linux-computer.
  • Programma's op afstand uitvoeren en administratie verrichten.

Deze functie is vergelijkbaar met de functie voor extern bureaublad die te vinden is op Windows machines. De onderstaande afbeelding toont een Telnet-verbinding met een externe Linux-computer.

Telnet-sessie verbinding maken met een externe Linux-computer

De syntaxis voor dit hulpprogramma is:

telnet hostname or IP-address

Maak bijvoorbeeld verbinding met uw eigen computer (localhost):

telnet localhost

Voor demonstratiedoeleinden maken we verbinding met uw computer (localhost). Het programma vraagt ​​om uw gebruikersnaam en wachtwoord, zoals hieronder weergegeven.

Verbinding maken met localhost met het telnet-commando en vervolgens om inloggegevens gevraagd worden.

Nadat u bent geauthenticeerd, kunt u opdrachten uitvoeren zoals u dat tot nu toe via de terminal hebt gedaan. Het enige verschil is dat, als u verbonden bent met een externe host, de opdrachten op de externe machine worden uitgevoerd en niet op uw lokale machine. U kunt de Telnet-verbinding verbreken door het commando 'logout' in te voeren.

Waarom SSH Telnet verving

Telnet, een van de oudste tools voor toegang op afstand, verzendt alles wat je typt – inclusief je gebruikersnaam en wachtwoord – als platte tekst over poort 23. Iedereen die dat verkeer onderschept, kan de inloggegevens lezen, waardoor Telnet onveilig is op het openbare internet. SSH is ontworpen om precies deze zwakte te verhelpen.

SSH is op een aantal belangrijke punten een verbetering ten opzichte van Telnet:

  • encryptie: SSH versleutelt de volledige sessie via poort 22, waardoor wachtwoorden en gegevens tijdens de overdracht niet kunnen worden onderschept.
  • authenticatie: SSH verifieert de server met een digitale sleutel en ondersteunt sleutelgebaseerde aanmeldingen die veiliger zijn dan wachtwoorden.
  • Integrity: SSH detecteert of de gegevensstroom tijdens de overdracht is gemanipuleerd.

Vanwege deze beveiligingen gebruiken systeembeheerders nu SSH om externe Linux-servers te beheren, en wordt Telnet voornamelijk nog gebruikt voor snelle tests of op vertrouwde interne netwerken.

SSH, PingFTP en Telnet vergeleken

Elk van deze hulpprogramma's lost een ander communicatieprobleem op, van het testen van een verbinding tot het verplaatsen van bestanden en het uitvoeren van externe sessies. De onderstaande tabel geeft een overzicht van de verschillen, zodat u het juiste hulpmiddel kunt kiezen.

utility Doel Protocol Standaard poort gecodeerde
SSH Beveiligde externe aanmelding en beheer TCP (SSH) 22 Ja
Ping Test of een host bereikbaar is en meet de latentie. ICMP Geen (zonder poort) Niet van toepassing
FTP Bestanden overdragen tussen hosts TCP (FTP) 21 (20 voor gegevens) Nee (gewone FTP)
Telnet Toegang tot de externe terminal TCP (Telnet) 23 Nee

Voor alles wat met internet verbonden is, kies je de versleutelde opties: SSH voor externe sessies en SFTP of SCP (beide werken via SSH) voor bestandsoverdracht.

Veelgestelde vragen

FTP verzendt bestanden en wachtwoorden als platte tekst, waardoor iedereen die het netwerk monitort ze kan lezen. SFTP doet hetzelfde binnen een versleutelde SSH-verbinding op poort 22, waardoor uw inloggegevens en data beschermd zijn. Voor elke overdracht via internet is SFTP de veiligere keuze.

SCP (Secure Copy) kopieert bestanden tussen hosts via een versleuteld SSH-kanaal, waardoor het net als SFTP veilig is. Het is sneller, maar beperkter, omdat het alleen bestanden kopieert en ze niet kan weergeven, hernoemen of verwijderen. Moderne handleidingen raden SFTP of rsync aan boven SCP.

Typ 'exit' of 'logout' en druk op Enter om een ​​SSH- of Telnet-sessie te sluiten en terug te keren naar uw lokale terminal. Als een sessie vastloopt, accepteert SSH ook de escape-sequentie: druk op Enter en typ vervolgens een tilde gevolgd door een punt (~.) om de verbinding geforceerd te sluiten.

Nee. Ping Het maakt gebruik van ICMP, een netwerklaagprotocol dat werkt zonder poortnummers. Het verzendt een ICMP-echoverzoek en wacht op een echoantwoord. Omdat het niet afhankelijk is van TCP of UDP, blokkeren firewalls ICMP soms, zelfs als andere services wel bereikbaar blijven.

Standaard is Linux ping Het programma blijft draaien totdat je het stopt met Ctrl + c. Voeg de optie -c toe met een getal om bijvoorbeeld een vast aantal te verzenden. ping -c 4 google.com verzendt vier pakketten en stopt dan automatisch, wat handig is in scripts en bij health checks.

"Verbinding geweigerd" betekent meestal dat de SSH-service niet actief is op de externe host, of dat een firewall poort 22 blokkeert. Controleer of sshd is geïnstalleerd en gestart, controleer het hostadres en de poort, en zorg ervoor dat de netwerkregels de verbinding toestaan ​​voordat u het opnieuw probeert.

Machine learning-tools kunnen scannen ping AI-assistenten analyseren resultaten, SSH-logboeken en pakketcaptures om latentiepieken, mislukte aanmeldingen en afwijkingen op te sporen die een mens mogelijk over het hoofd ziet. Ze leggen ook cryptische foutmeldingen uit en suggereren de volgende diagnostische opdracht, waardoor het oplossen van netwerkproblemen wordt versneld.

Ja. GitHub-copiloot Kan shellscripts schrijven die SSH-aanmeldingen, FTP-batchoverdrachten en geplande taken automatiseren. ping Het voert controles uit. Tijdens het typen worden commando-vlaggen en lussen voorgesteld, maar u moet altijd de gegenereerde verbindings- en referentieverwerking controleren voordat u deze uitvoert.

Vat dit bericht samen met: