vLite 1.1.1 Comodo Firewall Pro 3.0.16.295

Cópias seguras em Linux

Criado por: Pedro Simões em 6 de Fevereiro de 2008 Deixar um comentário

tux-wicked.jpgUm método usado para acesso e transmissão de dados de forma segura entre servidores linux é o protocolo SSH.

Este protocolo é basicamente uma versão [muito] melhorada do telnet, tendo sido dado enfoque à segurança da transmissão dos dados entre o ponto de acesso e o servidor remoto.

De forma muito resumida, este protocolo explica-se do seguinte modo. A ligação entre o ponto de acesso (PC de onde acedemos via SSH) e o servidor remoto (Servidor onde pretendemos aceder) é estabelecida e em cima desta é criado um túnel seguro, onde os dados passam encriptados, garantindo assim a confidencialidade e segurança dos dados.

Na maioria dos casos o SSH é usado para acesso remoto a servidores, dando-nos a possibilidade de interagir com a máquina remota, como se estivéssemos em frente ao monitor/teclado desta. No entanto, e naturalmente, sem termos a parte gráfica do sistema operativo.


Outro modo de utilização do SSH é a possibilidade de efectuarmos ligações de FTP em modo seguro, o que se chama SCP (Secure Copy). Mais uma vez é estabelecido um túnel seguro entre as duas “pontas” da ligação e os dados passam cifrados.

O que vamos explicar hoje é o modo como podem fazer estas cópias de ficheiros em modo seguro, entre 2 PC’s que têm como sistema operativo Linux. Caso pretendam usar esta funcionalidade em Windows, usando o modo gráfico podem usar o WinSCP ou o Filezila. Em modo de linha de comando em Windows (DOS) podem usar o Putty PSCP. Os comandos apresentados.

O comando é extremamente simples e é composto do seguinte elementos:

scp [parametros] [origem] [destino]

scp1.jpg

De salientar que tanto podem estar no servidor de origem como no servidor de destino para iniciar o processo de cópia.

Assim, e caso tenham acedido ao servidor de origem, o comando deve ser o seguinte:

scp ficheiroFonte utilizador@host:directorio/ficheiroAlvo

Caso estejam no servidor de destino o comando é o seguinte:

scp utilizador@host:directorio/FicheiroFonte FicheiroAlvo

Exemplo prático:

scp o_post_do_ano.txt root@pplware.com:/posts/

Este comando copia o ficheiro “o_post_do_ano.txt” para a pasta /posts/ (localizada na raiz do disco) do servidor pplware.com (usando o utilizador root)

scp2.jpg

scp root@pplware.com:/posts/o_post_do_ano.txt .

Este comando copia o ficheiro “o_post_do_ano.txt” localizado na pasta /posts/ (localizada na raiz do disco) do servidor pplware.com (usando o utilizador root) para a localização onde o comando foi invocado no servidor onde nos encontramos.

scp3.jpg

Só falta mesmo mostrar-vos o comando que nos permite copiar ficheiros entre 2 servidores, estando nos num servidor intermédio:

scp root@servidor1.pplware.com:/posts/o_post_do_ano.txt
root@servidor2.pplware.com:/posts/

Existem inúmeros parâmetros que podem ser incluídos, mas salientamos o seguinte devido à sua utilidade.

Esse parâmetro (ou flag) é o -r, que nos permite copiar todos os ficheiros e directorias que se encontram dentro da directoria em que nos encontramos ou que pretendemos copiar.

Exemplo:

scp -r /posts root@pplware.com:/posts/

Apenas de notar que o scp não comunica ao utilizador que vai sobrepor o ficheiro e em caso de já existir um ficheiro igual no local para onde estamos a copiar este vai ser “esmagado”.


Arquivado na categoria: Linux

