Não é possível definir a porta SSH para algo diferente de 22

2

Quando tento definir minha porta SSH para algo diferente de 22 (editando /etc/sysconfig/iptables e /etc/ssh/sshd_config ), acabo bloqueada no servidor e tendo que inicializar no modo de recuperação para corrigir o problema.

Eu passei por este ciclo algumas vezes agora, cada vez mais cauteloso que estou fazendo as coisas certas.

É possível que minha nova porta (33933 neste caso) esteja de alguma forma bloqueada em algum outro lugar - ou há outro arquivo de referência 22 que eu precise alterar?

Isso está no CentOS 6 em uma nova caixa dedicada que acabei de configurar do oneprovider.com (um revendedor do online.net).

    
por Codemonkey 02.05.2014 / 12:47

4 respostas

8

Você pode definir o ssh para várias portas. Apenas tinha várias linhas portuárias, por exemplo

    Port 22
    Port 1500

Dessa forma, você pode fazer com que a porta 22 continue funcionando enquanto você soluciona problemas da porta 33933.

Em seguida, depois que você alterou sua configuração e reiniciou o ssh (é possível reiniciar o ssh com uma conexão ativa), seria testar se o servidor está escutando nessa porta.

    netstat -ltnp

Poste a saída disso.

    
por 02.05.2014 / 13:04
3

Eu acho que com o CentOS é o SELinux bloqueando sua conexão. Experimente

selinux port -l | grep ssh

e veja que provavelmente apenas a porta 22 é permitida.

semanage port -a -t ssh_port_t -p tcp 39333

adicionaria a porta 39333 às portas permitidas para o ssh. Verifique com

semanage port -l | grep ssh

e você deve estar pronto.

    
por 02.05.2014 / 13:03
1

A primeira pergunta é: você realmente carregou as novas configurações depois de editar os arquivos?

Eu recomendaria a configuração do iptables para permitir conexões de entrada em ambas as portas como a primeira etapa. Em segundo lugar você pode testar uma atualização para o sshd sem quebrar sua conexão ssh atual. Se você digitar service sshd reload , será possível verificar se consegue iniciar uma nova conexão ssh, mantendo o antigo ativo, de modo que ainda possa reverter suas alterações, se elas não funcionarem.

Se você tiver inetd ou xinetd instalado no servidor, poderá usá-lo para configurar uma porta sshd secundária que opera independentemente do primário. Aqui está um exemplo de como isso poderia aparecer no xinetd:

service second-ssh
{
    type            = UNLISTED
    flags           = REUSE
    socket_type     = stream
    protocol        = tcp
    port            = 64739
    wait            = no
    user            = root
    disable         = no
    server          = /usr/sbin/sshd
    server_args     = -i
}

Para descobrir se a outra porta está bloqueada em algum lugar da rede, você pode usar o tcpdump em cada extremidade da conexão para ver se o pacote SYN é enviado por uma extremidade e se é recebido pela outra extremidade. Se estiver bloqueado, você pode usar o traceroute para descobrir onde ele está bloqueado: traceroute -n -T -p 33933 example.com

    
por 02.05.2014 / 13:02
0

Depois de editar esses arquivos, você precisa reiniciar os dois serviços para aplicar a nova configuração.

Basta executar service sshd restart && service iptables restart e você poderá acessar.

    
por 02.05.2014 / 13:27

Tags