nav-left cat-right
cat-right
Como criar um alerta por e-mail ao acessar o SSH c...

Abaixo vamos criar um alerta que será enviado a sua conta de e-mail toda vez que alguém efetuar login no SSH como root em seu servidor.

Efetue login no SSH de seu servidor como root.

Edite o arquivo .bashrc

pico /root/.bashrc

Após a ultima linha cole o texto abaixo modicando SeuServidor para Nome do Seu Servidor , e voce@seudominio
pelo seu e-mail :

echo 'ALERT - Acesso ao Root (SeuServidor) em:' `date` `who` | mail -s "Alerta: Acesso ao root por `who | cut -d"(" -f2 | cut -d")" -f1`" voce@seudominio

Salve e saia do pico( ctrl+x e y).

Feito. Quando alguém efetuar login em seu ssh como root, você receberá um e-mail informando o nome do servidor, IP de quem efetuou o login, hora e data.

Muito simples e sem duvida bastante util :)

Germano Pires Ferreira
Administrador Linux

Como instalar BFD (Brute Force Detection)...

BFD é uma ótima excelente solução para detectar e bloquear ataques do tipo “Brutal Force”

**Importante: Certifique-se de ter instalado e configurado o APF Firewall antes de instalar o BFD.

Abaixo vamos abordar a instalação e configuração deste simples porém muito util sistema.

Conecte no SSH de seu servidor como root:

cd /root/
wget http://www.rfxnetworks.com/downloads/bfd-current.tar.gz
tar -xvzf bfd-current.tar.gz
cd bfd-0.9
./install.sh

Após a instalação, vamos ao arquivo de configuração:

pico /usr/local/bfd/conf.bfd

Localize:

ALERT_USR="0"

mude para:

ALERT_USR="1"

Localize:

EMAIL_USR="root"

mude para:

EMAIL_USR="voce@dominio.com"

Salve e saia do pico (ctrl+x e y)

Para iniciar o bfd:

bfd -s

Germano P Ferreira
Administrador Linux

Como corrigir dns recursivo aberto...

Uma vulnerabilidade bastante comum e que abre a possibilidade de alguns tipos de ataques, são as “Open DNS” para consultas externas.

Possíveis Riscos com “DNS Recursivo Aberto”:

• Ser vítima de ataques de envenenamento de cache (cache poisoning), que levam o servidor recursivo a armazenar informações forjadas. Tais informações podem ser usadas para comprometer a segurança de clientes que façam consultas a esse servidor.
• Ter esse servidor abusado por atacantes e utilizado para desferir ataques de negação de serviço distribuídos (DDoS), que podem implicar nas seguintes conseqüências:

– o grande número de consultas DNS forjadas recebidas e, principalmente, a quantidade de respostas grandes enviadas para a vítima, podem consumir uma quantidade considerável de banda da rede com um servidor DNS recursivo aberto;
– dependendo do contrato do provedor de conectividade, a rede com o DNS aberto sendo abusado pode ser co-responsabilizada em caso de ataque de negação de serviço contra terceiros.

Para verificar se este é o seu caso, vá em

http://www.intodns.com e digite um domínio no servidor que deseja verificar.

Se estiverem abertas, você irá ver um alerta em vermelho “Open DNS”

Para corrigir este problema siga os passos abaixo:

Efetue login como root em seu servidor pleo SSH e edite o named:

pico /etc/named.conf

Procure por:

key "rndckey" {

};

