Brincando de Backup com rsync.



Documentos relacionados
Brincando de Backup com rsync.

OpenSSH

Manual comandos Básicos para instalar e desinstalar Firebird em Sistema operacional Linux

Conexão rápida entre dois computadores em uma plataforma Linux

Protocolos Telnet e SSH. Professor Leonardo Larback

- Wireless e NTP - 272

Linux Network Servers

Linux System Administration 455

Guia de Instalação e Configuração do Noosfero

Como é o Funcionamento do LTSP

Você pode testar se está tudo OK, abrindo um navegador no Debian Linux e acessando qualquer site.

Para a escolha de uma unidade para o backup de dados, deve-se levar em conta :

Como instalar o Ocomon passo a passo.

O primeiro passo é habilitar acesso externo através de web service a configuração é bem simples e não exige maiores explicações.

ENDEREÇOS DE REDE PRIVADOS até até até Kernel

Guia de usuário do portal de acesso SSH

MANUAL DE CONFIGURAÇÃO DO BACKUP

Lazarus pelo SVN Linux/Windows

Aula 27 - Agendamento de Tarefas (CRONTAB)

Procedimentos para Reinstalação do Sisloc

LINX POSTOS AUTOSYSTEM

Instalação FreeBSD Inicialização do CD/DVD! Ao colocar o CD/DVD como boot principal na BIOS, aparecerá a seguinte tela:

Como instalar Windows XP

Configuração de um servidor FTP. Campus Cachoeiro Curso Técnico em Informática

GUIA MUDANÇA E FORMATAÇÃO DE SERVIDOR - SLIM

Como atualizar os preços da ABCFarma.

Guia Rápido de Instalação Ilustrado

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

Instalando o WordPress em localhost

Compartilhando arquivos com o samba

Guia de instalação para ambiente de Desenvolvimento LINUX

Procedimentos para Instalação do Sisloc

Instalação do Linux Educacional 3.0 Bancadas SED

VIRTUAL PRIVATE NETWORKS

Manual de Instalação e Configuração do Primeiro Backup Versão PRO

3 SERVIÇOS IP. 3.1 Serviços IP e alguns aspectos de segurança

GUIA MUDANÇA E FORMATAÇÃO DE SERVIDOR - MILLENNIUM

Tutorial - Monitorando a Temperatura de Servidores Windows

Acesso Re sso R moto

Sysprep. O utilitário Sysprep pode ser usado em três contextos diferentes:

Guia de boas práticas para realização de Backup

Sistema Operacional Unidade 13 Servidor Samba. QI ESCOLAS E FACULDADES Curso Técnico em Informática

Procedimentos para Instalação do SISLOC

NetEye Guia de Instalação

INTRODUÇÃO: 1 - Conectando na sua conta

HOW TO. Instalação do Firewall 6.1 Software

Instalando e Configurando o Oracle XE

PHP Material de aula prof. Toninho (8º Ano)

UNIVERSIDADE FEDERAL DE GOIÁS CERCOMP (CENTRO DE RECURSOS COMPUTACIONAIS) TUTORIAL DE USO DO WEBMAIL - UFG

ROTEIRO PARA INSTALAÇÃO DO BITVISE, CONFIGURAÇÃO DE CHAVES SSH, DEFINIÇÃO DAS PORTAS PARA OS TÚNEIS SSH E CONFIGURAÇÃO DO THUNDERBIRD

Sistema de Controle de Cheques GOLD

ACESSANDO O GITHUB E COMPARTILHANDO PROJETOS

UM NOVO CONCEITO EM HOSPEDAGEM DE DOMÍNIO

Entendendo como funciona o NAT

Instalando o Internet Information Services no Windows XP

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH!

PÉGASUS (ETHERNET POCKET) STUDIO V1.00 MANUAL DE INSTALAÇÃO E OPERAÇÃO

1. Instalei o DutotecCAD normalmente no meu computador mas o ícone de inicialização do DutotecCAD não aparece.

No Fedora, instalamos os pacotes "mysql" e "mysql-server", usando o yum:

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

Formação de Administradores de Redes Linux LPI level 1

Manual Replicação Manual VPN

Quando o PC for iniciado aparecerá uma tela com: Pressione enter para iniciar do CD ou algo parecido,

MSN-Proxy v0.7 no Debian 5 (Atualizado)

SSH: Uma abordagem geral

Para começarmos as configurações, primeiramente vamos habilitar o DVR Veicular para o acesso. Clique em Menu e depois entre em Geral.

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco).

Permissões de compartilhamento e NTFS - Parte 1

1. Um servidor rodando Windows 7 (um computador onde o SIPAR ficará instalado e com os dados neste computador);

TUTORIAL PASSO A PASSO INSTALAÇÃO SERVIDOR DE SMS PARA MKAUTH

Para funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles:

#apt-get install make flex gcc gpp apache2 php5 php5-pgsql postgresql-8.4 libapache2-mod-php5 php5-gd php-net-socket postgres

Gerenciamento de Contatos

Na Figura a seguir apresento um exemplo de uma "mini-tabela" de roteamento:

SSE 3.0 Guia Rápido Parametrizando o SISTEMA DE SECRETARIA Nesta Edição Configurando a Conexão com o Banco de Dados

Configurando um Grupo Doméstico e Compartilhando arquivos no Windows 7

SAD Gestor Gerenciador de Backup

MDaemon GroupWare. Versão 1 Manual do Usuário. plugin para o Microsoft Outlook. Trabalhe em Equipe Usando o Outlook e o MDaemon

INSTRUÇÕES DE INSTALAÇÃO

Instalação do PHP no Linux

Instalando o Lazarus e outros sistemas de suporte. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Origin manual. 1.1 Cadastrando usuário : Get manager License ID. Quem deve se cadastrar: Como se cadastrar. origin manual. 1 de 14

Professor: Macêdo Firmino Disciplina: Redes de Computadores II

O sistema que completa sua empresa Roteiro de Instalação (rev ) Página 1

Tutorial de Atualização de Mikrotik

Omega Tecnologia Manual Omega Hosting

Neste tutorial apresentarei o serviço DFS Distributed File System. Veremos quais as vantagens

Logo abaixo temos a Barra de Menus que é onde podemos acessar todos os recursos do PHP Editor.

Gerenciar usuário, contas de grupo e sistema de arquivos

Unidade 7: Panes no Excel

Nesse artigo abordaremos os principais aspectos de instalação e uso do NTOP no Fedora Core 4.

CONFIGURAÇÃO Cobian Backup Programa gratuito e de qualidade para realizar seus backups automáticos

s editores de s Como configurar contas de nos principais Como configurar contas de s nos principais editores de s

Criando Banco de Dados, Tabelas e Campos através do HeidiSQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Manual de Instalação e Utilização do Pedido Eletrônico Gauchafarma

Tutorial para envio de comunicados e SMS

Sensor de temperatura Parte 5 Cleiton Bueno Preparando o ambiente do Banco de dados Mysql

Transcrição:

Brincando de Backup com rsync. Autoria de Thiago J. Ruiz (Neo) 25/09/2006 Última Atualização 06/10/2006 A necessidade de se manter um backup de todas as informações/dados dos clientes se faz cada vez mais presente para nós administradores de redes, existem milhares de ferramentas capazes de suprir essa necessidade por exemplo o Amanda, Bacula (umas com facilidade, outras não tão fáceis), nesse artigo vou comentar o rsync que é uma ferramenta simples e segura pois envolve Criptografia quando necessário através do SSH com uma chave DSA provendo um túnel criptografado para fazer a transmissão dos arquivos pela rede por exemplo, que é o que cobrirei neste artigo. Conteúdo: 1. Instalando rsync 2. Montando estrutura de backup 3. Criando chave de criptografia para tunelamento 4. Configurando SSH 5. Scripts para automatização do serviço 6. Agendando no Cron 7. Considerações e Referências 1. Instalando rsync# cd /usr/ports/net/rsync # make config Escolha a opção SSH, salve e saia. # make install clean Estes passos devem ser seguidos tanto no seu servidor que fará o backup quanto no seu servidor que será "backupeado". 2. Montando estrutura de backupneste ponto é necessário listarmos todas as pastas que temos que fazer backups e de quais servidores extrairemos esses arquivos e também para onde irão, vou usar como exemplo um servidor com o nome "ORIGEM" e de IP 192.168.1.254 de onde serão copiados os arquivos para o servidor chamado "DESTINO" com o IP 192.168.1.253 que será o nosso servidor de backup. Então iremos salvar a pasta /home do servidor ORIGEM. Para o servidor DESTINO na pasta /backups. Faremos que o pedido do backup parta do DESTINO. Então no DESTINO crie as pastas /backups e /backups/del DESTINO# mkdir /backups DESTINO# mkdir /backups/del 3. Criando chave de criptografia para tunelamentoneste passo devemos escolher qual usuário fará o backup, ele deve existem em ambos os servidores e também tem de ter permissões de leitura no mínimo nas pastas que serão backupeadas, optei por utilizar o usuário backup que tem permissões totais e também existe em ambos os servidores. Você irá me perguntar: Mas não vai ser inseguro? Eu vou responder: Não com criptografia alta e com o SSH bem configurado como mostrarei no próximo passo. Então vamos criar as chaves: DESTINO# ssh-keygen -b 2048 -t dsa Ele pedirá para que você insira uma frase (senha) para a chave dê enter apenas deixe-a em branco, senão não poderemos automatizar o serviço, pois toda vez que se for fazer o backup é necessário digitar esta senha (você vai acordar pra digitar a senha todo dia? creio que não) Este comando criará dentro do home do usuário backup (/home/backup/) uma pasta oculta chamada ".ssh" entre nela: DESTINO# cd ~/.ssh DESTINO# ls -la

