teste
crie um script e coloque no crontab 1/60 minutos.
vi /bin/up_net.sh
conteúdo script.
/sbin/ping -c 5 8.8.8.8
chmod 777 /tmp/FailCount
cat /var/log/system.log | grep -a “date +%d date +%R” | grep -c “allocate llinfo for” > /tmp/FailCount
data=date +%R
FailCount=cat /tmp/FailCount
echo $FailCount
if [ “$FailCount” == “0” ]; then
echo “Error detected in logs. Attempting Repair. $data” >> /tmp/FailCount.txt
ifconfig re0 down
ifconfig re0 up
ifconfig re1 down
ifconfig re1 up
else
echo “Log file doesn’t show arp errors. $data” >> /tmp/FailCount.txt
fi
crontab
1/60 * * * * /bin/up_net.sh
so deixar rodar e o problema esta resolvido princialmente.
Os desenvolvedores do WordPress levam a segurança muito a sério, mas como em qualquer outro sistema, existem potenciais problemas de segurança que podem surgir se algumas precauções básicas de segurança não forem tomadas. Este artigo irá listar algumas formas comuns de vulnerabilidades, e as providências que você pode tomar para manter sua instalação do WordPress segura.
Este artigo não é o guia rápido e definitivo para resolver suas preocupações com a segurança. Se você tem preocupações específicas ou dúvidas, discuta-as com usuários em quem você confie que tenham conhecimento suficiente de segurança em computadores e WordPress.
Fundamentalmente, a segurança não é apenas possuir sistemas perfeitamente seguros, que poderiam muito bem ser impossíveis de encontrar e/ou manter. Um servidor seguro protege a privacidade, integridade e disponibilidade dos recursos que estão sob o controle do seu administrador.
Entre as qualidades de um provedor de hospedagem confiável estão:
Decida qual abordagem de segurança utilizar no seu servidor pensando primeiro no software e nos dados que precisam ser assegurados. O restante desse guia vai ajuda-lo a fazer isso.
Tenha em mente algumas diretrizes gerais enquanto pensa sobre cada aspecto de segurança do seu sistema:Limitar o acessoFaça escolhas seguras que reduzirão os pontos passíveis de invasão por pessoas mal-intencionadas.ContençãoSua instalação deve estar configurada para minimizar o tamanho do estrago que pode ser causado caso o sistema venha a ser comprometido ou invadido.Preparação e conhecimentoMantenha backups e confira o estado da sua instalação do WordPress regularmente. Traçar um plano de backup e recuperação da instalação no caso de uma catástrofe pode ajudar a estar novamente online muito mais rápido caso haja um problema.
Tenha certeza que os computadores que você usa para postar no WordPress estão livres de spyware, malware e outros tipos de infecções e vírus. Toda a segurança do mundo no WordPress e no seu servidor web não farão a menor diferença se houver um keylogger instalado no seu computador.
Mantenha sempre atualizados o seu sistema operacional e os softwares instalados, principalmente o seu navegador, para garantir sua proteção contra vulnerabilidades.
Como muitos dos mais modernos pacotes de software, o WordPress é atualizado regularmente para evitar e resolver novas ameaças que possam surgir. Melhorar a segurança do software é uma preocupação constante, e por isso é importante manter a sua instalação sempre atualizada com a versão mais recente do WordPress. As versões antigas do WordPress não recebem atualizações de segurança.
A versão mais recente do WordPress está sempre disponível no site principal em http://wordpress.org e a versão em Português Brasileiro em http://br.wordpress.org. Não existem versões oficiais disponíveis em outros sites – nunca baixe ou instale o WordPress de qualquer outro endereço que não o http://wordpress.org.
O WordPress conta com atualizações automáticas desde a versão 2.7. Use esta funcionalidade para facilitar o processo de atualização constante. Você também pode usar o Painel de Administração para se manter informado dos updates. Leia o artigo indicado no Painel de Administração ou no WordPress Developer Blog para saber quais passos tomar para se atualizar e manter o sistema seguro.
Se uma vulnerabilidade é descoberta no WordPress e uma nova versão é lançada para resolver o problema, a informação necessária para explorar a falha já estará certamente em domínio público. Isto faz com que as versões antigas estejam mais propensas a sofrerem ataques, e é um dos principais motivos pra que você mantenha seu WordPress atualizado.
Se você é um administrador e mantém vários sites com WordPress, considere usar o Subversion para gerenciá-los de forma mais simples.
Se você encontrou uma falha de segurança no WordPress, você pode ajudar a soluciona-la reportando o que encontrou. Veja a página Security_FAQ para mais informações sobre como proceder nesse caso.
Se você encontrou um bug, também reporte. Veja como fazer isso na página Submitting_Bugs. Você pode ter descoberto uma vulnerabilidade, ou um bug que pode levar a uma falha.
O servidor rodando WordPress, e os outros softwares nele, podem ter falhas de segurança. Por isso, tenha certeza que está rodando versões estáveis e seguras do seu servidor e dos outros softwares instalados, ou contrate um provedor de hospedagem confiável e que cuide desses assuntos para você.
Se você está em um servidor compartilhado (que hospeda mais sites, além do seu) e um outro site no mesmo servidor está comprometido, o seu site também pode, potencialmente, ser atingido, mesmo que você siga todas as dicas deste guia. Pergunte ao seu provedor sobre as medidas de segurança que eles tomam para protegê-lo.
Os dois lados da rede — o lado do servidor WordPress e o lado da rede do cliente — devem ser confiáveis. Isso significa atualizar as regras do firewall do seu roteador em casa e também tomar cuidado com quais redes você usa para trabalhar. Uma lan-house movimentada onde você está enviando senhas em uma conexão não-criptografada, wireless ou não, não é uma rede confiável.
O seu provedor de hospedagem deve garantir que a rede dele não seja comprometida por ataques, e você deve fazer o mesmo. Falhas de segurança em redes podem permitir que senhas e outras informações sensíveis sejam interceptadas.
Muitas ameaças potenciais podem ser evitadas com bons hábitos de segurança. Uma senha forte é um aspecto muito importante disso.
O objetivo da sua senha é dificultar que outras pessoas possam adivinhar e também para evitar que ataques de força bruta sejam bem-sucedidos. Existem diversos geradores automáticos de senhas que podem ser usados para criar senhas seguras.
O WordPress também tem um medidor de segurança das senhas, que é exibido sempre que você está definindo ou alterando uma senha no WordPress. Use sempre esta ferramenta para garantir que está usando senhas adequadas.
Quando estiver escolhendo uma senha, evite:
Uma senha forte não serve só para proteger o seu conteúdo. Um hacker que tenha acesso à sua conta de administração terá poderes para instalar scripts maliciosos que inclusive poderão comprometer todo o servidor.
Se o seu provedor de hospedagem permitir, prefira sempre usar conexões criptografadas SFTP para acessar o seu servidor. Se você não ter certeza se este serviço está disponível, pergunte à empresa de hospedagem.
Usar o SFTP funciona da mesma forma que o FTP, exceto que a sua senha e outras informações são transmitidas de forma criptografada entre o seu computador e o site. Isso significa que a sua senha nunca é enviada em aberto e então não pode ser interceptada por um hacker.
Algumas das funcionalidades mais legais do WordPress precisam da permissão para que alguns arquivos sejam alterados no servidor. No entanto, permitir acesso à alteração de arquivos é um risco em potencial, principalmente em servidores compartilhados.
O melhor a fazer é restringir ao máximo as permissões dos seus arquivos e liberar apenas nos casos em que você precise permitir a escrita, ou criar pastas específicas com menos restrições para algumas atividades, com o upload de arquivos.
Este é um dos esquemas possíveis de permissões:
A sua conta de usuário deve ser a dona de todos os arquivos, e deve ter acesso à escrita em todos eles. Os arquivos que necessitam de escrita pelo WordPress devem estar em um grupo, também pertencente à sua conta de usuário utilizada no servidor./
O diretório raiz do WordPress: todos os arquivos devem ter permissão de escrita somente pelo seu usuário, exceto o .htaccess
se você quiser que o WordPress gere automaticamente as regras de reescrita para você./wp-admin/
A área de administração do WordPress: todos os arquivos devem ter permissão de escrita somente pelo seu usuário./wp-includes/
A maior parte da lógica de sistema do WordPress: todos os arquivos devem ter permissão de escrita somente pelo seu usuário./wp-content/
Conteúdo inserido pelos usuários: estes arquivos devem ter permissão de escrita por todos os usuários (proprietário/usuário, grupos e público).
Dentro de /wp-content/
você vai encontrar:/wp-content/themes/
Arquivos de temas/templates. Se você quiser utilizar o editor de temas do painel de administração, todos os arquivos devem ter permissão de escrita. Se não, todos podem ser escritos somente pela sua conta de usuário./wp-content/plugins/
Arquivos de plugins: todos os arquivos devem ter permissão de escrita somente pelo seu usuário.
Outras pastas que podem existir em /wp-content/
devem estar documentadas pelos temas ou plugins que as necessitam. As permissões podem variar.
Se você tem acesso ao seu servidor, poderá alterar as permissões de arquivos recursivamente utilizando os comandos a seguir:
Para diretórios:
find /caminho/para/a/pasta/do/wordpress/ -type d -exec chmod 755 {} \;
Para arquivos:
find /caminho/para/a/pasta/do/wordpress/ -type f -exec chmod 644 {} \;
Quando você faz uma atualização automática do WordPress, todas as operações são feitas pelo usuário proprietário dos arquivos, não pelo usuário do servidor web. Todos os arquivos são configurados como 0644 e todos os diretórios como 0755, com permissão de escrita somente pelo usuário e de leitura para todos, inclusive o servidor.
Se você tem vários sites no mesmo servidor, é importante considerar mantê-los em bancos de dados diferentes, cada um gerenciado por um usuários isolado. A melhor hora para fazer isso é na Instalação. Isto é uma estratégia de contenção: se um invasor conseguir quebrar uma das suas instalações do WordPress, essa medida dificultará muito que ele consiga alterar os outros sites.
Se você mesmo administra o MySQL, tenha certeza que compreende bem a configuração do MySQL e desabilite algumas funcionalidades desnecessárias (como aceitar conexões TCP remotas). Leia o artigo Secure MySQL Database Design para uma boa introdução a este assunto.
Colocar uma proteção de senha ao /wp-admin/
no lado do servidor adiciona uma 2ª camada de proteção ao redor do seu Painel de Administração, login e arquivos. Isso exige que um invasor ou bot ataque esta segunda camada de proteção, ao invés dos seus arquivos. Muitos dos ataques ao WordPress são feitos de forma autônoma, por softwares e bots maliciosos.
Mas simplesmente bloquear o diretório /wp-admin/
pode desabilitar algumas funcionalidades do WordPress, como o handler de AJAX em /wp-admin/admin-ajax.php
. Veja a seção #Recursos para mais documentação sobre a forma correta de proteger seu /wp-admin/
com uma senha.
Os ataques mais comuns a uma instalação WordPress geralmente caem em duas categorias:
A melhor implementação dessa segunda camada de segurança por senha é exigir uma conexão criptografada HTTP SSL para a administração do site, de forma que toda a comunicação e dados sensíveis seja criptografada. Veja Administration Over SSL
Uma segunda camada de proteção pode ser adicionada nas partes onde os scripts geralmente não devem ser acessados por nenhum usuário. Uma forma de fazer isso é usar mod_rewrite
para bloquear os scripts no arquivo .htaccess
.
# Block the include-only files. RewriteEngine On RewriteBase / RewriteRule ^wp-admin/includes/ - [F,L] RewriteRule !^wp-includes/ - [S=3] RewriteRule ^wp-includes/[^/]+\.php$ - [F,L] RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L] RewriteRule ^wp-includes/theme-compat/ - [F,L] # BEGIN WordPress
Note que isto não deve funcionar bem em instalações MultiSite, já que RewriteRule ^wp-includes/[^/]+\.php$ – [F,L] evitaria que o arquivo ms-files.php
gere imagens. Retirar esta linha permitirá o funcionamento, oferecendo um pouco menos de segurança.
Você pode mover o arquivo wp-config.php para o diretório logo acima da sua instalação do WordPress. Assim, para sites instalados na raiz do servidor, o arquivo wp-config.php podera ficar for da área acessível.
Note que o wp-config.php poderá ficar apenas UM nível acima da instalação do WordPress (onde está a pasta wp-includes). Permita também que somente o seu usuário (e o do servidor) possam acessar este arquivo (geralmente isso significa uma permissão 0400 ou 0440).
Se você usa .htaccess no seu servidor, você pode também inserir o código abaixo no arquivo, para negar acesso a qualquer um que esteja navegando atrás dele:
<files wp-config.php> order allow,deny deny from all </files>
Artigo principal: Administration Over SSL.
Em primeiro lugar, mantenha sempre todos os seus plugins atualizados. Se você não está mais usando algum plugin, delete os arquivos do servidor.
Alguns plugins prometem eliminar pedidos suspeitos baseados em listas de regras de bancos de dados e/ ou whitelists. BlogSecurity’s WPIDS plugin instala o PHPIDS, uma camada de segurança genérica para aplicações PHP, enquanto o WordPress Firewall usa algumas regras pré-configuradas, criadas para o WordPress, além de uma whitelist para eliminar ataques sem muitas configurações.
Se um plugin exige permissão de escrita para os arquivos e ou pastas do WordPress, pesquise o código para saber se ele é bem-intencionado, ou confira com algum usuário mais experiente em quem você confie. Se tiver dúvidas, pergunte nos Forums de Suporte e/ou no Canal IRC.
Como dissemos, uma parte do objetivo de blindar o WordPress é conter o estrago causado quando um ataque tiver sucesso. Plugins que permitem a execução de códigos PHP arbitrários ou outros códigos a partir de entradas no banco de dados aumentam a possibilidade de danos em caso de ataques bem sucedidos.
Uma forma de evitar o uso destes plugins é usar custom page templates que executem as funções. Uma parte da segurança que essa medida garante só é efetiva quando você proíbe a edição de arquivos por dentro do WordPress.
Segurança por obscuridade é comumente tida como uma estratégia primária pouco segura. No entanto, existem algumas áreas do WordPress em que obscurescer algumas informações pode ajudar na segurança:
Faça backup dos seus dados regularmente, incluindo seus bancos de dados MySQL. Veja o artigo principal: Backing Up Your Database).
A integridade dos dados é crítica para se ter downloads confiáveis. Criptografar o backup, manter registros independentes dos hashes MD5 de cada arquivo de backup e/ou colocar os backups em mídias de somente-leitura aumenta a confiança de que seus dados não foram adulterados.
Uma estratégia segura de backup pode incluir manter um set regular de imagens temporais de toda a sua instalação do WordPress (inclusive os arquivos do core e o banco de dados) em um local seguro e confiável. Pense em um site que faz imagens semanalmente. Uma estratégia como essa significa que se o site for comprometido no dia 1º de Maio mas o dano só for percebido no dia 12, o proprietário terá backups anteriores à data da invasão, que poderão ajudar na re-construção do site e também backups posteriores, que podem ajudar a determinar como a invasão aconteceu.
É possível registar vários pedidos enviados ao WordPress. Os logs padrão do Apache não oferecem muita ajuda para lidar com investigações de segurança. Veja: Mod_Security – Logs and Prevents using Apache
Em alguns casos a prevenção não é suficiente e você pode mesmo assim ser hackeado. É por isso que a detecção/monitoramento de invasões é muito importante. Ela permite que você reaja mais rápido, descubra o que aconteceu e recupere seu site.
Se você está em um servidor privado (onde você tem acesso de administração), você deve monitorar os logs para descobrir tentativas de quebrar senhas, ataques virtuais e etc. Uma boa solução de código aberto para monitorar os seus logs em tempo real e bloquear os atacantes é a OSSEC.
Quando um ataque acontece, ele sempre deixa rastros, seja nos logs ou no sistema de arquivos (novos arquivos, arquivos modificados, etc). Se você está usando OSSEC por exemplo, seus arquivos serão monitorados e você será alertado quando eles forem modificados.
Se o invasor tentar desfigurar o seu site, ou enviar malware, você também pode detectar estas alteranções usando uma ferramenta online para o monitoramento de integridade.
Seu domínio está hospedado em um servidor Linux usando o Postfix para enviar emails e está na lista negra de spam ?
Você provavelmente tem um script malicioso enviando um grande número de e-mails diretamente do servidor … bem, você pega o inimigo em casa!
Se o seu daemon de e-mail de saída (ou seja, o software usado para enviar e-mails) for o Postfix, você poderá identificar a fonte de spam em apenas algumas etapas simples.
A resolução do problema pode ser igualmente fácil, embora na maioria dos casos precise de mais investigações.
Na verdade, é necessário impedir que a situação ocorra novamente, como se alguém pudesse carregar um script no seu servidor, você pode ter alguma falha de segurança.
A primeira coisa a fazer é fazer logon no servidor de correio com um usuário com direitos administrativos (sudo) e verifique se o arquivo php.ini do seu domínio (e / ou servidor global) contém a seguinte linha:
mail.add_x_header = On |
sem o qual o que faremos a seguir não produzirá nenhum resultado útil.
Uma vez verificado isso, você precisará inspecionar a fila de mensagens com o comando:
mailq |
Na primeira coluna, você verá o ID exclusivo de cada email de saída, por exemplo:
DA5E8647235C 369763 Wed Mar 29 16:30:19 [email protected] |
(connect to somedomain.com[123.123.123.123]:25: Connection refused) |
[email protected] |
Uma vez identificado um desses e-mails que obviamente é spam, examinaremos seus detalhes com o comando:
postcat -q <ID> |
e procuramos uma linha que comece com ” X-PHP-Originating-Script ” (presente graças à linha php.ini mencionada acima).
Por exemplo, usando grep para evitar a rolagem manual do conteúdo do email:
postcat -q DA5E8647235C | grep X-PHP-Originating-Script |
poderíamos obter uma saída como esta:
X-PHP-Originating-Script: 45:badmailer.php |
O número 45 é o UID, que é o ID do usuário do Linux que executou o script, enquanto badmailer.php é o script que está enviando emails de spam.
Nesse ponto, basta localizar o arquivo badmailer.php, excluí-lo ou limpá-lo e, acima de tudo, para entender como ele foi carregado no seu servidor e executado a partir daí.
Se o seu cabeçalho não contiver a linha X-PHP-Originating-Script, provavelmente sua conta de email foi invadida e é usada para “legitimamente” enviar spam do seu servidor. Nesse caso, identificou um email de saída de spam, você deve iniciar o seguinte comando para ver qual conta foi usada para autenticação:
postcat -q DA5E8647235C | grep sasl_username |
Você obterá uma saída como esta:
named_attribute: [email protected] |
No exemplo, você deve alterar imediatamente a senha da conta [email protected] por uma senha mais forte (longa, com caracteres especiais, maiúsculas e minúsculas).
Outra coisa que você pode fazer para conter o dano é liberar sua fila de mensagens enviadas com o seguinte comando:
postsuper -d ALL |
Se, no entanto, e-mails importantes também estiverem na fila, além de e-mails com spam, você deverá excluir os e-mails indesejados individualmente com o comando:
postsuper -d <ID> |
Portanto, no exemplo, lançaremos o seguinte comando:
postsuper -d DA5E8647235C |
É isso aí… se você tiver problemas, basta adicionar um comentário a este artigo e tentaremos ajudá-lo!
Before starting tutorial, be assured to have generated the CSR (Certificate Signing Request).
Don’t forget to save the private key you obtained when you’ve generated the CSR, you will need it.
Wait for the validation of the CSR by the certificate authority (CA). When the CSR is validated, you can download the certificate on your HTTPCS account, in category « My SSL Certificates » and click on « Download ».
1. Log into your ISPConfig control panel
2. In the « Sites » menu, select the website you bought a certificate for.
3. In the « SSL » menu, copy/paste in the field « Private key » the private key you obtained when you have generated your CSR.
NB : If it’s a wildcard certificate, do not forget to change the « SSL domain » : choose the one starting with « * ».
4. In the « SSL Request » field, paste the content of your CSR (yellow frame).
5. In the « SSL Certificate » field, paste the content of the file « ServerCertificate.cer » you have just downloaded on HTTPCS (red frame).
6. In the « SSL Bundle » field, paste the content of the file « CACertificate.cer » you have just downloaded on HTTPCS (blue frame).
7. In the « SSL Action » dropdown list, select « Save Certificate » and click on « Save » button.
NB : when you have downloaded the certificate from your HTTPCS account, you’ve obtained 2 files named « CACertificate-1.crt » and « CACertificate-2.crt ». Open with a text editor CACertificate-1.crt and CACertificate2.crt.
Copy and paste the content of the first one in the field « CA Certificate (*-ca.crt)» and then copy and paste the content of the second one, just after the first one leaving « —BEGIN CERTIFICATE—– » and « —–END CERTIFICATE—– ».
Important : You have to open these files with a text editor like Wordpad, Notepad++ or others. Don’t do that with Word or LibreOffice because it will corrupt the certificate.