ssh para servidor diferente baseado no usuário?

2

Existe uma maneira simples de fazer o meu roteador encaminhar logins ssh para certos nomes de usuários para um servidor diferente na minha rede interna?

Por exemplo, ssh router @ url me registraria como roteador no roteador e ssh steve @ url entraria como steve no servidor.

Além disso, isso precisa ser uma solução do lado do servidor, porque eu quero que seja simples e fácil de usar.

    
por ZHoob2004 14.08.2014 / 21:17

1 resposta

1

Eu nunca vi nada parecido com o que você está pedindo, mas se eu entendi a sua pergunta corretamente, você quer fazer o que Chris Down disse em seu comentário. Use portas diferentes para hosts diferentes, por exemplo porta 22 para o seu servidor e porta 222 para o seu roteador. Você poderia fazer login assim no servidor: ssh steve@url e assim no roteador: ssh -p 222 router@url .

O cliente OpenSSH possui um arquivo de configuração que permite definir aliases. Estes são úteis se você SSH e para trás muito. Aqui estão dois exemplos mínimos (lembre-se de substituir "url" pelo seu URL real):

# ~/.ssh/config

Host server
    User steve
    HostName url
    Port 22
Host router
    User router
    HostName url
    Port 222

Você agora pode acessar o SSH para o seu servidor com ssh server e para o seu roteador com ssh router .

Se você ainda insistir em fazer esse trabalho em apenas uma porta, eu recomendo que você simplesmente conecte o SSH ao seu servidor e depois o SSH do servidor ao roteador (ou o contrário). Alternativamente, você pode criar um usuário chamado roteador no seu servidor e criar um script de login que efetue logon automaticamente no roteador. Dependendo do seu shell de login (e do resto do seu software, você não disse nada sobre o seu sistema), você pode fazer algo assim:

# Create a new user on the server
useradd -m router -p MyPassWordABC123

# Log in as the new user
su router

# Generate a new SSH key
ssh-keygen -t rsa -C "router@server" # You can safely accept the defaults.

# Add your key to authorized keys on the router to be able to log in without password
ssh-copy-id [email protected]
# Try logging into the router to verify this works

# Add a startup command to your .profile (depends on your shell, .profile works for at least bash)
echo "ssh [email protected]" >> ~/.profile

Eu devo mencionar que (na minha opinião) esta é uma solução feia para este problema.

    
por 14.08.2014 / 22:28

Tags