Melhorando a segurança do Linux

Publicado por Marcos Carraro em 02/05/2011

[ Hits: 13.208 ]

 


Melhorando a segurança do Linux



Buenas pessoal.

Após um tempo sem postar nada no fórum, venho trazer uma dica show de bola.

Como melhorar a segurança do seu servidor, trabalhando com permissões, exclusão de usuários, entre outras.

Muito simples, mas irá ajudar a melhorar algumas coisas.

Requerimentos:

SO: Debian 5 netinstall (:

BIOS

Nada melhor do que ter uma senha na configuração da bios? Correto. Então sempre configure uma senha na bios, assim impedimos que alguém, impeça o nosso servidor de iniciar, ou desative placas de rede...

GRUB

Grub sempre é uma armadilha, onde podemos iniciar o sistema sem senha, com o usuário root, e tudo mais. Sendo assim, vamos configurar uma senha no GRUB.

Execute no terminal:

# grub-md5-crypt

Irá pedir que digite uma senha, vá em frente. Vai imprimir na tela como resultado a senha criptografada, no nosso caso #000111AASDADXZ.

Feito isso vamos editar a entrada do GRUB.

# vim /boot/grub/menu.lst

Procure algo com password, caso não encontre, jogue logo abaixo do timeout:

password --md5 #000111AASDADXZ

IPV6

Só para garantir que estará fechado tudo para entrada do protocolo IPV6 vamos desabilitar o serviço.

# vim /etc/sysctl.conf

Adicione esta linha ao final do arquivo:

net.ipv6.conf.all.disable_ipv6 = 1

Mensagem pós login

Após o login o Linux tem por costume mostrar aquela mensagem chata, com muita informação, prefiro deixar bem simples, então edite os arquivos.

# vim /etc/motd
# vim /etc/motd.tail

Escreva o que quiser ali dentro.

Mensagem antes do login

Sim, eu não gosto que fiquem sabendo que servidor é, que distro, e tudo mais, prefiro ocultar tudo que for informação.

# vim /etc/issue
# vim /etc/issue.net


Faça o que tiver vontade, coloque que o servidor esta armado com uma 12, que ele irá explodir caso erre a senha...

Melhorar a segurança do login

Para ter um login mais protegido, caso ele consiga chegar aqui é claro...

# vim /etc/login.defs
  • LOGIN_RETRIES: Definição do número de tentativas de login
  • LOGIN_TIMEOUT: Tempo de espera para nova tentativa de login, caso tenha errado senha/user
  • PASS_MIN_LEN: Tamanho da senha, minimo por padrão é 5.
  • LOG_UNKFAIL_ENAB: Grava no arquivo de log /etc/var/log/faillog os usuários desconhecidos que tentarem se logar sem sucessso
  • LOG_OK_LOGINS: Ativa log dos logins com sucesso

Alguma coisa em geral

# vim inittab

Procure por...

#The default runlevel (Especifica em qual run-level o Debian deve iniciar (run- level 6 modo gráfico) (run-level 3 modo texto))
id:3:initdefault:

# What to do when CTRL-ALT-DEL is pressed: Comente esta linha, para desabilitar a opção de reiniciar quando apertado CTRL-ALT-DEL
ca:12345:ctrlaltdel:/sbin/shutdown -t1 -a -r now

Procure por esta linha, irá encontrar 6 linhas iguais, desabilite algumas, pois são as nossas tty, deixe apenas três, pois se apagar todos, não consegue se logar no Linux.

1:2345:respawn:/sbin/getty 38400 tty1

Após configurar tudo digite no terminal:

# init q

A melhor parte

Caso o root inicie todos os serviços, porque deixar permissão 777 para todos??? Então, vamos dar permissão especial a eles:

# chmod 500 /etc/init.d/*

Removendo alguns usuários estranhos

Não sei porque causas d'água, mas em um servidor não seria legal ter um usuário game, news...

# cat /etc/passwd

Procure pelos usuários estranhos, mas com cuidado para não remover um usuário importante.

# userdel game
# userdel lp
# userdel mail
# userdel news
# userdel uucp
# userdel backups
# userdel list
# userdel irc


root está se logando em qualquer tty?

Vamos desativar algumas tty para o root não poder se logar.

# vim /etc/securetty

Remova tudo que tiver "tty" e "vc". Isso ajudará o nosso mestre root ficar seguro, pois obriga ao usuário utilizar do su para subir.

Algumas permissões nos arquivos

Para manter uma privacidade melhor do nosso Linux, usuários, configurações, vamos dar permissão 500, pois estes arquivos raramente são editados.
  • /etc/passwd
  • /etc/group
  • /etc/shadow
  • /etc/gshadow
  • /etc/service
  • /etc/sysctl.conf
  • /etc/inittab
  • /etc/motd
  • /etc/motd.tail
  • /etc/issue
  • /etc/login.defs
  • /etc/sysctl.cof
  • /etc/logrotate.conf
  • /etc/securetty
  • /etc/shells

Pessoal, fica a dica, o material encontrei no VOL algumas coisas, mas a maioria foi no Google.

Espero que gostem, e sempre que possível contribuam com novidades, pois todos procuram melhorar a segurança, mas nem todos gostam de passar adiante algumas dicas.

Abraços galera.

att Marcos Carraro

Outras dicas deste autor

Extensão bcompiler no PHP 5.3 - Habilitando com exemplos

Gerenciar Squid via web com Carraro DashBoard

MySQL + phpMyadmin gerenciando múltiplos domínios

Trocar senha do webmin via console

Montar .ISO .NRG e converter .NRG para .ISO no Ubuntu 10.04

Leitura recomendada

Ubuntu 11.10 - Manter Limpo o Histórico de Documentos Recentes

Bloqueando internet para certos usuários no Ubuntu

Imagem do Windows XP virtual para testes de segurança

Novo recurso com o nmap

Bloqueando totalmente o MSN com Squid + Iptables

  

Comentários
[1] Comentário enviado por knightgsts em 02/05/2011 - 10:25h

wget ftp://ftp.openbsd.org/pub/OpenBSD/4.9/i386/install49.iso

e seja feliz !

[2] Comentário enviado por mbcm94 em 17/08/2011 - 19:01h

show de bola cara..... você acha que só por ser openbsd está seguro???

[3] Comentário enviado por JohnRobson em 22/08/2011 - 17:59h

Um excelente artigo, parabéns.

[4] Comentário enviado por marcoscarraro em 22/08/2011 - 19:16h

opa,

Valeu, por estar lendo EHHEHE.

No meu blog tem mais material, logo irei postar um hardering para o CentOS distro que estou me especializando.

marcoscarraro.blogspot.com

abraços Marcos Carraro



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts