Usando o shfs
O shfs derruba esta limitação, permitindo montar diretórios do servidor remoto, como se fossem compartilhamentos de rede, permitindo que você acesse os arquivos de forma transparente, como se fossem arquivos locais. Tudo é feito via ssh, de forma que você não precisa manter nenhum serviço adicional ativado no servidor. Toda a configuração abaixo é feita no cliente. Para usar o shfs, é necessário ter instalado o pacote "shfs-utils", junto com o módulo de Kernel "shfs". Para usar algumas das opções que veremos a seguir, você vai precisar também do pacote "ssh-askpass", por isso é importante instalá-lo também. Vamos por partes. A página do projeto é a http://shfs.sourceforge.net/, onde você pode baixar um pacote contendo o código fonte tanto do módulo, quanto dos executáveis shfsmount e shfsumount. Comece descompactando o arquivo baixado, como em: $ tar -zxvf shfs-0.35.tar.gz Acesse a pasta que será criada. Para compilar o módulo "shfs", acesse a pasta "shfs/Linux-2.6/" e rode o comando "make". Note que para compilar o módulo, você deve ter instalados os pacotes kernel-headers e (em algumas distribuições) também o pacote "kernel-source", além dos compiladores básicos. Carregue o módulo gerado usando o comando "insmod shfs.ko". Para compilar e instalar os dois executáveis, concluindo a instalação, acesse a pasta "shfsmount/" e rode os comandos "make" e "make install". Nas distribuições derivadas do Debian, a instalação é mais simples, pois você pode instalar tudo via apt-get. Comece instalando os pacotes "shfs-utils" e "ssh-askpass": # apt-get install shfs-utils ssh-askpass Para instalar o módulo, instale o pacote "module-assistant" e o "shfs-source" e compile/instale o módulo, usando os comandos:
# apt-get
install module-assistant shfs-source Algumas distribuições, como o Kanotix e versões recentes do Kurumin (a partir do 6.0), já trazem todos estes componentes pré-instalados, dispensando todos estes passos manuais. Quando corretamente instalado, o shfs é bastante estável. Se você estiver tendo problemas de instabilidade, conexões interrompidas com erros estranhos, etc., atualize para a última versão. Pode ser que a distribuição em uso inclua uma versão antiga ou de desenvolvimento. Com tudo nos devidos lugares, comece carregando o módulo "shfs": # modprobe shfs Se preferir que ele seja carregado automaticamente durante o boot, adicione a linha "shfs" no final do arquivo "/etc/modules". A partir daí, você pode usar o "shfsmount" para montar pastas do servidor remoto, como em: # shfsmount morimoto@192.168.0.1:/mnt/arquivos /mnt/servidor Veja que você precisa indicar o login e o endereço IP do servidor remoto, seguido da pasta que será acessada e do diretório local onde os arquivos ficarão disponíveis. No exemplo estou montando a pasta "/mnt/arquivos" do servidor remoto, mas você pode montar qualquer pasta (que o usuário usado tenha acesso), inclusive o diretório raiz. Para desmontar a pasta, use o comando "shfsumount", ao invés do "umount", como em: # shfsumount /mnt/servidor Se o sshd no servidor estiver configurado para usar uma porta diferente da padrão, indique a porta usada com o parâmetro "-P" (maiúsculo), como em: # shfsmount -P 2222 morimoto@192.168.0.1:/mnt/arquivos /mnt/servidor Originalmente, os arquivos ficam acessíveis apenas para o root. Se quiser acessar a pasta montada usando seu login de usuário, indique-o no comando, usando a opção "uid=", como em: # shfsmount morimoto@192.168.0.1:/mnt/arquivos /mnt/servidor -o uid=tux Se quiser abrir as permissões de acesso para todos os usuários (o que não é uma boa idéia do ponto de vista da segurança mas, enfim...), use a opção "-o rmode=777". Se quiser que os demais usuários tenham apenas permissão de leitura, use "-o rmode=755". No caso de conexões instáveis ou ao acessar servidores remotos via internet, você pode adicionar a opção "-p" (minúsculo), que torna a conexão persistente, restabelecendo o acesso caso o servidor fique temporariamente indisponível. O "-p" torna o comportamento do shfsmount bastante interessante. Mesmo que o servidor remoto seja desligado, ele continua periodicamente tentando reabrir a conexão, durante dias, caso necessário. Quando o servidor fica novamente disponível ele abre um prompt gráfico pedindo a senha novamente e remonta a pasta. Outra vantagem do shfs é o desempenho. Por implementar um sistema de cache, que reduz o número de requisições enviadas ao servidor e maximiza o throughput, ele acaba obtendo taxas de transferência muito mais altas, sobretudo via rede local. Apenas para efeito de comparação, tendo um Sempron 2800+ como cliente, um Pentium 4 3.06 como servidor e uma rede de 100 megabits, obtenho, em média, 4.8 MB/s em transferências de arquivos grandes usando o "fish://" do Konqueror e pouco mais de 7.0 MB/s usando o shfs. Apesar do algoritmo de encriptação continuar o mesmo, o shfs consegue ser quase 50% mais rápido.
É possível fazer com que determinados diretórios sejam montados automaticamente durante o boot, via shfs. Basta colocar o comando de montagem em algum arquivo de inicialização. O problema neste caso é que ele vai abrir a tela de autenticação, pedindo a senha a cada boot, o que pode ser irritante, sobretudo se você precisar montar diretórios de vários servidores diferentes. Uma solução é usar a dica do SSH com login automático, usando um par de chaves sem passphrase. Neste caso, gere o par de chaves como root e adicione os comandos para montar os diretórios via shfs no arquivo "/etc/init.d/bootmisc.sh" ou "/etc/init.d/rc.local". Mesmo usando uma chave sem passphrase, a segurança ainda é bem melhor do que ao usar um protocolo sem encriptação, como o NFS ou SMB. Se preferir fazer tudo usando seu login de usuário (o que é melhor do ponto de vista da segurança), coloque os comandos em um script dentro da pasta ".kde/Autostart".
» Próximo: Criando túneis seguros Você está lendo o livro Redes e Servidores Linux 2ed. (publicado em 2006). Se se está em busca de um livro atualizado sobre servidores, leia o Servidores Linux, Guia Prático, que oferece informações atualizadas:
Autor: Carlos E. Morimoto
Páginas: 736 Formato: 23 x 16 cm Editora: GDH Press e Sul Editores ISBN: 978-85-99593-13-4 Lançado em: Agosto de 2008 » R$ 76,00 + frete (Preço nas livrarias: R$ 96) » Compre o seu Descrição: O livro Redes e Servidores Linux - Guia Prático foi nosso primeiro best-seller, vendendo um total de 8.000 exemplares em suas duas edições. O processo de atualização do livro acabou dando origem a dois livros separados. O primeiro deles é o livro Redes - Guia Prático, que aborda detalhes sobre a implantação e configuração de redes, abordando detalhes sobre os padrões de rede, configuração no Windows e Linux, configuração de redes wireless e outros temas. O livro Servidores Linux, Guia Prático é o segundo livro da série, que complementa o primeiro, oferecendo uma visão aprofundada sobre a configuração de servidores Linux. No livro você aprenderá a configurar tanto servidores de rede local quanto servidores dedicados, incluindo a configuração do Squid, Samba, Apache, SSH, LTSP, Postfix, Iptables, Bind, Quota e outros serviços. O livro inclui também capítulos sobre virtualização e sobre hardware para servidores, que complementam as informações abordadas nos demais. Veja também nossos livros Hardware, o Guia Definitivo, Redes, Guia Prático, Smartphones, Guia Prático e Linux, Guia Prático, nossos outros lançamentos. |
|