home       basis       routing       switching       advanced       security       overig       testen      

telnet

Telnet-client

telnet wordt nauwelijks nog gebruikt als remote terminal. Je komt het nog wel tegen als je een switch of een router moet configureren of uitlezen. Maar ook dat toepassingsgebied verdwijnt, omdat bijna alle netwerktoestellen tegenwoordig voorzien zijn van een web-service.
 
De remote terminal emulatie via telnet is ook al een tiental jaren vervangen door ssh: secure shell. Zoals de naam het zegt is secure shell een veilig protocol. ssh voorziet in een SSL laag (secure sockets layer), tussen applicatie en TCP, zodat de datastroom tussen server en client niet meer leesbaar is door luistervinken en sniffers onderweg.
 
telnet verstuurt alle data ongecodeerd over het netwerk, ook paswoorden.
 
Waarom dan nog telnet?
 
Er is het belangrijk aspect van het netwerk-testen.
Met telnet kun je mail-servers, print-servers, ftp-servers, web-servers, zelfs samba servers en ssh servers testen. Je test vanop je eigen machine, of vanaf ergens anders. Met telnet kun je zien of er verbinding is op het socket (ip-address + port number) van de server.
 
Noot -- dit labo is geen stap voor stap oefening. Er is veel variatie mogelijk afhankelijk van het klaslokaal en de gebruikte machines. Er kan dus één en ander fout gaan. Een tekening maken en voor elke oefening opnieuw invullen kan wonderen doen.
 

  1. ubuntu-net-xyz, linuxmint en w2000 @home
     
  2. TELNET-service op UBU16-NET-xyz
     
    Op de ubu16-NET-xyz staat o.a. een telnet-service. Test vanuit w2k de telnet service.
    Je kan nu inloggen via telnet op de ubu16-NET-xyz via het commando c:\> telnet 192.168.11.1 gebruiker = user, paswoord = sdf12345.
    Sluit de telnet-sessie af met exit
    Snif daarna met wireshark, terwijl je een nieuwe telnet-verbinding legt, zoals hierboven ...
    Zie een 3-way-handshake?
    Wat gebeurt er dan?
    Kan je de login volgen in wireshark?
    Kun je het paswoord van de login zien?
    Zie je na exit een TCP-session-tear-down?
    test eveneens vanaf de LinuxMint ...
     

  3. telnet als port scanner ...
     
    In de volgende experimenten gebruiken we telnet als port scanner en niet als applicatie ....
    je kan werken vanaf de intnet zijde op de w2k client of de linux mint, naar de ubu16-net-xyz ...
     
  4. we testen een service die niet werkt ... nntp naar de UBU16-NET-xyz
     
    $ telnet 192.168.11.1 119
    Trying 192.168.11.1 ...
    telnet: Unable to connect to remote host: Connection refused
    $

     

  5. je zou een MySQL service kunnen testen op de UBU16-NET-xyz ....
     
    $ telnet <ip-adres> 3306
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    ...

     

  6. een webserver
     
    Je kan de web-server op UBU16-NET-xyz telnetten op poort 80 ... vanuit w2k of linux mint in intnet:
     
    $ telnet 192.168.11.1  80
    Trying 192.168.11.1...
    Connected to 192.168.11.1
    Escape character is '^]'.
    quit
    <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
    <html><head>
    <title>501 Method Not Implemented</title>
    </head><body>
    <h1>Method Not Implemented</h1>
    <p>quit to / not supported.<br />
    </p>
    <hr>
    <address>Apache/2.2.3 (Ubuntu) PHP/5.2.1 Server at w3w.linux800.be Port 80</address>
    </body></html>
    Connection closed by foreign host.

     

  7. Een test van een samba server (dat kan eventueel ook op poort 445)
     
    testen op de UBU16-NET-xyz ...

    $ telnet 192.168.11.1 139
    Trying 192.168.11.1...
    Connected to 192.168.11.1
    Escape character is '^]'.
    ^]
    telnet> quit
    Connection closed.
    connection closed by foreign host.

     

  8. telnet en netcat als app-protocol tool
    https://www.howtoforge.com/useful-uses-of-netcat
    +
    krumins blog -- https://catonmat.net/about
     
    Spoofing HTTP Headers
     
    You can use netcat to request web pages:
     
    $ nc ispconfig.org 80
     
    You can then type in headers as follows:
    GET / HTTP/1.1
    Host: ispconfig.org
    Referrer: mypage.com
    User-Agent: my-browser

     
    As you see, this allows you to make up your own referrers and browser (User-Agent). After you've typed in your headers, press ENTER twice, and the requested page will appear (including the headers sent back by the remote server):

    server2:~# nc example.com 80
    GET / HTTP/1.1
    Host: example.com
    Referrer: mypage.com
    User-Agent: my-browser
     
    HTTP/1.1 200 OK
    Date: Fri, 28 Nov 2008 14:11:49 GMT
    Server: Apache/2.2.3 (Debian) mod_ssl/2.2.3 OpenSSL/0.9.8c
    Last-Modified: Wed, 26 Nov 2008 19:34:17 GMT
    ETag: "228c707-21b1-b6b7e040"
    Accept-Ranges: bytes
    Content-Length: 8625
    Content-Type: text/html

     
    [...]

 
