Arquivo da tag: ssh

Como sincronizar arquivos de backup do VPS para o Windows usando o cwRsync

Tutorial de como sincronizar os backups gerados pelo ISPConfig no VPS para o desktop Windows automaticamente usando o Agendador de Tarefas. Para isso usaremos alguns comandos não documentados e o cwRsync, que é muito parecido com o rsync para Linux.

Neste artigo mostrarei como baixar os backups dos sites mas a mesma dica pode ser usada para qualquer arquivo ou diretório no servidor.

Sincronizando arquivos de backup do VPS para o Windows usando cwRsync Baixando e instalando o cwRsync

cwRsync é uma implementação do rsync para Linux compilado para Windows com as DLLs do Cygwin. A ferramenta é gratuita para a versão linha de comando.

1a ⇒ Crie uma pasta no Windows que conterá os arquivos do cwRsync e os backups que baixaremos do servidor. Sugestão: crie a pasta na raiz do sistema ( C:\rsync )

C:\rsync

1b ⇒ Baixe o cwRsync para a pasta criada acima. Link para o download: https://www.itefix.net/content/cwrsync-free-edition

O arquivo estará compactado, descompacte o conteúdo e copie os arquivos de dentro da pasta cwRsync_5.5.0_x86_Free para C:\rsync (em C:\rsync deverá conter a pasta bin e 3 outros arquivos).

1c ⇒ Prepare o sistema para conseguir executar o rsync de qualquer local. Dentro da pasta C:\rsync há um arquivo chamado cwrsync.cmd, clique duas vezes nele para executar.

Em seguida inclua o caminho dos binários rsync nas variáveis de sistema do Windows: Clique em Computador → Configurações Avançadas do Sistema → Variáveis de Ambiente, no segundo quadro “Variáveis do Sistema” clique duas vezes  na variável “Path“. Abrirá uma janela de edição com vários caminhos já definidos pelo Windows, no final da linha adicione o cwrsync separando por um ponto e vírgula conforme mostrado abaixo:

;C:\rsync\bin\

*Após modificar o path confirme todas as telas de propriedade abertas.

Configurando o SSH

No pacote do cwRsync além do comando rsync há também o ssh e o ssh-keygen, o qual usaremos para criar um par de chaves que permitirá acessar o servidor Linux sem necessidade de digitar a senha.

2a ⇒ Abra o prompt de comando do Windows (MS-DOS). Clique em “Iniciar” e na caixa de pesquisa digite “cmd“, na lista selecione cmd.exe para abrir o prompt.

2b ⇒ Acesse o diretório do usuário que já foi criado na instalação do cwRsync e crie um par de chaves:

cd C:\rsync\home\%USERNAME%\.ssh

ssh-keygen

* Pressione ENTER nas perguntas da tela. Será criado um par de chaves pública e privada na pasta .ssh. Usaremos o conteúdo do arquivo id_rsa.pub no próximo passo.

2c ⇒ Acesse o servidor Linux com as credenciais de superusuário root. Dentro do diretório  /root/.ssh há um arquivo chamado authorized_keys. Edite-o e cole o conteúdo do arquivo id_rsa.pub gerado no Windows.

2d ⇒ Corrigindo as permissões das chaves no Windows: Ao tentarmos executar o cwRsync uma mensagem de alerta será exibida dizendo que o arquivo de chaves privadas tem permissões erradas. Mensagem de alerta:

Permission 0770 are too open
This private key will be ignored
Load key bad permissions

Para acertar isso usaremos um comando não documentado do Windows chamado cacls.exe (esse comando permite alterar as permissões de arquivos pela linha de comando). Dentro da pasta C:\rsync\home\%USERNAME%\.ssh execute os seguintes comandos (prompt do MS-DOS):

cd C:\rsync\home\%USERNAME%\.ssh

cacls id_rsa /P Todos:N

cacls id_rsa /P %USERNAME%:F

2e ⇒ Teste o cwRsync: Crie uma pasta teste e use o rsync conforme demonstrado abaixo:

mkdir teste

cd teste

rsync -avz -e ssh [email protected]_DO_SERVIDOR:/var/log/auth.log .

* Será necessário confirmar a exceção de chave quando usar o comando pela primeira vez.

* No exemplo acima fizemos uma cópia do arquivo auth.log do Linux para o Windows. Note o “ponto” no final do comando rsync.

Acionando a opção de backup por site no ISPConfig 

No tutorial de como agendar backups para o ADrive já mostrei como ativar os backups de sites configurados no ISPConfig. Aquela é uma opção bem útil pois faz backup diário de todos os arquivos do site e do banco de dados compactando tudo em 2 arquivos. Segue abaixo um resumo de como usar a funcionalidade:

3a ⇒ Em cada site configurado no ISPConfig existe uma aba “Backup” que está com a função desativada por padrão. Para ativar  por site acesse:

ISPConfig → Sites → <Selecione um site na lista> → aba Backup 

» Intervalo de Backup: <- Daily (diário)

» Número de cópias: <- 1 (número de cópias do site que deseja manter no ISPConfig. Como faremos o download diariamente para o Windows não há necessidade de manter várias cópias no servidor, lembre-se que dependendo do tamanho do site isso poderá ocupar muito espaço)

» Exclude Directories: <- bin/*,etc/*,lib/*,lib64/*,log/*,tmp/*,usr/*,var/*,web/wp-content/managewp/backups/*,web/wp-content/updraft/*.zip,web/wp-content/updraft/*.gz

*Na lista de diretórios a excluir do backup adicionei aqueles gerados pelo ManageWP e pelo UpdraftPlus, mesmo que você não use esses plugins pode configurar conforme mostrado.

3b ⇒ Salve as opções acima e repita o procedimento 3a para todos os sites que deseja ativar o backup automático. Os backups serão gerados a partir da madrugada do dia seguinte, e o diretório onde os arquivos serão gravados no servidor será /var/backup/ (note que para cada site o ISPConfig grava um subdiretório com o nome do usuário de controle)

Configurando o Agendador de Tarefas do Windows 

O último passo deste tutorial será criar uma rotina no Agendador de Tarefas do Windows que baixará automaticamente os backups do servidor. *Para termos mais controle sobre os comandos criaremos um arquivo de script .bat dentro da pasta C:\rsync\home\%USERNAME%

4a ⇒ Crie uma pasta chamada C:\rsync\home\%USERNAME%\backups que abrigará os backups baixados pelo script.

4b ⇒ Crie um arquivo chamado rsyncvps.bat dentro da pasta acima e cole o seguinte conteúdo:

* Substitua as partes em vermelho pelas informações do seu desktop/servidor

* Note que usaremos o comando não documentado forfiles do Windows para manter somente 7 conjuntos de backup no desktop, ajuste se achar necessário

* Quando executamos o comando rsync para Windows, que usa as bibliotecas do Cygwin, o caminho de destino deverá ser escrito conforme mostrado abaixo e com barra normal à direita (no Cygwin o drive C:\ é denominado /cygdrive/c/)

@echo off

REM Mensagens de cabecalho
echo(
echo TRANSFERENCIA DE BACKUP 
echo Copiando arquivos do servidor, aguarde..
echo(

REM Grava a hora inicial:
set STARTTIME=%TIME%
echo Backup iniciado as: %STARTTIME%
for /F "tokens=1-4 delims=:.," %%a in ("%time%") do (
 set /A "start=(((%%a*60)+1%%b %% 100)*60+1%%c %% 100)*100+1%%d %% 100"
)

REM Baixa o backup incremental e deleta backups antigos
rsync -avz -e ssh [email protected]_DO_SERVIDOR:/var/backup/ /cygdrive/c/rsync/home/%USERNAME%/backups/.
echo(
echo Backup sincronizado. Deletando os arquivos mais antigos que 7 dias..
REM Durante os primeiros 7 dias de sincronizacao uma mensagem sera exibida dizendo que nehum arquivo foi encontrado. Isso deve-se ao fato de que o comando forfiles nao encontrou arquivos antigos para excluir.
REM O parametro "D -7" define que somente os arquivos dos ultimos 7 dias devem ser mantidos.
@echo on
forfiles /P "C:\rsync\home\%USERNAME%\backups" /S /M *.* /D -7 /C "cmd /c del @path"

@echo off
REM Grava a hora do termino:
set ENDTIME=%TIME%
for /F "tokens=1-4 delims=:.," %%a in ("%time%") do (
 set /A "end=(((%%a*60)+1%%b %% 100)*60+1%%c %% 100)*100+1%%d %% 100"
)

REM Calcula o tempo decorrido:
set /A elapsed=end-start
set /A hh=elapsed/(60*60*100), rest=elapsed%%(60*60*100), mm=rest/(60*100), rest%%=60*100, ss=rest/100, cc=rest%%100
if %mm% lss 10 set mm=0%mm%
if %ss% lss 10 set ss=0%ss%
if %cc% lss 10 set cc=0%cc%

REM Exibe o tempo decorrido:
echo(
echo HORA DE INICIO : %STARTTIME%
echo HORA DE TERMINO: %ENDTIME%
echo TEMPO DECORRIDO: %hh%hr %mm%min e %ss%seg

REM Exibe a mensagem final e faz uma pausa para mostrar que executou o script:
echo(
echo Backup Finalizado!
pause
exit

continuar lendo..

Gerenciamento de Servidores Cloud com atendimento e consultoria em português. Planos mensais com os melhores preços do mercado.
Envie um email para [email protected] e saiba mais!

Configurando o Zoho Mail como SMTP Relay no Postfix via Stunnel

Zoho Mail é um serviço de emails corporativos gratuito que permite enviar e receber mensagens em domínios customizados. Publicamos recentemente um tutorial de como cadastrar-se e usar a ferramenta, clique aqui para ler o artigo.

A conta gratuita permite adicionar um domínio e ter até 10 caixas de email com 5Gb cada, e tem uma limitação de até 200 emails diários por domínio (para domínios com menos de 4 usuários ativos o limite é de 50 emails por usuário/dia), o que é mais do que suficiente para a maioria dos sites poderem comunicar-se com seus usuários/clientes.

O painel de acesso deles é fácil de operar e está parcialmente traduzido para o português. E a URL de acesso ao painel pode ser alterada para domínios personalizados, ao invés de mail.zoho.com. Clique aqui e veja como fazer.

Porém uma questão é como fazer para enviar emails através de scripts PHP ou formulários de contato do WordPress, uma vez que você teria que estar logado no painel do Zoho para fazer envios. Neste caso você pode configurar a função mail() do PHP para usar um SMTP externo, ou no caso do WordPress, usar um plugin que envia por SMTP externo, clique aqui e veja como instalar e usar o plugin.

Neste tutorial mostrarei uma outra alternativa, configurando o Zoho Mail como SMTP Relay externo, e de forma seletiva, configurar contas de email para usar o serviço.

DICA: Após configurar e entender este tutorial você poderá extender as funcionalidades de uso dos serviços de email no servidor VPS. Por exemplo, pode-se desativar as entradas MX do Zoho na tabela DNS e adicionar um registro MX do próprio servidor configurando o RoundCube para receber os emails, utilizando o Zoho via SMTP Relay para enviar os emails (pode-se inclusive enviar mensagens de um cliente de email para o servidor que elas serão encaminhadas pela conta do Zoho). Parece meio confuso num primeiro momento mas será mais fácil de entender após tudo configurado.

Instalando o Stunnel 4:

* Este tutorial foi testado em nosso servidor Debian 7 com ISPConfig 3 e Postfix, clique aqui e veja como instalar.

Instale e configure o Stunnel:

Baixe os pacotes com apt-get (na pergunta se deseja continuar tecle ENTER)

apt-get install stunnel

Configure os arquivos.

Edite o arquivo /etc/default/stunnel4 e altere a linha 6 conforme abaixo:

# Change to one to enable stunnel automatic startup

ENABLED=1

Crie e edite o arquivo /etc/stunnel/stunnel.conf (pode-se editá-lo com o Notepad++ como mostramos neste tutorial), adicionando as seguintes linhas de código:

> touch /etc/stunnel/stunnel.conf

pid = /var/run/stunnel.pid
[smtp-tls-wrapper]
client=yes
accept=11125
connect = smtp.zoho.com:465

* No código acima confguramos a porta 11125 para aceitar conexões repassando as requisições para a porta 465 (SSL) do Zoho, criando um túnel criptografado e enviando o email como se estivéssemos no servidor do Zoho Mail.

Libere as portas no firewall do ISPConfig. Se você seguiu nosso tutorial de segurança saberá onde encontrar o Firewall, ou acesse “Sistema / Firewall / Adicionar registro de firewall“, na lista de portas TCP liberadas adicione a 465 e a 11125 desta forma:

20,21,22,25,53,80,110,143,443,465,587,993,995,3306,8080,8081,10000,11125

Reinicie o serviço Stunnel:

/etc/init.d/stunnel4 restart

Instale o cliente Telnet no servidor e teste se o túnel SSL está funcionando:

> apt-get install telnet

> telnet localhost 11125

* Se a última linha da resposta for “220 mx.zohomail.com SMTP Server ready” então a conexão está ok. Para sair do Telnet pressione as teclas “CTRL + ]” e em seguida digite quit e ENTER.

Configure o Postfix para enviar os emails por SMTP Relay:

* Já configuramos um serviço de SMTP Relay nesse tutorial, o que mostraremos abaixo é um resumo definido para este artigo somente.

Edite o arquivo /etc/postfix/main.cf e modifique/adicione as seguintes linhas (os números das linhas são referentes ao arquivo original, se você alterou o arquivo por algum motivo encontre-as):

# Linha 23:

smtpd_use_tls = yes

continuar lendo..

Gerenciamento de Servidores Cloud com atendimento e consultoria em português. Planos mensais com os melhores preços do mercado.
Envie um email para [email protected] e saiba mais!

Linux: Acessando a Interface Gráfica do VPS pelo VNC

Neste tutorial mostraremos todos os passos para instalar e configurar um servidor VNC, que permite acessar a interface gráfica (Desktop) em um servidor VPS Linux.

As configurações apresentadas foram testadas em nosso servidor Ubuntu 14.04 Utopic Unicorn mas podem ser aplicadas em outras distribuições Linux, como por exemplo o servidor Debian com ISPConfig 3 que configuramos anteriormente.

continuar lendo..

Gerenciamento de Servidores Cloud com atendimento e consultoria em português. Planos mensais com os melhores preços do mercado.
Envie um email para [email protected] e saiba mais!

Tutorial VPS: Debian Wheezy e ISPConfig 3 – Parte 2

Prosseguiremos nosso Tutorial VPS da DigitalOcean com Debian 7 e ISPConfig instalando o painel de controle.

Preparando o servidor para a instalação:

* Na Parte 1 instalamos o Debian e configuramos a Zona DNS, mas antes de baixar e instalar o ISPConfig será necessário executar os seguintes passos para uma instalação sem problemas:

1.Acesse o sistema via SSH (para facilitar abra o explorador de arquivos pelo WinSCP conforme apresentamos neste tutorial).

2.Edite o arquivo /etc/apt/sources.list e adicione non-free ao final das 2 linhas (isso irá prevenir erros na instalação). Salve o arquivo após editar.

deb http://mirrors.digitalocean.com/debian wheezy main non-free
deb http://security.debian.org/ wheezy/updates main non-free

3.Abra o terminal de comandos no shell SSH (se você está seguindo nossas dicas tecle CTRL + P no WinSCP). *Note que neste tutorial não usaremos o comando “sudo” para os ações no terminal, executaremos as configurações principais sempre como “root“.

4.Execute os seguintes comandos para atualizar a lista de pacotes do Debian:

> apt-get update
> apt-get upgrade

* * Será exibida uma mensagem: “After this operation, xxx kB of additional disk space will be used. Do you want to continue? [Y/n]”. *A partir de agora sempre que houver a pergunta sobre usar espaço em disco adicional tecle ENTER.

5.Por padrão o Debian usa o shell de comando Dash, mas o ISPConfig recomenda o Bash para evitar problemas na instalação. Vamos trocar o shell com o comando:

> dpkg-reconfigure dash

* * Na tela exibida selecione <No> com as setas do teclado, em seguida tecle ENTER.  Após isso note que o link simbólico /bin/sh aponta para bash.

6.E por último vamos instalar o sincronizador do relógio do sistema e acertar o Fuso Horário:

> apt-get install ntp ntpdate
> dpkg-reconfigure tzdata

continuar lendo..

Gerenciamento de Servidores Cloud com atendimento e consultoria em português. Planos mensais com os melhores preços do mercado.
Envie um email para [email protected] e saiba mais!

Tutorial VPS: Debian Wheezy e ISPConfig 3 – Parte 1

Aprenda como instalar e gerenciar um servidor VPS na DigitalOcean usando Linux Debian 7.0 “Wheezy” e painel de controle ISPConfig 3 em Português BR.

Em nosso tutorial anterior “Configurando um VPS para Hospedagem de Site” apresentamos uma maneira simples e barata de hospedar um site WordPress num VPS de 5 dólares por mês. Neste tutorial vamos mostrar uma forma muito mais eficiente de hospedar vários sites, domínios e contas de email, usando um painel de controle open source com opção de transformá-lo em uma revenda de sites no mesmo VPS de 5 dólares.

continuar lendo..

Gerenciamento de Servidores Cloud com atendimento e consultoria em português. Planos mensais com os melhores preços do mercado.
Envie um email para [email protected] e saiba mais!

Configurando um VPS para hospedagem de site – Parte 6: Instalando o LEMP

O título acima refere-se à instalação do LEMP (Linux + Nginx + MySQL + PHP), mas na realidade já instalamos o Linux na Parte 3. Seguiremos com a instalação do Nginx, MySQL e PHP.

* Nessa parte do tutorial será necessário o uso do WinSCP + PuTTY (para ver como usar clique aqui). A janela do WinSCP ficará aberta como root para termos permissão de modificar os arquivos, e a de console aberta com o usuário que criaremos abaixo.

continuar lendo..

Gerenciamento de Servidores Cloud com atendimento e consultoria em português. Planos mensais com os melhores preços do mercado.
Envie um email para [email protected] e saiba mais!

Configurando um VPS para hospedagem de site – Parte 4: Painel de Controle

No painel de controle da DigitalOcean podemos configurar o DNS, gerenciar os Droplets, resetar a senha do superusuário, visualizar os gráficos de uso e alterar outras opções da conta.

Após criarmos o primeiro Droplet (Parte 3 deste tutorial), já podemos visualizar as informações do mesmo e verificar outras configurações essenciais da nossa conta.

continuar lendo..

Gerenciamento de Servidores Cloud com atendimento e consultoria em português. Planos mensais com os melhores preços do mercado.
Envie um email para [email protected] e saiba mais!

Configurando um VPS para hospedagem de site – Parte 3: Instalando o Linux

Para o nosso servidor funcionar corretamente vamos instalar e configurar o Linux 32 bits, e para comemorar os 10 anos do Ubuntu vamos usar a última versão estável do sistema (Ubuntu 14.10 – Utopic Unicorn).

* No painel de instalação da DigitalOcean pode-se optar por instalar o LEMP ou WordPress automaticamente. O problema é que em ambos os casos instala o Ubuntu 64 bits, e como nosso servidor terá recursos reduzidos para economizar, vamos configurar tudo manualmente. Além disso a instalação automática de WordPress usa o Apache, e nós queremos o Nginx que é muito mais ágil e suporta mais acessos por minuto com recursos melhorados em termos de servidor web.

continuar lendo..

Gerenciamento de Servidores Cloud com atendimento e consultoria em português. Planos mensais com os melhores preços do mercado.
Envie um email para [email protected] e saiba mais!

Como editar arquivos Linux remotos usando WinSCP e Notepad++

Aprenda como editar arquivos no seu provedor de hospedagens usando o WinSCP e o Notepad++.

Nos próximos tutoriais iremos mostrar como configurar um servidor VPS para hospedar um site/blog WordPress. E para facilitar a edição dos arquivos remotos usaremos estas ferramentas gratuitas.

continuar lendo..

Gerenciamento de Servidores Cloud com atendimento e consultoria em português. Planos mensais com os melhores preços do mercado.
Envie um email para [email protected] e saiba mais!