2 configurações sshd 1 para interno e 1 externo O

5

Como posso configurar o servidor ssh aberto para que, se eu estou ssh'ng de um lan local, eu quero que seja via porta 22, mas se eu estou vindo externamente a sua porta via 12345, por exemplo.

Então, para acesso externo, eu gostaria de algumas regras diferentes (mais estritas) em sshd_config

    
por parisv 25.07.2013 / 18:36

2 respostas

5

A resposta de Eric Carvalho funciona para o pre 15.04 mas eles desaprovaram e então removeram o upstart do Ubuntu, SystemdForUpstartUsers .

Estas etapas foram adaptadas para funcionar com o systemd.

  1. Copie o arquivo de configuração do SSH:

    sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config_external

  2. Copie o arquivo de configuração do systemd:

    sudo cp /lib/systemd/system/ssh.service /lib/systemd/system/sshd-external.service

    no novo arquivo ( /lib/systemd/system/sshd-external.service ) altera a linha:

    ExecStart=/usr/sbin/sshd -D $SSHD_OPTS

    para:

    ExecStart=/usr/sbin/sshd -D $SSHD_OPTS -f /etc/ssh/sshd_config_external

    e a linha:

    Alias=sshd.service

    para:

    Alias=sshd-external.service

  3. Agora personalize /etc/ssh/sshd_config_external de acordo com suas necessidades (por exemplo, alterar Port 22 para Port 12345 )

  4. ativar o serviço

    sudo ln -s /lib/systemd/system/ssh-external.service /etc/systemd/system/sshd-external.service

    Se você executou o comando acima, execute sudo systemctl disable sshd-external.service antes de executar o próximo comando

    sudo systemctl enable sshd-external.service

    sudo service sshd-external start

Isso foi testado no Ubuntu 16.04 em hardware real e uma máquina virtual no VirtualBox.

Deixe-me saber se isso não funcionar. Eu sou conhecido por fazer erros de digitação.

    
por Zeke 29.12.2016 / 15:53
3

Crie outra instância do serviço SSH.

  1. Copie o arquivo de configuração do SSH:

    sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config_external
    
  2. Copie o arquivo de configuração inicial:

    sudo cp /etc/init/ssh.conf /etc/init/ssh-external.conf
    

    No novo arquivo ( ssh-external.conf ), altere a linha:

    mkdir -p -m0755 /var/run/sshd
    

    para:

    mkdir -p -m0755 /var/run/sshd-external
    

    E mude a linha:

    exec /usr/sbin/sshd -D
    

    para:

    exec /usr/sbin/sshd -D -f /etc/ssh/sshd_config_external
    
  3. Crie o link para o upstart:

    sudo ln -s /lib/init/upstart-job /etc/init.d/ssh-external 
    

Agora, personalize /etc/ssh/sshd_config_external de acordo com suas necessidades (por exemplo, altere Port 22 para Port 12345 ) e inicie o serviço:

sudo service ssh-external start
    
por Eric Carvalho 25.07.2013 / 19:06

Tags