-rw-r--r-- 1 backup wheel 1128 Jul 3 12:41 id_dsa.pub -rw-r--r-- 1 backup wheel 1128 Jul 3 12:41 id_dsa EM HIPÓTESE ALGUMA DEIXE ALGUÉM TER ACESSO A ESSAS CHAVES. DESTINO# cat id_dsa.pub Este comando retornará algo parecido com isso: ssh-dss A9AAB3NzaC1iGMqHpSCEliaouBun8FF9t8p... Copie esta saída para o home do usuário backup no servidor ORIGEM na pasta ".ssh" para o arquivo chamado authorized_keys: ORIGEM# vi ~/.ssh/authorized_keys Cole, salve e saia. Pronto geramos as chaves que farão a criptografia do túnel por onde os arquivos transitarão. 4. Configurando o SSHTanto no servidor ORIGEM quanto no servidor DESTINO é necessário agora configurar para que só ocorram logins utilizando chave de criptografia, sem elas nem aparecerá um prompt de senha, não rodaremos também um SSH aberto na porta padrão para o backup podemos fazer com que seja aberto outro daemon do SSH além do que utilizamos normalmente para manutenções nos servidores ouvindo numa rede específica e numa porta bem alta, dificultando ainda mais o acesso, em ambos os servidores: Primeiro editaremos o SSH de conexão normal (fazendo uma palinha na segurança) # cd /etc/ssh/ # vi sshd_config VersionAddendum RESTRICTED Port 2211 Protocol 2 ChallengeResponseAuthentication no PasswordAuthentication no PubkeyAuthentication yes AuthorizedKeysFile.ssh/authorized_keys UseDNS no :wq! Agora editaremos a configuração do arquivo de SSH por onde transitará o backup ORIGEM# vi /etc/ssh/sshd_backup_config VersionAddendum RESTRICTED Port 65222 Protocol 2 ListenAddress 192.168.1.254 PasswordAuthentication no ChallengeResponseAuthentication no AuthorizedKeysFile.ssh/authorized_keys AllowTcpForwarding no UseDNS no PidFile /var/run/sshd_backup.pid :wq! Agora precisamos fazer com que o sistema inicialize os dois SSH's no boot

ORIGEM# vi /etc/rc.conf sshd_enable="yes" sshd_backup_enable="yes" Se faz também necessário criar um script para que o sshd_backup "suba" segue abaixo exemplo: #!/bin/sh. /etc/rc.subr name="sshd_backup" rcvar=`set_rcvar` start_cmd="sshd_backup_start" stop_cmd="sshd_backup_stop" pid_file="/var/run/sshd_backup.pid" load_rc_config $name eval "${rcvar}=\${${rcvar}:-'no'}" sshd_backup_args=${sshd_backup_args:-"-f /etc/ssh/sshd_backup_config"} sshd_backup_start() { /usr/sbin/sshd $sshd_backup_args } sshd_backup_stop() { if [ -f $pid_file ]; then kill `cat /var/run/sshd_backup.pid` fi } run_rc_command "$1" Salve-o como sshd_backup.sh na pasta /usr/local/etc/rc.d/ com permissão de execução e "suba-o" ORIGEM# chmod 755 /usr/local/etc/rc.d/sshd_backup.sh ORIGEM# /usr/local/etc/rc.d/sshd_backup.sh start Pronto, agora temos dois SSH's rodando um ouvindo nas redes externas e a outra apenas em um IP interno, porém, todos só aceitam conexão mediante apresentação da chave de criptografia. Veja a saída do comando abaixo: ORIGEM# sockstat -4l grep sshd root sshd 4935 3 tcp4 192.168.1.254:65222 *:* root sshd 27271 4 tcp4 *:2211 *:* SSH's configurados e o do backup protegido na rede interna, vamos ao próximo passo. 5. Scripts para automatização do serviço.bom, já instalamos, dizemos quem será backupeado e onde será feito isto, e também preparamos o meio da comunicação entre essas pontas com um toque legal de segurança. Então agora vamos preparar os scripts que farão o serviço por nós toda noite, sem complicações pois como dizem o pessoal da lista FUG-BR "as coisas tendem a dar certo quando são simples" e eu concordo plenamente com eles.

Segue abaixo o script: #!/bin/sh ### Script de Backup ### Thiago J. Ruiz ### 20-09-06 # Programas rsync="/usr/local/bin/rsync -avzh --delete-during --backup" # A opção "--delete-during" é para deletar no destino os arquivos que foram deletados na origem. # A opção "--backup" serve para fazer um backup dos arquivos deletados na origem para uma outra # pasta # a qual deve ser especificada com a opção "--backup-dir" que você verá abaixo. # Para mais informações execute o comando "man rsync" no prompt ssh="/usr/bin/ssh -p 65222 -i /home/backup/.ssh/id_dsa" # O SSH que se conectará a origem especificando a porta e o arquivo da chave # Para mais informações execute o comando "man ssh" no prompt # Origem dos Dados origem="/home" # IP do servidor de ORIGEM host="192.168.1.254" # Destinos dos Dados destino="/backups/" # Arquivos que foram deletados da Origem irão para esta pasta pela opção "--backup-dir" origem_del="/backups/del/" # Fazendo BACKUP $rsync --backup-dir=$origem_del -e "$ssh" backup@$host:$origem $destino Salve-o em uma pasta de sua preferencia, no nosso exemplo será /var/adm/backup.sh Dê permissão de execução a ele: DESTINO# chmod 755 /var/adm/backup.sh O script faria a mesma coisa que digitar no prompt: rsync -avhz --delete-during --backup --backup-dir=/backups/del/ -e "ssh -p 65222 -i /home/backup/.ssh/id_dsa" backup@192.168.1.254:/home /backups Que chamaria o rsync para que ele se conecta-se ao servidor ORIGEM por SSH usando a chave de criptografada com o usuário backup dizendo que irá fazer backup da pasta /home e tudo que foi deletado desde o ultimo backup também será deletado no DESTINO porém ficara uma cópia na pasta /backups/del/ 6. Agendando no CronE para facilitar um pouquinho mais nossas noites de sono iremos usar o Crontab para agendar a execução do script todo dia a meia-noite: DESTINO# crontab -e

Este comando abre o editor das tarefas que devem ser executadas Insira a seguinte linha no arquivo: 00 00 * * * /var/adm/backup.sh Salve e saia. Pronto temos um script que fará o backup para nós todo dia a meia-noite. 7. Considerações e Referências Espero dar uma base para que alguem que busca como implementar um backup em seu sistema com este artigo, você pode adaptá-lo fácilmente ao seu ambiente, pode trocar o usuário, basta que este usuário tenha permissão sobre os arquivos que serão backupeados. Tive como Referência: rsync: http://samba.anu.edu.au/rsync/documentation.html # man rsync SSH: # man ssh http://www.networknewz.com/networknewz-10-20030707authenticatingbypublickeyopenssh.html Crontab: http://focalinux.cipsga.org.br/guia/intermediario/ch-manut.htm#s-manut-cron-formato Artigo retirado de: http://thiagoruiz.blogspot.com/2006/09/brincando-de-backup-com-rsync.html Até a próxima. []'z Thiago J. Ruiz (Neo) http://thiagoruiz.blogspot.com