Melhorando a segurança do Linux

Publicado por Marcos Carraro em 02/05/2011

[ Hits: 12.176 ]

 


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

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

Apache autenticando primeira página "/"

Exploits - Site com vários

Squid com autenticação

Segmentando rede (VLANs) + DHCP por VLAN - CentOS

Leitura recomendada

Projeto Root - Senhas seguras com o KeePass

Squid - Bloqueando conexões externas definitivamente

Cartilha de segurança

Shellshock (Slackware): Falha de segurança grave no bash [Resolvido]

Como instalar o antivirus Bitdefender pra Linux Ubuntu / Elementary / Debian e derivados

  

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