Ir para conteúdo

Nightz

Campones
  • Total de itens

    39
  • Registro em

  • Última visita

  • Dias Ganhos

    1

Tudo que Nightz postou

  1. O Ubuntu 12.04 é mais estável e seguro do que o 10.04. Recomendo que utilize ele.
  2. Pra facilitar essa crítica dele, só coloque algo do tipo: Para instalar no CentOS: yum install ... Para instalar no Debian/Ubuntu: apt-get install .. A maioria dos pacotes tem o mesmo nome, mas é só pesquisar também No mais, apesar de simples, é útil deixar os comandos para os novatos.
  3. O OT Server Ready (OSR) é um software básico que desenvolvi juntamente com o apoio da 4YouStart (que inclusive está oferecendo 50% de desconto em qualquer servidor, cupom: XTIBIA) feito para auxiliar aqueles que tem mais dificuldade com a parte de infraestrutura. Veja funcionando: Avisos: O software está em BETA. Em caso de qualquer problema envie uma resposta nesse post. Quero lembrar que qualquer cópia dessa postagem sem a devida autorização não é permitida. O OSR instala e configura os seguintes softwares/bibliotecas (visão geral): - Apache2 - php5 - MySQL 5.5 - phpmyadmin - Todas bibliotecas para compilar/rodar um OT Server O sistema suporta oficialmente os seguintes sistemas operacionais: Debian 7.x Ubuntu 12.x Ubuntu 14.x Para instalar o OT Server Ready, utilize as seguintes instruções: Lembrete: recomendo que utilize-o apenas em um servidor novo, recém formatado. Para instalar no Debian: apt-get update apt-get install -y gcc wget http://scripts.4youstart.com/ot-server-ready-debian chmod 777 ot-server-ready-debian ./ot-server-ready-debian SENHA Para instalar no Ubuntu: apt-get update apt-get install -y gcc wget http://scripts.4youstart.com/ot-server-ready-ubuntu chmod 777 ot-server-ready-ubuntu ./ot-server-ready-ubuntu SENHA Substitua a palavra "SENHA" na última linha da instalação pela senha que deseja utilizar no phpmyadmin e MySQL. Recomenda-se que utilize a mesma senha do que a senha do servidor, mas pode utilizar qualquer uma. Versão atual do Software: v0.1 Lista de bibliotecas instaladas: apache2 php5 libapache2-mod-php5 php5-mcrypt mysql-client-5.5 mysql-server-5.5 mysql-common libboost-all-dev libgmp3-dev liblua5.1-0 liblua5.1-0-dev liblua50 liblua50-dev liblualib50 liblualib50-dev lua50 lua5.1 libsqlite0-dev libsqlite3-dev sqlite3 libmysql++-dev libmysqlclient-dev libxml2-dev libxml++2.6-dev cpp gcc g++ make automake autoconf pkg-config subversion liblua5.1-sql-mysql-dev liblua5.1-sql-sqlite3-dev zlib1g-dev zlib1g libcrypto++-dev libcrypto++ libcurl4-openssl-dev phpmyadmin Sugestões de novas implementações são bem vindas! Façam bom proveito
  4. Obrigado pelos elogios e pode contar que farei mais tutoriais!
  5. Olá XTibianos! Esse tutorial ensina de maneira extremamente simples como bloquear completamente alguns países específicos no seu CSF. Vamos lá? 1. Utilize o nano ou qualquer outro editor de texto para editar o arquivo de configuração do CSF: nano /etc/csf/csf.conf 2. Vá até a linha 721 (aproximadamente) e procure por CC_DENY: CC_DENY = "" 3. Acesse o site IPdeny para pegar o código do país que você deseja bloquear: + Clique aqui para acessar o site. -> Exemplo: Caso você queira bloquear a França: + Procure na página com o CTRL + F o nome do país em inglês. FRANCE (FR) [download zone file] Size: 21.09 KB Copie o código do país entre ( ), neste caso: FR. 4. Cole o código do país na varíavel CC_DENY: + Para mais de um país, utilize a virgula. CC_DENY = "FR,CN" + No exemplo acima, estaríamos bloqueando a França e a China. 5. Reinicie seu CSF. service csf restart Pronto! Você já está bloqueando completamente o acesso dos países configurados! Façam bom proveito (Esse tutorial foi completamente escrito por mim. Qualquer cópia deve ser previamente autorizada e conter os devidos créditos.)
  6. Bom dia XTibianos! Neste tutorial de hoje vou ensinar a instalar e utilizar o Screen. Mas antes disso, vou explicar o que é e para que serve. O Screen (ou GNU Screen) é é um software livre multiplexador de terminal de linha de comando desenvolvido pelo Projeto GNU. Permite que o usuário acesse múltiplas sessões separadas de terminal a partir de uma mesma janela ou mesmo remotamente. É muito útil para manipular vários programas em uma mesma janela ou mesmo para manter processos em execução de fundo. [Wikipedia] Ou seja, reusmidamente, o Screen é um software que permite você rodar várias áreas de trabalhos com vários processos executando. E porque preciso de utilizar isso no meu servidor de OTServer? Simples! Quando for abrir o servidor utilizando o comando ./theforgottenserver &, ao fechar o SSH, o servidor continua rorando, certo? Mas você não pode mais ver os logs que o executável gera em tempo real no linux. Porém.. se você abrir o servidor dentro de uma área de trabalho do Screen, isso é possível! Sem contar com várias outras vantagens como maior estabilidade e possibilidade de continuar trabalhando no SSH sem interromper o servidor ou ter que abrir outra janela! Bom.. agora que já expliquei sobre o Screen.. Vamos ao tutorial! 1. Instalando o Screen: 1.1. Abra o terminal SSH do seu servidor. 1.2. Ao logar no servidor, rode o seguinte comando para instalar o Screen: -> Servidores Ubuntu/Debian: apt-get install screen -> Servidores CentOS: yum install screen 1.3. Pronto, Screen instalado! Simples, não? Agora vamos a utilização! 2. Utilizando o Screen: 2.1. Abra o terminal SSH do seu servidor. 2.2. Para criar uma nova área de trabalho do Screen, utilize o comando: screen -S NomeDaScreen -> Por exemplo: screen -S rodarServidor 2.3. Assim que o comando acima for executado, voce já estará em uma nova área de trabalho. Caso queira deixar algo rodando nela em segundo plano, basta rodar o que for rodar normalmente e sair da Screen sem fechar a área de trabalho. -> Por exemplo: screen -S TFS nightz@servidor:~$ cd /home/otserv nightz@servidor:/home/otserv$ ./theforgottenserver & 2.4. Depois que o comando já estiver rodando, basta pressionar as teclas CONTROL, A e D (Ctrl A + D). Ao "minimizar" a área de trabalho, o Screen vai exibir uma frase informando que "deu tudo certo". -> Por exemplo: screen -S tst nightz@servidor:~$ [detached from 13077.tst] 2.5. Para entrar novamente na Screen, basta utilizar o comando abaixo: screen -r -x NomeDaScreen -> Por exemplo: screen -r -x tst 2.6. Mas e se eu esquecer o nome da Screen? Calma.. Para listar todas as Screens em execução, utilize o seguinte comando: screen -ls -> Por exemplo: nightz@server:$ screen -ls There is a screen on: 13077.tst (10-06-2014 08:55:37) (Detached) 1 Socket in /var/run/screen/S-476175. nightz@server:$ * De azul, temos o nome das Screens (neste caso, da Screen) em execução. 2.7. E para fechar uma Screen, ao em vez de minimizá-la, como faço? Simples! Utilize o comando abaixo após acessar a Screen que deseja fechar: exit Pronto! 3. Correção de problemas: Aqui em baixo, vou postando soluções de possíveis problemas do Screen, a medida que forem sendo reportados. Até hoje, o único problema por qual já passei foi a pasta do Screen perder permissão, fazendo com que eu não consiga ver as Screens em aberto, mas esse problema só não permite que a mesma seja resumida, as Screens todas continuaram funcionando normalmente. + Problema: Directory '/var/run/screen' must have mode 777. + Solução: chmod 777 /var/run/screen. Façam bom proveito! (Esse tutorial foi completamente escrito por mim. Qualquer cópia deve ser previamente autorizada e conter os devidos créditos.)
  7. Olá cidadãos XTibianos! Neste tutorial vou ensinar a adaptar o DDoS Deflate, que é uma excelente ferramenta para combater ataques, para ser utilizado junto ao famoso ConfigServer Security & Firewall (CSF). Para este tutorial vou partir do ponto que o CSF já está instalado e configurado. Para instalar o (D)DoS Deflate, basta rodar o seguinte comando: wget http://www.inetbase.com/scripts/ddos/install.sh chmod 0700 install.sh ./install.sh Feito isso, vamos para a configuração do (D)DoS Deflate para trabalhar com o CSF. 1. Antes de começarmos a modificação, faremos um backup do arquivo que vamos alterar: cp "/usr/local/ddos/ddos.sh" "/usr/local/ddos/ddos.bkp.sh" 2. Utilize o nano para editar o arquivo ddos.sh: nano /usr/local/ddos/ddos.sh 3. Vá até a linha 138 (aproximadamente) e procure por essa linha: $IPT -I INPUT -s $CURR_LINE_IP -j DROP 4. Apague o conteúdo dessa linha e substitua por: csf -d $CURR_LINE_IP 5. Por fim, copie o arquivo ddos.sh para a pasta /usr/local/sbin. cp -s /usr/local/ddos/ddos.sh /usr/local/sbin/ddos Pronto! Seu DDoS Deflate está configurado para trabalhar com o CSF! Façam bom proveito (Esse tutorial foi completamente escrito por mim. Qualquer cópia deve ser previamente autorizada e conter os devidos créditos.)
  8. O script realmente não foi escrito por mim, já roda na internet faz uns anos. De qualquer maneira apenas quis compartilhar. Entendo Windows mas não é meu forte
  9. Bom dia XTibianos! Abaixo temos umas regrinhas do iptables conhecidas como SYN Proxy que ajudam e muito a combater ataques do tipo SYN Flood (ataque de negação de serviço). Segundo dados estatísticos essas simples regras reduzem o impacto desses ataques em até 20x! Essas regras são recomendadas por grandes empresas, incluindo a RedHat, responsável por vários projetos como o CentOS. Antes de vir postar testei os comandos no Ubuntu e no Debian e funcionaram 100%. As regras do iptables abaixo são para servidores que não possuem o CSF ou APF instalados. Basta rodar 4 linhas de comando no seu SSH. iptables -t raw -I PREROUTING -p tcp -m tcp --syn -j CT --notrack iptables -I INPUT -p tcp -m tcp -m state --state INVALID,UNTRACKED -j SYNPROXY --sack-perm --timestamp --wscale 7 --mss 1460 iptables -A INPUT -m state --state INVALID -j DROP /sbin/sysctl -w net/netfilter/nf_conntrack_tcp_loose=0 E pronto! O SYN Proxy já está funcionando! Observação: Caso seu servidor seja VPS consulte seu provedor antes de rodar a última linha do comando. Façam bom proveito! (Esse tutorial foi completamente escrito por mim. Qualquer cópia deve ser previamente autorizada e conter os devidos créditos.)
  10. Bom dia cidadãos! Trago agora um simples script em cmd (linha de comando do Windows) que otimiza seu TCP/IP, melhorando latência e protegendo de pequenos ataques de maneira simples. Entendendo o menu do script: Pressione "y" para otimizar o TCP/IP Pressione "q" para desabilitar o "QoS reserved bandwidth" - liberar 100% da sua rede para uso Pressione "n" para cancelar o script e fechá-lo Instalando o script: + Abra o bloco de notas, insira o conteúdo abaixo e salve como otimizar.cmd. CLS @ECHO OFF ECHO ------------------------------------------ ECHO Type "y" to optimize Vista TCP/IP settings ECHO Type "q" to disable QoS reserved bandwidth ECHO Type "d" to revert to Vista default values ECHO Type "n" to cancell patch and exit ECHO ------------------------------------------ :LOOP SET /P choice1= Type y,n,q, or d, and press ENTER: IF /I "%choice1%"=="Y" GOTO TWEAK IF /I "%choice1%"=="Q" GOTO QOS IF /I "%choice1%"=="D" GOTO DEFAULT IF /I "%choice1%"=="N" GOTO CANCEL ELSE GOTO LOOP :TWEAK @ECHO ON netsh int tcp set global rss=enabled netsh int tcp set global chimney=enabled netsh int tcp set global autotuninglevel=normal netsh int tcp set global congestionprovider=ctcp netsh int tcp set global ecncapability=disabled netsh int tcp set global timestamps=disabled @ECHO OFF cd %temp% ECHO > SG_Vista_TcpIp_Patch.reg Windows Registry Editor Version 5.00 ECHO >> SG_Vista_TcpIp_Patch.reg [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] ECHO >> SG_Vista_TcpIp_Patch.reg "DefaultTTL"=dword:00000040 ECHO >> SG_Vista_TcpIp_Patch.reg "EnableTCPA"=dword:00000001 ECHO >> SG_Vista_TcpIp_Patch.reg "Tcp1323Opts"=dword:00000001 ECHO >> SG_Vista_TcpIp_Patch.reg "TCPMaxDataRetransmissions"=dword:00000007 ECHO >> SG_Vista_TcpIp_Patch.reg "TCPTimedWaitDelay"=dword:0000001e ECHO >> SG_Vista_TcpIp_Patch.reg "SynAttackProtect"=dword:00000001 ECHO >> SG_Vista_TcpIp_Patch.reg [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider] ECHO >> SG_Vista_TcpIp_Patch.reg "LocalPriority"=dword:00000004 ECHO >> SG_Vista_TcpIp_Patch.reg "HostsPriority"=dword:00000005 ECHO >> SG_Vista_TcpIp_Patch.reg "DnsPriority"=dword:00000006 ECHO >> SG_Vista_TcpIp_Patch.reg "NetbtPriority"=dword:00000007 regedit /s SG_Vista_TcpIp_Patch.reg del SG_Vista_TcpIp_Patch.reg CLS ECHO * PATCH SUCCESFULLY APPLIED - PRESS ANY KEY TO EXIT * GOTO SUCCESS :QOS @ECHO OFF cd %temp% ECHO > SG_Vista_TcpIp_Patch.reg Windows Registry Editor Version 5.00 ECHO >> SG_Vista_TcpIp_Patch.reg [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Psched] ECHO >> SG_Vista_TcpIp_Patch.reg "NonBestEffortLimit"=dword:00000000 regedit /s SG_Vista_TcpIp_Patch.reg del SG_Vista_TcpIp_Patch.reg CLS ECHO * QOS PATCH SUCCESFULLY APPLIED - PRESS ANY KEY TO EXIT * ECHO. ECHO * Visit SpeedGuide.net for more broadband info and tweaks * ECHO. @PAUSE EXIT :DEFAULT @ECHO ON netsh int tcp set global rss=default netsh int tcp set global chimney=default netsh int tcp set global autotuninglevel=normal netsh int tcp set global congestionprovider=default netsh int tcp set global ecncapability=default netsh int tcp set global timestamps=default @ECHO OFF cd %temp% ECHO > SG_Vista_TcpIp_Default.reg Windows Registry Editor Version 5.00 ECHO >> SG_Vista_TcpIp_Default.reg [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] ECHO >> SG_Vista_TcpIp_Default.reg "DefaultTTL"=- ECHO >> SG_Vista_TcpIp_Default.reg "EnableTCPA"=- ECHO >> SG_Vista_TcpIp_Default.reg "Tcp1323Opts"=dword:00000000 ECHO >> SG_Vista_TcpIp_Default.reg "TCPMaxDataRetransmissions"=dword:000000ff ECHO >> SG_Vista_TcpIp_Default.reg "TCPTimedWaitDelay"=dword:ffffffff ECHO >> SG_Vista_TcpIp_Default.reg "SynAttackProtect"=- ECHO >> SG_Vista_TcpIp_Default.reg [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\ServiceProvider] ECHO >> SG_Vista_TcpIp_Default.reg "LocalPriority"=dword:000001f3 ECHO >> SG_Vista_TcpIp_Default.reg "HostsPriority"=dword:000001f4 ECHO >> SG_Vista_TcpIp_Default.reg "DnsPriority"=dword:000007d0 ECHO >> SG_Vista_TcpIp_Default.reg "NetbtPriority"=dword:000007d1 ECHO >> SG_Vista_TcpIp_Default.reg [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Psched] ECHO >> SG_Vista_TcpIp_Default.reg "NonBestEffortLimit"=- regedit /s SG_Vista_TcpIp_Default.reg del SG_Vista_TcpIp_Default.reg CLS ECHO * VISTA DEFAULT VALUES SUCCESFULLY APPLIED - PRESS ANY KEY TO EXIT * GOTO SUCCESS :SUCCESS netsh int tcp show global @PAUSE EXIT :CANCEL CLS ECHO * PATCH CANCELLED BY USER - PRESS ANY KEY TO EXIT * @PAUSE EXIT + Salve o arquivo, feche o bloco de notas e execute o otimizar.cmd (de preferência em modo de administrador). + Pressione "q" para desabilitar o "QoS reserved bandwidth" e logo em seguida pressione "y" para otimizar o TCP/IP. Pronto! Façam bom proveito (Esse tutorial foi completamente escrito por mim. Qualquer cópia deve ser previamente autorizada e conter os devidos créditos.)
  11. Olá XTibianos! Dessa vez vou ensinar como fazer um backup do banco de dados do seu servidor de forma automatizada, para caso algo aconteça você tenha um backup recente para dar rollback Vamos lá? Antes de começarmos, recomendo que instalem o editor de texto chamado nano, pois o vim pode dar um pouco de trabalho para os mais leigos. Para instalar o nano basta rodar o comando abaixo: -> CentOS yum install nano ->Ubuntu/Debian apt-get install nano O primeiro passo é instalar o cron, que nada mais é do que um software que executa de tempo em tempo scripts ou outros softwares de forma automatizada da maneira que você programá-lo. Em alguns sistemas operacionais o mesmo já vem instalado, mas caso não esteja no seu servidor, utilize o comando abaixo: -> CentOS yum install cronie ->Ubuntu/Debian apt-get install cron Em seguida vamos alterar o editor de texto padrão para o nano, usando o comando abaixo: export EDITOR=nano Observação: caso sinta facilidade ou prefira utilizar o vim ou qualquer outro editor de texto, basta pular essa etapa e continuar o tutorial normalmente Agora vamos configurar o script de backup. Acesse a pasta em que encontra seu servidor e crie uma nova pasta chamada backup com o comando abaixo: cd /pasta-do-seu-servidor mkdir backup Agora faremos o download do script. Deixarei o código fonte do script abaixo para caso um dia no futuro o link de download do mesmo fique indisponível. Para baixar o script utilize o comando abaixo: wget http://scripts.4youstart.com/backupsql.sh Abaixo segue o código fonte do script. Será necessário editar algumas informações no mesmo antes de utilizá-lo. Utilize o nano para abrir o script: nano backupsql.sh Em vermelho estão as partes que deverão ser editadas para que o script funcione. Explicarei como configurar abaixo do código. #!/bin/bash # ------------------------------------ # Parte de configuração # ------------------------------------ #onde sera salvo o backup CAMINHO="/pasta-do-seu-servidor/backup" #nome que o script salvara o arquivo de backup .sql NOMEBACKUP="ot-backup-do-banco" #usuário mysql - normalmente root USER="root" #senha do mysql - normalmente mesma do phpmyadmin SENHA="suasenha" #banco do servidor BANCO="bancodoservidor" # ------------------------------------ # Execução do script - nao mexer # ------------------------------------ TEMPO="$(date +'%d-%m-%Y-%H-%M')" if [[ -z "$USER" || -z "$SENHA" || -z "$BANCO" ]]; then echo "Por favor preencha o usuário, senha e banco de dados nas configurações." else mysqldump -u$USER -p$SENHA $BANCO > $CAMINHO"/"$NOMEBACKUP"-"$TEMPO".sql" 3 variáveis deverão ser editadas para que o script funcione (em alguns casos 4). Edite sempre o valor entre aspas duplas, por exemplo: CAMINHO="editar_aqui". Abaixo estão as variáveis a serem editadas Linha 8: edite o caminho alterando para /pasta_do_seu_servidor/backup. Linha 11: não há necessidade de editar. Linha 14: por padrão os servidores utilizam o usuário root no banco. Mas caso seu servidor utilize outro usuário para se conectar ao mysql, altere essa variável. Linha 17: insira a senha de conexão ao MySQL (normalmente é a mesma que você usa para se conectar ao phpmyadmin, caso tenha dificuldade de encontrá-la, ela está no config.lua) Linha 20: insira o nome do banco de dados do servidor (caso tenha dificuldade de encontrar o nome do banco, ele está no config.lua) Feito isso, caso esteja utilizando o nano para editar o arquivo, aperte CTRL + X, em seguida aperte Y (ou S caso o sistema operacional esteja em português) e por fim pressione ENTER para salvar o arquivo. Agora, vamos configurar o cron para rodar o script. Vou ensinar como configurá-lo para rodar x vezes ao dia, em um outro tutorial ensino melhor a utilização do cron, caso queiram. Para isso, digite o comando abaixo: crontab -e Seu editor de texto padrão vai abrir um arquivo para editar. Vamos inserir uma linha nesse arquivo para que o cron funcione: 0 0,12 * * * /pasta_do_seu_servidor/backupsql.sh O código acima rodará o backup ás 00:00 e 12:00. Caso queira alterar isso, basta alterar os números em vermelho. Salve o arquivo de texto que abriu e pronto, seu backup automatizado está funcionando! Para se certificar e ter certeza que está tudo funcionando 100%, após 10 minutos do horário configurado para o cron, acesse a pasta em que seu servidor se encontra, em seguida acesse a pasta backup e verifique se há arquivos .sql nela. Cada backup será salvo como "ot-backup-do-banco-data-do-backup.sql". Fim! Espero que seja útil e até a próxima (Esse tutorial foi completamente escrito por mim. Qualquer cópia deve ser previamente autorizada e conter os devidos créditos.)
  12. Bom dia cidadãos do XTibia! Venho por meio desse pequeno e simples tutorial ensinar a aumentar a proteção do seu servidor contra invasões via SSH. Como sabemos, o SSH é o meio padrão de nos conectarmos ao servidor Linux remotamente, e caso alguém consiga acessar o seu servidor via SSH, tem total e pleno controle sobre o mesmo. Deste modo é importante deixá-lo o mais seguro possível! + Nesse tutorial não vou ensinar como utilizar SSH Keys, que é o meio mais seguro de se conectar ao SSH. Motivo: É bem mais complicado do que parece, logo, precisa de um conhecimento maior. Caso alguém queira, me avise que farei um tutorial separado. Mas fique tranquilo! Esse tutorial vai proteger seu SSH com eficiência! Vamos lá? Pré-requesitos: #01: Nesse tutorial vamos utilizar o nano para editar os arquivos. Normalmente o nano vem instalado nos servidores linux, porém, caso seu servidor não tenha o mesmo instalado, instale-o com o comando abaixo ou utilize o vim. -> Ubuntu/Debian apt-get install nano -> CentOS yum install nano 1. Altere a porta do seu SSH: 1.1. Utilize o nano para editar o arquivo de configuração do SSH. nano /etc/ssh/sshd_config 1.2. Altere a linha abaixo (aproximadamente linha 14): Procure por: #Port 22 Retire o # da variável e altere a porta para uma porta que não esteja sendo utilizada pelo seu servidor: Port 2020 Atenção! Não se esqueça de desbloquear a nova porta do SSH no seu firewall! Atenção! Não utilize portas como 80 e 7171 para o SSH, pois não funcionará uma vez que essas já estarão sendo utilizadas. + Não se esqueça de prestar atenção nas observações acima, pois caso esqueça de alguma delas você poderá ficar sem acesso ao seu SSH e precisará contatar seu suporte. 1.3. Saia do nano utilizando CTRL + X. Para salvar digite Y (para caso o sistema operacional esteja em inglês) ou S (para sistema operacional em porgutuês) e aperte ENTER. 1.4. Reinicie o SSH com o comando: service sshd restart Pronto! 2. Bloqueie o login pelo usuário root + Mas calma.. se eu bloquear o login pelo usuário root, como vou logar no SSH? Simples! Você vai criar um outro usuário sem permissão para nada, e usar ele pra logar no SSH, e depois você simplesmente alterna de conta. Assim, para invadir seu SSH o invasor precisará não só de 1 senha, mas sim de 2 senhas e 1 usuário! 2.1. Primeiro vamos adicionar um usuário com o comando: useradd usuario 2.2. Agora vamos definir a senha do usuário criado: passwd usuario + Ao usar esse comando você precisará digitar uma senha, apertar ENTER, digitá-la novamente e apertar ENTER de novo. + Esse novo usuário poderá executar certos comandos, mas terá permissões limitadas. 2.3. Abra uma nova conexão SSH e teste se você consegue logar com esse novo usuário criado. Caso consiga, avance no tutorial. 2.4. Agora, vamos novamente editar o arquivo de configuração do SSH. nano /etc/ssh/sshd_config Procure por (aproximadamente linha 43): #PermitRootLogin yes Substitua por: PermitRootLogin no 2.5. Reinicie o SSH com o comando: service sshd restart 2.6. Agora, quando for logar, faça da seguinte maneira: 2.6.1. Logue com o usuário que você criou. 2.6.2. Após logar com esse usuário, altere para o root com o comando: su - 2.6.3. Logado como root com sucesso! Pronto! 3. Utilize senhas complicadas: Essa dica parece simples, mas é extremamente eficaz! Um dos métodos mais comuns de invasão é o que tenta várias senhas por segundo (não vou falar o nome por motivos éticos, quero ajudar a proteger, não a atacar). Se sua senha for fácil e seu Firewall e/ou iptables estiver mal configurado, esse método vai funcionar. 3.1. Utilize o comando abaixo para alterar a senha do root. passwd 3.2. Evite senhas com nome, número de telefone e afins, como joao999 ou 33334444. Use senhas como: 4}rYT_2}hzTsRR? (essa senha foi gerada agora de maneira aleatória, por favor, não copiem essa senha, gerem outra - vai que alguém resolve fazer isso né.. ). Por enquanto é isso! Façam bom proveito! (Esse tutorial foi completamente escrito por mim. Qualquer cópia deve ser previamente autorizada e conter os devidos créditos.)
  13. Bom dia cidadãos do XTibia! Trago hoje um tutorial básico de como melhorar o desempenho do seu MySQL e deixar seu servidor ainda mais rápido! Esse tutorial não é tão básico, então recomendo que siga os passos atentamente. Vamos lá? Antes de tudo, vou listar os requisitos para que o tutorial funcione, ou seja, o que precisa estar instalado no servidor: unzip perl nano Caso algum não esteja instalado, basta rodar o comando apt-get install nome_do_requisito. Ainda antes de começar, é recomendável que façamos um backup do arquivo de configuração do MySQL com o seguinte comando: cp /etc/mysql/my.cnf /etc/mysql/my.cnf.bkp Caso algo aconteça, basta digitar os comandos abaixo para que a configuração volte para a que estava anteriormente: rm -rf /etc/mysql/my.cnf mv /etc/mysql/my.cnf.bkp /etc/mysql/my.cnf service mysql restart 1. Para começar o tutorial faremos o download do MySQLTuner, que é nada mais do que um arquivo em perl que gera um relatório de como está a configuração do seu MySQL hoje. mkdir /root/mysqltuner cd /root/mysqltuner wget https://github.com/major/MySQLTuner-perl/archive/master.zip unzip master.zip cd MySQLTuner-perl-master 2. Em seguida, vamos rodar o MySQLTuner para ver em quais pontos o MySQL pode ser otimizado. perl mysqltuner.pl O resultado deve ser semelhante ao abaixo: >> MySQLTuner 1.4.0 - Major Hayden <major@mhtx.net> >> Bug reports, feature requests, and downloads at http://mysqltuner.com/ >> Run with '--help' for additional options and output filtering [OK] Logged in using credentials from debian maintenance account. [OK] Currently running supported MySQL version 5.5.41-0+wheezy1 [OK] Operating on 64-bit architecture -------- Storage Engine Statistics ------------------------------------------- [--] Status: +ARCHIVE +BLACKHOLE +CSV -FEDERATED +InnoDB +MRG_MYISAM [--] Data in MyISAM tables: 57K (Tables: 32) [--] Data in InnoDB tables: 6M (Tables: 34) [--] Data in PERFORMANCE_SCHEMA tables: 0B (Tables: 17) [!!] Total fragmented tables: 35 -------- Security Recommendations ------------------------------------------- [OK] All database users have passwords assigned -------- Performance Metrics ------------------------------------------------- [--] Up for: 1d 1h 37m 12s (1M q [20.393 qps], 5K conn, TX: 606M, RX: 324M) [--] Reads / Writes: 5% / 95% [--] Total buffers: 192.0M global + 2.7M per thread (151 max threads) [OK] Maximum possible memory usage: 597.8M (5% of installed RAM) [OK] Slow queries: 0% (0/1M) [OK] Highest usage of available connections: 7% (11/151) [OK] Key buffer size / total MyISAM indexes: 16.0M/155.0K [OK] Key buffer hit rate: 100.0% (9K cached / 2 reads) [OK] Query cache efficiency: 74.7% (212K cached / 284K selects) [OK] Query cache prunes per day: 0 [OK] Sorts requiring temporary tables: 0% (0 temp sorts / 19K sorts) [!!] Joins performed without indexes: 596 [!!] Temporary tables created on disk: 45% (1K on disk / 3K total) [OK] Thread cache hit rate: 99% (13 created / 5K connections) [!!] Table cache hit rate: 16% (163 open / 1K opened) [OK] Open file limit used: 13% (134/1K) [OK] Table locks acquired immediately: 99% (1M immediate / 1M locks) [OK] InnoDB buffer pool / data size: 128.0M/6.0M [OK] InnoDB log waits: 0 -------- Recommendations ----------------------------------------------------- General recommendations: Run OPTIMIZE TABLE to defragment tables for better performance Enable the slow query log to troubleshoot bad queries Adjust your join queries to always utilize indexes When making adjustments, make tmp_table_size/max_heap_table_size equal Reduce your SELECT DISTINCT queries without LIMIT clauses Increase table_open_cache gradually to avoid file descriptor limits Read this before increasing table_open_cache over 64: http://bit.ly/1mi7c4C Variables to adjust: join_buffer_size (> 128.0K, or always use indexes with joins) tmp_table_size (> 16M) max_heap_table_size (> 16M) table_open_cache (> 400) Cada linha que estiver marcada como [OK] significa que o MySQL está bem configurado e otimizado. No final do relatório, o MySQLTuner descreve o que deve ser feito para que seu MySQL fique mais rápido do que nunca, logo após a linha "-------- Recommendations (...)". Caso você tenha um conhecimento no mínimo razoável, faça o que está descrito em "General recommendations". Infelizmente não há como eu explicar cada sugestão, pois cada servidor terá uma sugestão diferente. 3. Em "Variables to adjust" basta utilizar o nano para editar o arquivo de configuração do MySQL de acordo com a sugestão do MySQLTuner: nano /etc/mysql/my.cnf Em seguida, procure pelas variáveis que o script citou, como por exemplo join_buffer_size. Caso não exista, basta adicionar em uma linha, seguindo as recomendações do script, por exemplo, para "join_buffer_size (> 128.0K, or always use indexes with joins)": join_buffer_size = 128K Após ter feito todas modificações necessárias, basta reiniciar o MySQL (lembre-se de estar com seu OTServ desligado para isso): service mysql restart Atenção: Gostaria de ressaltar que o MySQLTuner gera estatísticas que permitem muito mais configurações e otimizações do que as citadas nesse tutorial, porém é recomendável que um profissional seja contatado para tal otimização. Ressalto ainda que o MySQLTuner gera relatórios específicos para cada máquina, ou seja, pode ser que seu relatório esteja completamente diferente do exemplo citado. Espero que ajude! Até a próxima (Esse tutorial foi completamente escrito por mim. Qualquer cópia deve ser previamente autorizada e conter os devidos créditos.)
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...