8 comentários a “Cópias seguras em Linux”

  1. mushi diz:

    cp ficheiroFonte utilizador@host:diretório/ficheiroAlvo

    directório - leva um C antes do T

    apaguem depois de correccao

  2. zedex diz:

    boas =D

    uma aplicaçao q permite uma utilizaçao deste protocoli em ambiente windows é o “putty” (freeware) muito bom mesmo =D

    cumps!

    BOm fim de semana :DD

  3. nfu diz:

    Viva. Não querendo “tomar conta” deste post, queria apenas informar (uma vez que tem mesmo MUITO a ver com segurança), que o TrueCrypt (www.truecrypt.org) teve um gigantesco update para a versao 5.0

    Entre as novidades, temos:

    Capacidade que encriptar a própria drive de arranque do sistema operativo (Windows, por exemplo), permitindo encriptar a TOTALIDADE da informação. Esta é a mais recente alteração que toda a gente pretendia.

    Velocidade de (des)/encriptação muito melhorada, em Windows.

    Versão MAC OS X

    Melhoramentos importantes na versão Linux.

    Abraços.

  4. Rui Melo diz:

    e como fazer para usar o scp entre duas maquinas domesticas ligadas à net pelos ISP’s nacionais? ha o problema de saber os hostname, das portas estarem abertas, etc… alguem à vontade para falar disso?

  5. Pedro Silva diz:

    Bem, não querendo ser crítico, não se diz encriptar ou desencriptar, mas sim cifrar ou decifrar.

    Quanto ao pormenor de o SSH não permitir acesso a aplicações gráficas está errado.

    Se o servidor a aceder for um Linux, podemos executar aplicações gráficas desse servidor. Basta, para isso, fazer o forwarding da componente gráfica para onde nós quisermos. Claro que o mais óbvio é para a nossa máquina.

    Para isso basta executar
    ssh -X username@host

    Assim, o ssh faz forwarding do X Window para o localhost:0, onde localhost é a nossa máquina e o 0 a instância do servidor X Window.

    Se nós estivermos a aceder a partir de um sistema operativo, e claro em ambiente gráfico, já com servidor X Window, como o GNU/Linux, então não precisamos de instalar mais nenhum software adicional. A aplicação irá correr quase como se fosse local. Um pequeno atraso de vez em quando será normal.

    Se não for o GNU/Linux mas outro, como por exemplo MS Windows, então podemos instalar um software que é um “port” do servidor X Window para MS Windos, cujo nome é Xming e é gratuito. Podemos encontrar este software em http://sourceforge.net/projects/xming

    Penso que para Mac OS X também existe um “port” mas este já não é gratuito.

    Cumps

    Pedro

  6. Pedro Silva diz:

    Só mais um pormenor.

    Em continuação do post anterior, se estivermos em MS Windows podemos usar o puTTY

    A opção de X11 Forwarding econtra-se em Connections->SSH->Tunnels e activem a Checkbox Enable X11 Forwarding.

    Além deste tipo de túnel, o ssh também permite criar túneis entre quaisquer portas do servidor e a nossa máquina ( ou outra máquina qualquer), ou seja, fazer Port Forwarding.

    É tudo.

    cumps

    Pedro.

  7. Miguel diz:

    @ Rui Melo

    Não interessa qual o ISP que serve as máquinas, desde que sejam acessíveis através de um IP público.

    Há duas situações possíveis:

    A) A máquina servidor reside numa LAN e tem um endereço privado: é necessário configurar uma directiva NAT estática no router que serve essa LAN (assumindo que este se liga directamente à Internet) para que todos os pedidos do exterior seja encaminhados para o IP:porto da máquina servidor. Do ponto de vista dos clientes, é como se o servidor fosse o próprio router!

    B) A máquina servidor tem um endereço IP público: basta ter o OpenSSH (ou equivalente) a correr num determinado porto.

    Em ambas as situações os clientes apontam para o IP público. Ainda a respeito dos clientes, tanto faz se estes estão ou não numa LAN, já que o router deverá dinamicamente tratar de criar uma entrada NAT que acomode a comunicação.

    Quanto à necessidade de saber o IP, a menos que tenha um IP fixo, necessitará de um serviço DNS dinâmico. A grande maioria dos routers domésticos têm essa possibilidade. Aqui ficam dois: http://www.no-ip.com, http://www.dyndns.com

  8. Helder diz:

    Mais um adepto do Putty ;)

    Empregos Aveiro

Deixe o seu comentário

Aviso: Todo e qualquer texto publicado na internet através deste sistema não reflete, necessariamente, a opinião deste weblog ou do(s) seu(s) autor(es). Os comentários publicados através deste sistema são de exclusiva e integral responsabilidade e autoria dos leitores que dele fizerem uso. O autor deste weblog reserva-se, desde já, o direito de excluir comentários e textos que julgar ofensivos, difamatórios, caluniosos, preconceituosos ou de alguma forma prejudiciais a terceiros. Textos de caráter promocional ou inseridos no sistema sem a devida identificação de seu autor (nome completo e endereço válido de email) também poderão ser excluídos.