AutoTelnet 1.0.0

In seguito a varie esigenze di automazione di attività su apparati quali switch e ups o servizi vari come ad esempio SMTP o POP3 tramite il protocollo Telnet ho deciso di realizzare un’applicazione che mi consentisse in modo semplice di eseguire operazioni ben precise in maniera configurabile.

Da questa idea è nata AutoTelnet che permette tramite un’interfaccia grafica di configurare script Telnet con la possibilità di utilizzare parametri che potranno essere passati tramite riga di comando e che possono prevedere un valore di default o un’espressione.

Gli script Telnet sono salvati in file xml con estensione .ats (AutoTelnet Script)

image

Grazie ai parametri è possibile ridurre il numero di script da creare grazie al fatto che taluni comando o parte di essi possano essere passati da riga di comando. L’interfaccia grafica prevede nella tabella dedicata ai parametri oltre alla colonna Default Value anche la colonna Value che non verrà salvata, ma che può essere utilizzata per eseguire test.

Al momento le espressioni utilizzabili sono quattro tra cui la Now che permette di restituire la data corrente nel formato desiderato.

image

E’ possibile utilizzare i parametri nel campo Host, user, password e all’interno del multiline texbox dedicato ai comando.

AutoTelnet consente di inviare, se necessario, utente e password dopo la connessione all’host abilitando le opzioni Send user e Send Password. La password sarà memorizzata crittografata nel file di script.

I comando possono essere terminati tramite l’invio del carattere Linefeed, Carriage return o della combinazione Linefeed e Carriage return.

image

Il tab Settings è possibile configurare alcune impostazioni come la porta TCP da utilizzare per la connessione, il tempo di ritardo prima di eseguire la lettura dell’output dei comandi inviati, la crittografatura dell’intero file di script e la generazione di un file di log con l’opzione di crittografare se necessario l’output dei comandi.

image

Una volta configurato è testato lo script sarà possibile eseguirlo avviando AutoTelnet in modalità batch tramite l’opzione a riga di comando /nogui specificando il file di script tramite l’opzione /f: e i parametri tramite l’opzione /p:.

image

Di seguito un esempio di esecuzione di AutoTelnet a riga di comando:

AutoTelnet.exe /nogui /f:e:/scripts/HP1920.ats /p:@SwitchIP=”10.0.0.10″ /p:@SwitchName=”SW0003″

Tramite il tab Notes se si desidera è possibile inserire nello script delle annotazioni in formato Rtf.

AutoTelnet è sviluppato tramite Visual Studio 2013 in linguaggio VB.Net e richiede .NET 4.0 o successivi ed è disponibile come progetto Open Source su GitHub all’indirizzo https://github.com/ermannog/AutoTelnet.

In un prossimo post mostrerò come automatizzare tramite AutoTelnet il backup della configurazione di switch.

[Update 01]

Ho rilasciato la versione 1.1.0 con alcune migliorie nella lettura dell’output dei comandi inviati tramite Telnet e l’aggiunta di una impostazione che permette se necessario su dispositivi particolarmente lenti a rispondere di riprovare la lettura per un numero prefissato di tentativi e solo se tutti i tentativi non restituiscono dati si da per conclusa la lettura.

image

[Update 02]

Rilasciata la versione 1.1.1 con alcune migliorie al codice relativo alla gestione della lettura dell’output di una connessione Telnet.

[Update 03]

Rilasciata la versione 1.2.0 con alcune migliorie nella gestione dell’output di una connessione Telnet e l’aggiunta della possibilità di gestire i parametri anche nel nome del file di log. Inoltre è stata migliorata la gestione dei parametri.

[Update 04]

Rilasciata la versione 1.3.0 con l’aggiunta della possibilità di modificare l’output in modalità batch nel caso di esecuzione riuscita e fallita, inoltre è stata anche aggiunta la possibilità di registrare tali messaggi su un file di testo per consentire la generazione di log nel caso esecuzioni automatizzate di AutoTelent. Nei campi relativi ai messaggi esecuzione riuscita e fallita e del nome del file di output è possibile utilizzare i parametri.

image

[Update 05]

Rilasciata la versione 1.4.0 che risolve un issue che impediva la generazione del log in modalità batch (parametro /nogui). Inoltre è stata modificata la gestione dei logs per consentire la visualizzazione dei log anche quando non si sta editando un file di configurazione. Dopo tale mofica alla gestione dei logs se si sta editando un file di configurazione verrà aperto il file log configurato, nel caso in cui non si stia editando un file di configurazione verrà richiesto di selezionare il file di log da visualizzare.

