Como configurar um Telnet reverso no Mac OS X

7

Estou tentando configurar um Telnet reverso (Telnet para COM) no Mac OS X 10.9.5 (Mavericks). O Mac está conectado a um dispositivo serial. Não tenho nenhum problema em acessar o dispositivo serial do Mac usando a tela:

screen /dev/cu.USBserial

No entanto, gostaria de acessar o dispositivo remotamente, via Telnet.

Eu tentei usar o Netcat ( nc ) e tive sucesso limitado. O comando que eu usei é:

nc -l 9999 > /dev/cu.USBserial < /dev/cu.USBserial

E então eu posso usar o Telnet para o dispositivo. No entanto, não funciona por dois motivos:

  1. Para interface de usuário interativa, a entrada é essencialmente armazenada em buffer até que eu atinja return .
  2. Toda a minha entrada é ecoada de volta para mim. Na vida real, o dispositivo deve ecoar meus caracteres de entrada.

Qual é o jeito certo de fazer isso?

    
por some user 29.09.2015 / 22:58

2 respostas

1

Eu encontrei uma solução. O pacote Python Python tem uma classe rfc2217. Eles têm um aplicativo de exemplo que funciona como um servidor de telnet:

link

$ python rfc2217_server.py /dev/tty.serial

abre uma porta 2217 que permite que o telnet se conecte. É exatamente o que eu queria.

    
por 27.04.2016 / 20:27
4

O método mais simples:

  1. telnet (ou melhor, ssh ) para o seu Mac
  2. digite seu comando screen /dev/cu.USBserial

Agora, se você não quiser se conectar ao seu Mac diretamente na porta COM ou permitir que outros façam isso e nada mais, aqui está uma maneira:

  1. Crie um usuário dedicado no seu mac. Vamos chamá-lo de "comport" e logar como esse usuário.
  2. Crie um script de conexão para esse usuário. Crie um arquivo chamado /Users/comport/log2com.sh e insira essas linhas nele:

    #!/bin/bash
    /usr/bin/screen -R /dev/cu.USBserial
    
  3. Permita que o script seja executado executando este comando no seu terminal:

    chmod +x /Users/comport/log2com.sh
    
  4. Por fim, defina este script como o shell de login do seu usuário. Para isso, em Preferências do Sistema > Usuários e Grupos, na lista de usuários, clique com o botão direito no usuário e selecione "Opção Avançada". Em seguida, no campo "shell", digite /Users/comport/log2com.sh e clique em OK.

É isso. Você pode agora telnet (eu prefiro recomendar ssh !) Para este login no seu Mac para entrar diretamente na tela.

Note que para sair você precisa fazer a mesma maneira de tela (geralmente Ctrl + A , então :quit Return ). / p>

Testei isso no OSX 10.10.5. Deixe-me saber se funcionou para você.

    
por 08.10.2015 / 12:53