16 de ago de 2016

Habilitar reescrita de URL do Codeigniter 3 no Apache


Modificar .htaccess da raiz do Codeigniter para:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]


Modificar o config.php:

$config['index_page'] = '';
$config['uri_protocol'] = 'REQUEST_URI';
$config['url_suffix'] = '';


Habilidar mod_rewrite

a2enmod rewrite

Modificar apache2.conf.
<Directory /var/www/>
        Options FollowSymLinks
        AllowOverride All
        Require all granted

        <LimitExcept GET POST HEAD>
                deny from all
        </LimitExcept>
</Directory>

Reiniciar apache

/etc/init.d/apache2 restart

15 de jul de 2016

Dica - Logout Automático

Já aconteceu comigo, algumas vezes, de minha interface gráfica travar. Quando acontece isso, eu abro um TTY usando CTRL+ALT+F1, faço login como root e mato o Xorg. A interface gráfica volta ao normal e eu não preciso reiniciar.

O problema é que as vezes eu esqueço de fazer logout no TTY que tinha aberto, e ele fica logado como root. Então encontrei uma dica nesse site:

http://www.cyberciti.biz/faq/linux-tmout-shell-autologout-variable/

Basicamente você define uma variável chamada TMOUT com o a quantidade de segundos de inatividade a esperar antes de realizar um logout automático. Basta você editar o arquivo /root/.bashrc e incluir uma linha como abaixo:

TMOUT=30
readonly TMOUT
export TMOUT

Faça isso para todos os usuários que desejar. Assim, após 30 segundos de inatividade, a sessão será fechada.


Para evitar que o o gnome-terminal também feche após o tempo, coloque o seguinte código

TTY_TMP=$(tty)

if [[ "$TTY_TMP" == /dev/tty* ]] ; then
    TMOUT=30
    readonly TMOUT
    export TMOUT
fi



Até a próxima.

28 de mar de 2016

Resolvendo erro: WARNING: Your kernel does not support memory limit capabilities



Dica rápida. Ao tentar limitar a quantidade de memória utilizada por um container no Docker, me deparei com o seguinte erro:

WARNING: Your kernel does not support memory limit capabilities


Segue abaixo os passos para arrumar isso.

- Abra o arquivo /etc/default/grub com seu editor preferido
- Encontre a linha em que está escrito GRUB_CMDLINE_LINUX
- Faça-a ficar assim:

GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"


Após isso, execute um update-grub como root e reinicie a máquina.

Até a próxima.

2 de fev de 2016

Debian 7, DHCP, DNS e Squid




Esse post será um tutorial de como instalar o DHCP, DNS e Squid em um Debian 7. Sem muita enrolação, seguem os passos abaixo.


20 de nov de 2015

Dica rápida - ifconfig.pro

Às vezes necessitamos saber nosso ip público. Para fazer isso de forma bem rápida, podemos digitar o seguinte no terminal:

curl ifconfig.pro


Outras alternativas são:

ifconfig.co
ifconfig.me

Mas esses outros dois geralmente são mais lentos.

13 de nov de 2015

Reparando GRUB após atualizar o Debian sem Live CD




Já fazia um tempo que eu estava passando por problemas no meu Debian 7 (wheezy). O principal dele era a libstdc++. Alguns programas que eu tentava instalar requeriam uma versão dessa biblioteca mais recente da que eu tinha instalada, mas eu estava com bastante medo de "forçar" uma atualização e acabar quebrando um monte de pacotes. Então resolvi que iria fazer o upgrade pro Debian 8 (jessie). Então eu fiz o upgrade, mas quando reiniciei, me deparei com uma linda tela do GRUB Rescue. Como estava sem nenhum Live CD e não queria esperar até o próximo dia, resolvi tentar resolver o problema por ali mesmo. Seguem abaixo os passos que realizei.

7 de out de 2015

DDoS: Como funciona o Smurf Attack


Um tipo de ataque DDoS conhecido é o Smurf Attack. A técnica consiste em enviar um pacote do tipo ICMP Echo Request (ping) para um endereço de broadcast com o endereço IP do Remetente "spoofado" (modificado para o endereço ip do nosso alvo). Isso vai fazer com que esse pacote seja retransmitido para todos os hosts ativos na rede. Ao receber as requisições, os hosts enviam um ICMP Echo Reply (a resposta do ping) para o endereço IP que "spoofamos". Isso vai fazer com que o nosso alvo seja inundado por pacotes ICMP Echo Reply. A imagem abaixo ilustra o processo