rssh - Cópia segura de arquivos entre máquinas GNU/Linux

Publicado por Daniel Zaia Manzano em 25/07/2014

[ Hits: 3.875 ]

 


rssh - Cópia segura de arquivos entre máquinas GNU/Linux



Uma das formas mais tradicionais de transferir arquivos entre duas máquinas GNU/Linux, é utilizando a ferramenta scp, derivada das ferramentas ssh e companhia.

O único inconveniente deste método, é ter que fornecer sua própria senha de usuário para quem for transferir os arquivos para sua máquina.

A solução que encontrei para isso, foi criar um usuário específico para esta finalidade. Mas esta solução comporta os mesmos problemas que antes, uma vez que eu continuo tendo que fornecer uma senha para os outros. E uma pessoa mal intencionada, pode acabar acessando minha máquina sem minha autorização.

Depois de pesquisar sobre como resolver este problema, encontrei a solução ideal, que é o shell rssh.

O rssh é um shell muito específico, cuja função é prover acesso a determinados serviços que trabalhem com transferência remota de arquivos, como SCP ou rSync, por exemplo. O grande detalhe, é que ele apenas provê acesso aos serviços estipulados, mas não propriamente a aplicações de acesso remoto, como o SSH, por exemplo.

Desta forma, uma vez configurado, qualquer pessoa que for transferir arquivos para minha máquina, mesmo sabendo a senha de um usuário, nada poderá fazer além de transferir arquivos.

Vamos implementar o rssh em 3 etapas:
  • Instalação;
  • Criação de um usuário específico para a finalidade de transferências remotas;
  • Configuração.

Instalação

1. Para instalar o pacote rssh:

apt-get install rssh

2. Em seguida, criaremos um usuário específico para receber as transferências remotas, chamado transfer. Já vamos estabelecer que seu shell padrão será o próprio /usr/bin/rssh, e em seguida vamos estabelecer uma senha para ele:

# useradd --create-home --shell /usr/bin/rssh transfer
# passwd transfer

3. Especificar no arquivo de configuração /etc/rssh.conf, quais serviços de transferência remota serão permitidos via rssh:

# cat /etc/rssh.conf
  # This is the default rssh config file

  # set the log facility. "LOG_USER" and "user" are equivalent.
  logfacility = LOG_USER

  # Leave these all commented out to make the default action for rssh to lock
  # users out completely...

  allowscp
  #allowsftp
  #allowcvs
  #allowrdist
  #allowrsync
  #allowsvnserve

  # set the default umask
  umask = 022
  ...


No exemplo acima, descomentei a linha allowscp, para habilitar o acesso via SCP. Os serviços que estiverem comentados, serão desabilitados via rssh.

Feito isso, quando alguém for copiar algum arquivo para mim, fornecerei a senha do usuário transfer, e somente conseguirão transferir arquivos via scp para minha máquina.

Exemplo: Na máquina de quem for transferir arquivos para minha máquina:

scp exemplo.txt [email protected]{máquina configurada com rssh}:/home/transfer

Obs.: no caso deste exemplo, a conta do usuário transfer não poderá ser usada para operar o sistema normalmente, pois o rssh não é um shell projetado para esta finalidade.

Para mais informações, consulte:
Outras dicas deste autor

Acompanhando progresso na cópia de arquivos

Montando imagem ISO

Transformando arquivo PDF em texto puro

Montando partições NTFS com permissão de leitura e escrita

Eliminando mensagem de aviso de configuração de rede no Debian

Leitura recomendada

Auditando acesso de usuários no Linux

Usando o ntop para monitorar a rede

Para quem quer dar o primeiro passo em direção ao mundo Hacking

GRUB com senha criptografada no Debian Squeeze

Renovando o certificado do Apache-SSL no Debian

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts