Arquivo da tag: linux

Mumble Server: Como instalar o servidor VOIP Open Source

Neste tutorial mostrarei como instalar e configurar o servidor VOIP Mumble (Murmur), uma ferramenta Open Source similar ao TeamSpeak e Ventrilo.

Servidores VOIP podem ser muito úteis, apesar de serem mais populares entre jogadores de video game online, pois funcionam como se você tivesse um Skype com servidor próprio. E o Mumble, por causa da baixa latência e boa qualidade do som, é uma das melhores opções para essa finalidade.

* Os passos deste artigo podem ser executados em um servidor em produção, mas dependendo da quantidade de usuários é aconselhável mantê-lo em um VPS separado.

Mumble: Servidor VOIP Open Source

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

Instalação

Acesse o terminal SSH do servidor como superusuário root e execute os seguintes comandos:

apt-get update
apt-get install mumble-server (tecle ENTER na pergunta)

Reconfigure o pacote, execute o comando abaixo e responda conforme o exemplo:

dpkg-reconfigure mumble-server

» Autostart mumble-server on server boot?<-- Yes

» Allow mumble-server to use higher priority?<-- Yes (para melhor latência)

» Password to set on SuperUser account:<-- Pr2qwtd83e6y (pode substituir por outra senha segura se desejar, esta será a senha principal do murmur)

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!

*Regarding english support please contact me by email or post a comment using the Disqus system. I do offer monthly support and custom server deploy. Now accepting Paypal and Bitcoin!

Tutorial Debian 8 x64 com ISPConfig e NginX: Configurações Adicionais

Após a instalação e configuração do servidor e dos sites existem algumas tarefas diárias que devemos executar para monitorar os arquivos e os serviços.

Neste artigo adicional aprenda como direcionar os emails do root para uma conta válida pois não é possível fazer acesso POP na conta do root. E veremos ainda como criar alguns scripts que ajudam na administração.

Segurança: Scripts e Configurações Adicionais Redirecione os emails do root para outra conta

Isso é importante pois alguns emails administrativos do servidor são enviados somente para o superusuário root na máquina local. Por exemplo: se alguém cadastrar um segundo usuário admin no ISPConfig um email será enviado ao root.

1a ⇒ Acesse o terminal SSH como root

1b ⇒ Edite o arquivo /root/.forward (para visualizar arquivos com um ponto no início “arquivos ocultos” digite o comando ls -al). Adicione a seguinte linha:

* Substitua o email abaixo por outro válido e que exista

[email protected]

1c ⇒ Método Alternativo: Caso o primeiro método não seja possível ou não funcione em seu sistema use esta segunda opção. Edite o arquivo /etc/aliases e no final adicione uma nova linha (DICA: direcione para outra conta interna no próprio servidor como a contato de algum site, caso o SMTP esteja bloqueado por algum motivo mesmo assim você poderá recuperar os emails via POP):

root: [email protected]

Após salvar o arquivo digite o comando:

newaliases

Script para monitorar alteração nos arquivos dos sites

Alguns leitores reportaram recentemente que tiveram os sites hackeados, não pelo motivo de terem invadido o servidor mas somente um site isolado (via code injection ou senha fraca cadastrada para o site). Após analisar os ataques nota-se que o invasor instala arquivos adicionais que enviam spam ou atacam outros sites a partir do VPS.

Veja abaixo como criar um script simples de monitoramento, muito útil para detectar infecções por malware e outras pragas.

2a ⇒ Crie um arquivo de script no diretório /root mudando as permissões para que somente o root consiga alterar e executar:

touch /root/site-monitor

chmod 700 /root/site-monitor

2b ⇒ Edite o arquivo e cole o seguinte conteúdo, substituindo os textos em vermelho por informações do seu servidor e pelos seus emails:

* Note que configurei o comando find para encontrar arquivos modificados nos últimos 60 minutos pois criaremos uma tarefa agendada para executar a cada hora

* Se nenhuma alteração for encontrada o email não será enviado

* Cole os comandos abaixo no arquivo de script sem alterar espaçamentos ou formatação, isso é importante pois usaremos um bloco de código here docs na configuração

* O site fatorbinario.com abaixo representado está em um caminho definido por padrão em instalações com ISPConfig. Para outros CPs ou sistemas veja qual o caminho definido para o site. (Pode-se ainda usar coringas de shell)

#!/bin/bash
# Monitora o site e verifica os arquivos alterados na ultima hora

SITEMONRESULTS=$(find /var/www/fatorbinario.com/web -type f -mmin -60 -exec ls -ls {} \;)
if [ ! -z "${SITEMONRESULTS}" ];
then
cat <<EOF | /usr/sbin/sendmail -t
To: [email protected]
Subject: Arquivos do site alterados na ultima hora
From: [email protected]

Os seguintes arquivos do site foram alterados:

$SITEMONRESULTS

EOF
fi

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!

*Regarding english support please contact me by email or post a comment using the Disqus system. I do offer monthly support and custom server deploy. Now accepting Paypal and Bitcoin!

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!

*Regarding english support please contact me by email or post a comment using the Disqus system. I do offer monthly support and custom server deploy. Now accepting Paypal and Bitcoin!

Tutorial New Relic: Monitore os recursos do Servidor em Tempo Real

New Relic é uma ferramenta de monitoramento e aperfeiçoamento de recursos e aplicativos em servidores. Neste tutorial vou mostrar como instalar e configurá-la para exibir em tempo real um servidor Linux Debian.

Mostrarei abaixo como fazer a simples instalação do New Relic mas acesse o website deles e veja a infinidade de recursos e opções que a ferramenta oferece (a que me chamou mais atenção foi a possibilidade de criar alertas personalizados). A instalação e gerenciamento para múltiplos servidores é gratuita.

Monitorando o servidor com New Relic

Esta ferramenta pode ser instalada em qualquer servidor Linux, mas siga nosso tutorial de Debian 8 com ISPConfig 3 para uma melhor experiência.

1 ⇒ Crie uma conta gratuita no site da New Relic: http://br.newrelic.com/

2 ⇒ Acesse o painel com as suas credenciais e clique em “Servers” no menu. Logo acima da lista de servidores clique no botão “+ Add more“.

3 ⇒ Choose a Platform: selecione Ubuntu or Debian

Abrirá uma extensão da tela abaixo exibindo os passos adicionais que deverão ser executados no servidor como superusuário root.

4 ⇒ Acesse o servidor via SSH como root e digite os seguintes comandos:

cd /root

echo deb http://apt.newrelic.com/debian/ newrelic non-free >> /etc/apt/sources.list.d/newrelic.list

#Note o sinal de "-" no final do próximo comando
wget -O- https://download.newrelic.com/548C16BF.gpg | apt-key add -

#Se ao tentar executar o apt-get update abaixo der um erro "Unable to lock directory" aguarde alguns minutos e tente novamente 
apt-get update

apt-get install newrelic-sysmond

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!

*Regarding english support please contact me by email or post a comment using the Disqus system. I do offer monthly support and custom server deploy. Now accepting Paypal and Bitcoin!

Tutorial Debian 8 x64 com ISPConfig e NginX: Instalação do Site

Neste artigo mostrarei como fazer o deploy (instalação e configuração) do website. Os exemplos serão apresentados para um site WordPress no Linux Debian 8 com painel de controle ISPConfig e servidor web NginX configurados anteriormente, mas pode-se adaptar para qualquer outra situação.

Existem muitas maneiras de se instalar ou migrar um site, mas pelas estatísticas dos leitores que me procuram aqui no Fator Binário somente algumas são as preferidas da galera. Escreverei sobre as que achei mais descomplicadas mesmo para iniciantes (se você tiver outras sugestões e caso queira compartilhar entre em contato ou escreva nos comentários).

Instalação do Site
  • Ao adicionar um espaço de site o ISPConfig por padrão criar um arquivo index.html. Antes de instalar os arquivos de um site novo ou copiá-los de outro servidor delete o arquivo /web/index.html para que o browser não o interprete como a página padrão do site.
Instalação de um novo site

Essa primeira opção é para quem decidir criar um espaço de site novo e iniciar um projeto, ou ainda para operadores avançados que farão a instalação/migração manualmente mas querem saber como adicionar um site ao painel somente.

Para usar o módulo de gerenciamento de sites no ISPConfig acesse: ISPConfig → Sites

1a ⇒ Adicione um novo site: Clique em “Add new website” e preencha conforme abaixo (note que a maioria dos campos não são obrigatórios, e se desejar usar o módulo Clientes sempre escolha para qual cliente o site pertence, mas isso é opcional):

[Aba Domain]

» Domínio: <– fatorbinario.com (substitua pelo seu domínio e NUNCA coloque o prefixo “www” neste campo)

» Auto SubDomínio: <– www. (pode-se ainda optar pelo catch all “*.” aqui mas na maioria dos casos isso é desnecessário. Lembre-se também de criar um registro Tipo A para o www na tabela DNS deste domínio)

» PHP: <– PHP-FPM (na nova versão do ISPConfig note que você DEVE selecionar uma opção neste campo pois ele é nulo por padrão. Caso queira poderá selecionar HHVM que usa o compilador JIT, mas faça isso por sua conta e risco)

[Aba Estatísticas]

» Tipo de Estatística Web: <– None (quando incluimos um novo espaço de site no ISPConfig automaticamente o Webalizer começa a coletar estatísticas, configure para não usar este recurso para o site)

[Aba Opções]

» NginX Directives: (em sites WordPress ou Magento é necessário adicionar diretivas personalizadas para que os permalinks (Links Permanentes com “Nome do Post”) funcionem corretamente). Desligaremos também os logs de acesso ao site pois os arquivos podem ficar muito grandes deixando-o lento:

* Observe que listei abaixo diferentes diretivas para os tipos de sites mais conhecidos, escolha somente a que representa o seu site.

#Desativando os logs para melhorar a performance
access_log off;
log_not_found off;
#Diretivas NginX para WORDPRESS
location / {
    try_files $uri $uri/ /index.php?q=$uri&$args;
} 
#Note a alteracao na diretiva location para o Magento. Se for usada a diretiva antiga uma URL aparecerá na caixa de pesquisa da loja dando a impressao de que a instalacao esta bugada.
#Para maiores informacoes veja o arquivo nginx.conf.example que esta incluido no download do proprio Magento

#Diretivas NginX para MAGENTO
location / {
    #try_files $uri $uri/ /index.php?q=$uri&$args;#Nas ultimas versoes do Magento esta diretiva foi alterada, use a linha abaixo
    try_files $uri $uri/ /index.php?$args;
}
location ~* \.php/ {
    rewrite ^(.*.php)/ $1 last;
}

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!

*Regarding english support please contact me by email or post a comment using the Disqus system. I do offer monthly support and custom server deploy. Now accepting Paypal and Bitcoin!