Tijdelijk NIET [meer] van toepassing 2021
A. een echte telnet op een Dlink printserver // of een HP-printer ...
Je kan vanaf je Linux-Mint-19 (in bridged) telnetten naar de volgende machines ... of je installeert gewoon telnet op win10 via 'windows features'. Telnet in win10 geeft minder feed-back dan telnet vanaf Linux.
Vervang in het voorbeeld het ip-adres door een ip-adres van een switch, printer, wap ... en kijk of er een telnet op zit ....

    $ telnet 192.168.0.200
    Trying 192.168.0.200...
    Connected to 192.168.0.200.
    Escape character is '^]'.

    ************************************
    * Welcome to D-Link Print Server *
    * Telnet Console *
    ************************************

    Server Name : DLINK300u_1_200
    Server Model : DP-300U
    F/W Version : 1.20
    MAC Address : 00 0F 3D 6E 04 EA
    Uptime : 14 days, 17:24:37

    Please Enter Password: ********

    [Main Menu]
    1 - Server Configuration
    2 - Port Configuration
    3 - TCP/IP Configuration
    4 - AppleTalk Configuration
    5 - Display Information
    6 - Tools
    7 - Save Configuration
    0 - Quit

    Enter Selection: 0
    Quit from Print Server Console, Good-bye.
    Connection closed by foreign host.

 
Tijdelijk NIET [meer] van toepassing 2021
B. we testen de lpd-service op een printserver
vervang onderstaand ip-adres door een bereikbare printer in het lokaal ...

    $ telnet 172.16.1.253 515
    Trying 172.16.1.253...
    Connected to 172.16.1.253.
    Escape character is '^]'.
    ^]

    telnet> quit
    Connection closed.
De syntax is: ``telnet`` <ip-address> <portnumber> waarbij je ip-address kunt vervangen door een fully qualified domain name, en port-number door de correcte service-name.

Hier is het moeilijker om manueel de verbinding te verbreken: de ``^]`` maak je op een belgisch toetsenbord door een combinatie van de toetsen ``<CTRL><ALT GR>< ] >``

 
Tijdelijk NIET [meer] van toepassing 2021
C. we testen de hp-jetdirect service op een laserprinter
Vervang onderstaand ip-adres door een bereikbare printer in het lokaal ...

    $ telnet  10.0.1.214 9100
    Trying 10.0.1.214...
    Connected to 10.0.1.214.
    Escape character is '^]'.
    ^]

    telnet> quit
    Connection closed.