28 commenti su “AutoTelnet 1.0.0”

  1. Ciao, ho fatto un test utilizzando lo switch /NoGUI, funziona tutto tranne che non popola il file di LOG. Utilizzando la GUI sul file di LOG eseguendo un comando Telnet su un apparato mi salva la risposta dell’apparato, mentre con NoGUI questo non succede. E’ normale ?
    Grazie del supporto,
    Mauro

    Rispondi
  2. Hello,

    If run the following command, I receive “Error unknown options 2”

    AutoTelnet.exe / nogui /f:C:\Users\richard.sunda\Desktop\dnd\dnd.ats

    Any help would be greatly appreciated.

    Thank you.

    Rispondi
  3. Boa tarde, me chamo Rafael e estou usando esta ferramenta super útil nas minhas rotinas, estou com problemas para importar os arquivos .ats , quando importo ele esta dando um erro enorme uso a versão Auto Telnet 1.4.0.
    Quero pedir a ajuda para conseguir fazer meu trabalho no dia a dia.
    O ERRO :
    Uma excessao foi adicionada pelo destino de uma chamada.
    system.Reflection.TargetinvocationExcepition

    last Win32Error:Error code 3FO (tentativa de fazer referência a uma token
    não existente)

    (PORTUGUESE BR)

    Rispondi
  4. @modem_ip
    true
    admin
    true
    jkRQpzcUobb615K7eyQflg==

    CrLf

    @ip_olt
    172.10.10.2

    @nome_de_usuario
    admin

    @senha_de_usuario
    123456

    @modo_privilegiado
    enable

    @modo_config_global
    configure terminal

    @mostrar_sinal_ont
    sh optical info ont 0/1/1

    @mostrar_mac_pon
    sh mac int pon 0/8

    @mostrar_onts_online_pon
    sh ont br int pon 0/8

    @mostrar_configurações_interface
    sh int br

    @mostrar_versão_ont
    sh ont version

    @Mostrar_descrição
    sh ont capability

    @mostrar_utilização_cpu
    sh cpu-utilization

    @mostrar_utilização_interface
    sh utilization interface

    @mostrar_usuarios
    sh username

    script dando erro ao importar o arquivo .ats

    Rispondi
          • usuario admin e senha 123456 , mas vou remover e verificar se sem senha ele consegue importar

            language portuguese brazil

          • consegui resolver , apenas desabilitei o enviar password, vou digitar ou pedir para digitar quando for utilizar , mas se salvar com a caixa habilitada não foi .

            agradeço obrigado .

            language portuguese brazil

          • Tentei criar um arquivo com a senha 123456 mas vi que depois da criptografia fica diferente do arquivo que você me mandou …. hora que o problema está no sistema que você está usando … Windows 7 está atualizado?
            Tentei criar o arquivo em um Windows 10

  5. Ermanno Goletto disse:
    5 DE SETEMBRO DE 2020 ÀS 23H24
    Tentei criar um arquivo com a senha 123456 mas vi que depois da criptografia fica diferente do arquivo que você me mandou…. Agora que você está usando nenhum problema de sistema… O Windows 7 está sendo usado?
    Tentei criar o arquivo em um Windows 10
    ________________________________________________________________________________
    estou usando windows 7
    e depois que eu não desmarquei send password deu certo.
    vou postar o outro que eu fiz , se deu certo você menciona aqui.
    http://www.mediafire.com/file/xsz7m2g2g9z3pd2/phyhome_config_v1.ats/file

    gostaria muito que fizesse futuras atualizações, mudar o fundo azul
    e a possibilidade de usar a porta com (com1,2,3……etc)

    language portuguese brazil

    Rispondi
  6. Hi, Great software! But my router is very slow responding – I need to wait until I see the > before sending the next command. Is there any way to wait for a response from the router before the script continues? thank you.

    Rispondi
    • Thanks for using Autotelnet!
      I had thought of putting an option to wait for the answer, but sometimes the answers can occur in various steps (for example various lines of text) … so you can’t be sure when the answer is finished and I therefore preferred to manage through waiting times

      Rispondi
  7. Ciao guarda di nuovo, mi disturba, voglio fare uno script per riavviare la mia attrezzatura all’ora e alla data specificate, vorrei un esempio in modo da poter provare a farlo da solo.
    Ho un interruttore gestibile che mi fa venire il mal di testa, quindi programmerò il riavvio ogni 2 giorni alle 3 del mattino.
    Vorrei un aiuto!

    Rispondi

Rispondi a Ermanno Goletto Annulla risposta

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.