Telnet è un programma di emulazione terminale per reti TCP/IP che consente di accedere a un altro computer su Internet o su una rete locale accedendo al sistema remoto. Telnet è un protocollo client-server che si collega alla porta 23 del Transmission Control Protocol. Puoi anche usare Telnet per controllare le porte aperte su un sistema remoto.
In questo tutorial imparerai come installare e utilizzare server e client Telnet su un server LTS Ubuntu 20.04.
AVVISO: Telnet è un protocollo non crittografato e quindi non sicuro. Questa guida è solo a scopo didattico e non è una raccomandazione per l'utilizzo di Telnet Server sul proprio sistema. Questa guida ti mostrerà come installare e utilizzare il client e il server Telnet nel caso in cui desideri saperne di più su questo antico protocollo di amministrazione del server o nel caso in cui desideri utilizzare il client Telnet per testare il tuo server di posta. NON consigliamo di utilizzare Telnet (Server) sui server di oggi, soprattutto se lo utilizzi su Internet. Per gestire il tuo server in rete, usa SSH invece di Telnet. L'utilizzo di un client Telnet è qualcosa di diverso. Un client Telnet è uno strumento utile per testare la tua posta o il tuo server web, ad esempio, come mostrato di seguito.
Requisiti
- Un server che esegue il server Ubuntu 20.04.
- Un utente non root con privilegi sudo.
- Un indirizzo IP statico 192.168.0.100 da configurare sul tuo server.
Installa server Telnet
Per impostazione predefinita, il pacchetto del server Telnet è disponibile nel repository predefinito di Ubuntu 20.04. Puoi installarlo semplicemente eseguendo il seguente comando:
sudo apt install telnetd -y
Una volta completata l'installazione, puoi controllare lo stato del servizio Telnet utilizzando il seguente comando:
sudo systemctl status inetd
Uscita:
? inetd.service - Internet superserver Loaded: loaded (/lib/systemd/system/inetd.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-04-29 10:24:05 UTC; 38s ago Docs: man:inetd(8) Main PID: 2883 (inetd) Tasks: 1 (limit: 1114) CGroup: /system.slice/inetd.service ??2883 /usr/sbin/inetd Apr 29 10:24:05 ubuntu2004 systemd[1]: Starting Internet superserver... Apr 29 10:24:05 ubuntu2004 systemd[1]: Started Internet superserver.
Test della connessione Telnet dal sistema remoto
Il server Telnet è ora installato e in ascolto sulla porta 23. È ora di connettere il server Telnet dal sistema remoto.
Ora, accedi a un altro sistema Ubuntu ed esegui il seguente comando:
telnet 192.168.0.100
Ti verrà chiesto di inserire nome utente e password. Dopo aver eseguito correttamente l'autenticazione, dovresti vedere il seguente output:
Trying 192.168.0.100... Connected to 192.168.0.100. Escape character is '^]'. Ubuntu 20.04 LTS ubuntu2004 login: hitesh Password: Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-72-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Thu 29 Apr 2021 09:16:14 AM UTC System load: 0.83 Usage of /: 14.7% of 39.12GB Memory usage: 30% Swap usage: 0% Processes: 163 Users logged in: 0 IPv4 address for ens33: 192.168.0.100 IPv6 address for ens33: 2003:e1:bf4b:8b00:20c:29ff:fef5:ee3c * Pure upstream Kubernetes 1.21, smallest, simplest cluster ops! https://microk8s.io/ 8 updates can be installed immediately. 0 of these updates are security updates. To see these additional updates run: apt list --upgradable Last login: Wed Apr 28 08:50:37 2021 from 192.168.0.20
Ora puoi eseguire qualsiasi comando sul server Telnet utilizzando Telnet.
Usa telnet per testare le porte aperte
Puoi anche utilizzare Telnet per testare le porte aperte su un sistema remoto.
Ad esempio, per testare la porta 80 sul sistema remoto (IP 192.168.0.100) eseguire il comando seguente:
telnet 192.168.0.100 80
Se la porta 80 è aperta, dovresti vedere il seguente output:
Trying 192.168.0.100... Connected to 192.168.0.100. Escape character is '^]'.
Se la porta 80 è bloccata o il servizio Telnet non è in esecuzione. Dovresti vedere il seguente output:
Trying 192.168.0.100... telnet: Unable to connect to remote host: Connection refused
Utilizza il comando Telnet per testare un server di posta
Il comando Telnet è anche molto utile per testare un server di posta. Connettiti a un server di posta utilizzando Telnet
telnet 192.168.0.100 25
Se la connessione riesce, vedrai una risposta dall'altro server simile a questa:
Trying 192.168.0.100...
Connected to 192.168.0.100.
Escape character is '^]'.
220 server1.example.com ESMTP Postfix (Debian/GNU)
Ora puoi rispondere al server con il comando ehlo, seguito dal nome di dominio del tuo mittente. Esempio:
ehlo mydomain.tld
Il server di posta ti mostrerà quindi quali metodi supporta.
250-server1.example.com
250-PIPELINING
250-SIZE
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250-SMTPUTF8
250 CHUNKING
Per uscire dalla connessione, inserisci il comando esci.
quit
Il risultato sarà:
221 2.0.0 Bye
Connection closed by foreign host.
La sequenza di comandi completa è:
[email protected]:~# telnet 192.168.0.100 25
Trying 192.168.0.100...
Connected to 192.168.0.100.
Escape character is '^]'.
220 server1.example.com ESMTP Postfix (Debian/GNU)
ehlo mydomain.tld
250-server1.example.com
250-PIPELINING
250-SIZE
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250-SMTPUTF8
250 CHUNKING
quit
221 2.0.0 Bye
Connection closed by foreign host.
[email protected]:~#
Questa procedura di test è utile se desideri scoprire se i servizi di posta (porta 25) sono bloccati dal tuo provider di servizi Internet o dal centro dati.