Após este código acima de options { insira:

acl "trusted" {
xxx.xxx.xxx;
xxx.xxx.xxx;
xxx.xxx.xxx;
127.0.0.1
};

onde xxx são os números de seus servidores de DNS, geralmente definidos no arquivo /etc/nameserverips

Dentro de “options {”
abaixo de:

// query-source address * port 53;

coloque o seguinte:

version "Servidor DNS Seguro";
allow-recursion { trusted; };
allow-notify { trusted; };
allow-transfer { trusted; };

Salve e feche o editor ( ctrl+x e y)

Agora, reinicie seu servidor DNS

service named restart

Se você utiliza um firewall deixe aberta a porta 53 tanto para udp quanto para tcp.

Germano P. Ferreira
Administrador Linux

Alterando o limite de memória no MSDE...

O limite de consumo de memória do servidor de banco de dados MSDE, por padrão, é 2147483647Mb. Isto mesmo, pouco mais de 2 terabytes de memória.

Como nossos servidores não tem tanta memória disponível, vamos limitar o uso de memória no banco de dados. Para isto, crie um arquivo chamado limitmemory.sql, com o seguinte conteúdo:

USE master
EXEC sp_configure ’show advanced options’, 1
RECONFIGURE WITH OVERRIDE

USE master
EXEC sp_configure ‘max server memory (MB)’, 512
RECONFIGURE WITH OVERRIDE

USE master
EXEC sp_configure ’show advanced options’, 0
RECONFIGURE WITH OVERRIDE

Em seguida, utilize o seguinte comando para executar este script sql (lembre de mudar o caminho para o arquivo sql):

osql -E -S servername\MSFW -i c:\sqlmemorylimit.sql

Se você quiser apenas verificar o valor que está setado para limite de memória no MSDE, use o seguinte script:

USE master
EXEC sp_configure 'show advanced options', 1
RECONFIGURE WITH OVERRIDE

USE master
EXEC sp_configure 'max server memory (MB)'

USE master
EXEC sp_configure 'show advanced options', 0
RECONFIGURE WITH OVERRIDE

Salve-o como sqlmemorycheck.sql, e execute o seguinte comando:

osql -E -S servername\MSFW -i c:\sqlmemorycheck.sql
Como instalar Nobody Check...

Utilizar boas regras no mod_security é indispensável, porém infelizmente só isso não resolve o problema de processos maliciosos no apache devido a falhas de segurança de scripts/sistemas de clientes.

Abaixo, abordarei a instalação e configuração do nobody check, que irá ajudar bastante a manter a segurança do Apache e kilar o processo quando encontrado.

1- Efetue login em seu servidor pelo SSH.

2- Baixe o instalador

wget http://www.webhostgear.com/projects/nobodycheck/install.sh

3- Transformando install em executável

chmod +x install.sh

4 - Instalando e removendo o instalador

./install.sh
rm -f install.sh

Neste tempo, o nobody check já está instalado , agora vamos configurá-lo.

5- Editando as configurações:

pico /usr/local/nobody_check/nc.conf

Digite entre as aspas a conta de e-mail que irá receber os alertas:

to= "email@dominiodousuario.com"

em killproc mude para 1, desta forma o processo malicioso será interrompido.

Em loglvl deixe 1 para que seja enviado o relatório quando o nobody check encontrar algo de errado.

Após a instalação, será criado uma referencia no cron para rodar o nobody check de hora em hora. Na minha opinião é uma boa solução mudar o tempo para no máximo 30 em 30 minutos.

Para isso edite o cron

crontab -e

onde está

0 */1 * * * /usr/local/nobody_check/nobody_check >/dev/null 2>&1

mude para

*/30 * * * *  /usr/local/nobody_check/nobody_check >/dev/null 2>&1

a seguir salve e saia do cron (se estiver utilizando o pico - ctrl+x e y)

Dica: quando o processo malicioso for detectado veja a data e hora no e-mail do Nobody Check e investigue no mod_security se existe alguma referência neste mesmo horário.

Nem sempre funciona mas poderá ajudá-lo com algumas pistas para descobrir qual domínio gerou o problema.

Germano Pires Ferreira
Administrador Linux

Como desabilitar Shell Script ( Windows Host Scrip...

O windows Host Script, conhecido também como shell script, permite a execução de scripts na máquina que interagem como o sistema operacional Windows. São muito úteis para manutenção e automatização de tarefas, no entanto, o uso desta ferramenta por pessoas não autorizadas podem causar sérios problemas, uma vez que ele terá controle total sobre o sistema operacional.

É claro, num servidor com as devidas permissões, um usuário comum não deverá conseguir executar nenhum script que possa causar algum estrago. De qualquer maneira, é muito difícil verificar o servidor a ponto de se afirmar com certeza que não existe nenhuma brecha na segurança. O melhor a ser feito é desabilitar a execução.

Existem duas formas básicas de resolver este problema. Na primeira delas, iremos desabilitar a execução para todos os usuários da máquina. O procedimento é:
1. Abra o prompt de comando e digite:
Digite regsvr32.exe -u wshom.ocx

Desta maneira, você estará removendo o registro do wshom.ocx, responsável pela execução do shell script.

Para registrar novamente, faça:

Abra o prompt de comando e digite:
regsvr32.exe wshom.ocx

A segunda maneira, é alterar a permissão de execução do shell script diretamente no registro do windows. O procedimento é:

1. Clique em iniciar -> executar -> digite regedit <ENTER>
2. Vá para a chave [HKEY_CLASSES_ROOT\WScript.Shell] com o botão direito do mouse nesta chave, vá em permissão (permission) e altere as permissões para permitir a execução do shell script somente para os usuários e grupos que você sabe que devem realmente utilizá-lo.

Como alterar um domínio de revenda no plesk...

Para mudar um domínio de uma revenda (cliente) para outra no plesk, faça:

1. Logue-se no servidor e abra um prompt de comando.
2. Digite:

cd \ %plesk_bin%

3. Digite:

domain.exe -u <Dominio> -clogin <LoginDoCliente>
Como instalar apf firewall...

Abaixo segue uma abordagem de como instalar e configurar o APF Firewall utilizando as configurações padrões em servidores com WHM/cPanel.

*Importante: Eu não sugiro a instalação do APF Firewall em servidores VPS.
Efetue login como root no SSH de seu servidor linux:

Digite os comandos abaixo para baixar e instalar o APF:

cd /root/
wget http://www.rfxnetworks.com/downloads/apf-current.tar.gz
tar -xvzf apf-current.tar.gz
rm -f apf-current.tar.gz
cd apf-0.9.6-2
./install.sh

Depois de instalado vamos configurar editando o arquivo de configuração:.

cd /etc/apf
pico -w conf.apf

Localize:

USE_DS=”0″

e mude para:

USE_DS=”1″

Abaixo segue como deverá ficar cada uma das entradas(e saídas) no arquivo de configuração e a seguir uma descrição de cada uma das portas:

Localize e mude as configurações a seguir :
**Nota: digite nas mesma linha

Common ingress (inbound) TCP ports
IG_TCP_CPORTS="21,22,25,53,80,110,143,465,953,993,995,2082,2083,2084,2086,2087,2095,2096,3306,6666,7786,3000_3500"

Nota: Lembre-se , o padrão para a porta ssh é 22, porém se você modificou para outra porta, substitua 22 em “IG_TCP_CPORTS” .

Descrição de portas:
—–
21 FTP (TCP)
22 SSH (TCP)
25 SMTP (TCP)
53 DNS - Domain Name Server (TCP)
80 HTTP (TCP)
110 POP3 (TCP)
143 IMAP (TCP)
443 HTTPS (TCP)
465 sSMTP (TCP)
953 ??BIND??
993 IMAP4 - TLS/SSL (TCP)
995 POP3 - TLS/SSL (was spop3) (TCP)
2082 CPANEL (TCP)
2083 CPANEL SSL (TCP)
2084 entropychat server (não habilite esta porta se você não utilizar este serviço) (TCP)
2086 WHM (TCP)
2087 WHM SSL (TCP)
2095 WebMail (TCP)
2096 WebMail SSL
3306 mySQL acesso remoto (TCP)
6666 Melange chat Server (não habilite esta porta se você não utilizar este serviço) (TCP)
7786 Interchange (TCP)
3000_3500
5100 for ASP,
8080 and 8443 for JSP (não habilite esta porta se você não utilizar este serviço).

Common ingress (inbound) UDP ports
IG_UDP_CPORTS=”53,6277″
53 DNS - Domain Name Server
6277 SpamAssassin / DCC (email scanning)

Common ICMP (inbound)

IG_ICMP_TYPES=”3,5,11,0,30,8″
0 Echo Reply
3 Destination Unreachable
5 Destination Unreachable
8 Echo
11 Time Exceeded
30 Traceroute
—–

Common egress (outbound) TCP ports

EG_TCP_CPORTS=”21,25,37,53,80,110,113,#123,443,43,873,953,2089,2703,3306″

21 FTP
25 SMTP
37 Required for CPANEL Licensing
53 DNS - Domain Name Server
80 HTTP
110 POP3
113 Authentication Protocol (AUTH)
123 NTP (Network Time)
443 HTTPS
43 WHOIS
873 rsync (CPanel updates)
953 BIND ??
2089 Necessária para validar a licença do cPanel
2703 Razor (email scanning)
3306 mySQL acesso remoto
—–

Common egress (outbound) UDP ports
EG_UDP_CPORTS=”20,21,53,873,953,6277″
20 ftp-data
21 FTP
53 DNS - Domain Name Server
873 rsync
953 BIND ??
6277 SpamAssassin / DCC (email scanning)
—–

Common ICMP (outbound) typesEG_ICMP_TYPES=”all”==

Agora salve e saia do arquivo de configuração (ctrl+x) y

Para iniciar o APF

/usr/local/sbin/apf -s

ou simplesmente

apf -s

Os comandos para o APF são

-s start
-r restart
-f flush - stop
-l list
-st status
-a HOST allow HOST
-d HOST deny HOST

Com o APF iniciado efetue um novo login no SSH para se certificar que as configurações estão corretas. Se por algum motivo algo não funcione em seu servidor devido as configurações, não se preocupe, inicialmente o APF funciona em Devel_Mode e ficará off dentro de 5 minutos.

Se tudo está funcionando perfeitamente agora vamos desabilitar o Devel_mode para que o APF não fique off depois dos 5 minutos.

No ssh:

cd /etc/apf
pico -w conf.apf

localize:

DEVEL_MODE=”1″

e mude para

DEVEL_MODE=”0″

Salve e saia do arquivo de configuração (ctrl+x) y

Vamos agora finalmente reiniciar o APF

apf -r

Germano Pires Ferreira
Administrador Linux

Alterando a porta de conexão no Terminal Server (...

Alterando a porta de conexão no terminal server (Remote desktop)

O terminal services é o software padrão para conexão em servidores remotos (Windows). Ele utiliza a porta 3389 para receber as conexões. Como alternativa, podemos mudar esta porta, desviando a atenção de hackers.

ATENÇÃO: Este artigo contém informações sobre alterações no registro do Windows. Antes de qualquer alteração, é importante fazer um backup, e saber como proceder para restaurá-lo caso haja necessidade.

Voltando ao artigo…

Para alterar a porta de conexão padrão no Terminal Server

1. Execute regedt32 e encontre a seguinte chave:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

2. Encontre a subkey “PortNumber”. Observe que o valor padrão está “00000D3D” (hexadecimal para 3389). Modifique o valor padrão e salve.

Para se conectar do lado do cliente, no remote desktop, basta digitar o o hostname ou ip, e a nova porta de conexão.

Ex.: você alterou a porta de conexão para 3388, digite no remote desktop:

seudominio.com:3388

Como resetar a senha do mysql no Windows Server?...

1. Pare o serviço MySql

2. Execute:

C:\mysql\bin\mysqld-nt --skip-grant-tables

e então abra outro prompt de comando.

3. Execute

C:\mysql\mysql

4. Digite o seguinte comando:

update mysql.user set password=('COLOQUE-SUA_SENHA-AQUI') where User='root';

5. Em seguida, dê o seguinte comando:

flush privileges;

6. Digite:

quit

7. Mate todos os processos mysqld-nt

8. Reinicie o serviço mysql

« Previous Entries Next Entries »