Fish, SSH e Segurança

By lmmoreira

Em um post escrito faz um tempo eu falei um pouco sobre o fish e uma conexão rápida e prática com outro computador Linux e que esta não era segura.

Dê uma lida no post que estou mencionando, ele é pequinino, em pouco tempo você o lê.

Agora que você leu vou lhe dar mais informações sobre o mesmo, afinal, você não achou que alguma coisa no Linux poderia ser insegura desta forma não é.

A primeira coisa que tenho para lhe dizer é que o fish que vimos roda totalmente com base no protocolo ssh, ou seja, tem a capacidade de criar conexões de rede encriptadas. Só isto já é bom, mas não o bastante, vejamos mais.

A primeira coisa que tenho para lhe mostrar é como iniciar, parar ou reiniciar o serviço ssh, sem ele nada disse que estamos vendo funcionará.

No console como root:

/etc/rc.d/sshd start

ou

/etc/rc.d/sshd stop

ou

/etc/rc.d/sshd restart

Este é um dos fatores que determina se o fish funcionará na sua máquina. Caso não esteja conseguindo fazer a conexão, verifique se o serviço ssh está rodando.

Porém não é isto que viemos fazer aqui.

Vamos configurar um pouco do nosso servidor ssh para que “fechemos” mais nossa máquina.

Como root abra o arquivo /etc/ssh/sshd_config

No arquivo informado acima, você pode alterar a porta padrão do ssh (22) para qualquer outro número acima deste. Esta atitude já lhe evita muitos ataques diretos a porta 22, porém não impossibilita o invasor de encontrar o número da porta que está usando apenas dá mais trabalho ao mesmo.

Port 220

Você pode permitir ou não o logon como root.

PermitRootLogin yes

E pode adicionar uma das características que mais gosto, que é permitir que a pessoa só se logue usuários que você permitir, assim se você permitir um usuário sem muitos privilégios, seu computador já estará seguro.

AllowUsers usuario1 usuario2 usuario3

Na minha opinião se a coisa toda parasse por aqui já seria legal, mas tem mais…

No arquivo /etc/hosts.allow você pode colocar exatamente quais IPs, faixa de IPs ou computadores você deseja liberar para acesso ssh. Veja o meu arquivo por exemplo:

#
# /etc/hosts.allow
#

sshd: 150.163.16.13

# End of file

No meu caso, somente o meu notebook tem acesso à minha máquina desktop, todos os outros IPs não importa qual seja são rejeitados. Você poderia também colocar todos os computadores de determinada rede por exemplo:

sshd: 150.163.16.

Assim não só o meu notebook, mas todos os computadores da minha faixa de rede tem acesso a minha máquina.

Isto não é só, você pode liberar todo mundo

sshd: ALL

Ou então liberar de uma faixa de IP até outra por exemplo:

sshd: 150.163.16.1/150.163.16.255

Aqui qualquer IP entre os dois (1..255) é permitido.

Ainda temos o arquivo /etc/hosts.deny, mas confesso que este não é importante pois oque fazemos é negar acesso a todo mundo no arquivo hosts.deny para então ir liberando aos poucos no arquivo hosts.allow.

ALL: ALL: DENY

Seu arquivo hosts.deny deve se parecer com a linha acima.

Lembre-se de a cada mudança de configuração reiniciar o seu serviço sshd.

Creio que isto seja suficiente para proteger seu computador de ataques ssh, mas lembre-se, este mercado cresce diariamente e você tem é que se manter informado para manter-se seguro.

Para se conectar a um computador com o ssh rodando é bem simples, apenas certifique-se que o serviço sshd está rodando, como eu lhes mostrei no início do post.

No konsole, ou qualquer outra linha de comando você pode se conectar através do comando

ssh -p <porta> <usuario>@<servidor>

ssh -p 22 leonardo@150.163.16.52

ssh -p 220 leonardo@leonardom.rede.com.br

Acima três formas de se conectar pelo konsole (linha de comando), onde 22 e 220 é a porta que o ssh está configurado, leonardo é o usuário e 150.163.16.52 é o IP que desejo me conectar que em alguns casos pode ser substítuido pelo nome do computador no grupo de rede. Certifique-se de tentar as duas formas, pois já passei por situações em que o IP não era encontrado, porém o endereço completo sim.

Podemos também nos conectar de forma visual pelo konqueror.

Uma coisa que eu me esqueci de dizer no post anterior é que em alguns casos raros de KDE você tem que permitir o uso do protocolo ssh pelo konqueror, antes de fazer a sua conexão.

Abra o seu konqueror e no Menu, em Configurações, Configurar o Conqueror, Pré-Visualizações e Metadatas libere o protocolo fish.

Então é só digitar na barra de endereços utilizando a mesma sintaxe indicada acima.

fish://leonardo@150.163.16.52

fish://leonardo@leonardom.rede.com.br

Creio ter esmerilhado o assunto em boa parte, caso alguem lembre-se de mais alguma coisa comente que completo o post.

Obrigado a todos.

Tags: , , , , , , , , ,

2 Respostas para “Fish, SSH e Segurança”

  1. Symp Disse:

    Oi! Tem como me ajudar em um detalhe?

    A dica em si resolveu o meu problema. precisava migrar meus dados de minha máquina Linux antiga para a nova. Simplesmente instalei o servidor ssh na máquina nova, entrei na antiga (que só tinha o cliente ssh), acessei remotamente o disco novo e copiei tudo. Vivaa!!!!!!

    Só que agora, quando eu ligo minha máquina nova, ao fazer o boot (ela tem um Kubuntu 8.10 standard atualizado),fica uma mensagem de “contacting YP Server”, algumas linhas de “….” e finalmente (depois de uns 5 minutos) dá mensagem de FAILED, e o boot prossegue normalmente.

    Pode me ajudar como faço para que ele se acerte nessa procura? O servidor ssh (minha máquina) funciona apesar disso. Será que teria de dizer que o YP server é 127.0.0.1? Como?

    Obrigado pela ajuda!

  2. lmmoreira Disse:

    Opa, Fala aí…

    1 – Antes de vc fazer a transferência segundo a dica não havia isto??

    2 – Caso não queira esta busca, tente retirar o yp daemon do rc.conf ou rc.d

    3 – Abra o arquivo /etc/hosts com o nano ou vi oque preferir e coloque o nome da sua máquina na linha de 127.0.0.1.
    Deve ficar mais ou menos isso:

    #
    # /etc/hosts: static lookup table for host names
    #

    #
    127.0.0.1 localhost.localdomain localhost

    # End of file

    4 – Caso ele não aceite o /etc/hosts como default dê uma olhada neste

    http://www.linux-nis.org/nis-howto/HOWTO/ypserv.html e

    http://www.linux-nis.org/nis-howto/HOWTO/

    que ele é bem especifico em como configurar um servidor

Deixe um comentário