Hardening, se adequando as normas ISO 27000
O intuito deste artigo é orientar com um script simples como realizar um simples hardening de servidores baseados em Debian, podendo ser ajustado a outras versões. Lembrando que alguns pontos da ISO citada requerem avaliação por parte do administrador, pois cada servidor rodará vários tipos de serviços, devendo serrem desabilitados manualmente o que pode ser desnecessário
[ Hits: 5.649 ]
Por: Rogerio Domingos de Freitas em 19/10/2021
#!/bin/bash
case $1 in
# restringir partições
start)
mount -o remount,rw,nosuid /usr
mount -o remount,rw,noexec,nosuid /tmp
mount -o remount,rw,noexec,nosuid /var
mount
echo ""
echo ""
echo ""
echo "ATIVAR RESTRICAO NAS PARTICOES"
echo ""
echo ""
echo ""
;;
stop)
mount -o remount,rw,exec /usr
mount -o remount,rw,exec /tmp
mount -o remount,rw,exec /var
mount
echo "DESATIVAR RESTRICOES NAS PARTICOES"
;;
inicio)
$0 start
#backup de arquivos
#Debian anterior ao 10, onde ainda usava o /etc/inittab, descomentar e comentar as de Debian 10
#tar -czvf /hard/copias.tar /etc/securetty /etc/ssh/sshd_config /etc/inittab /etc/profile /etc/fstab /etc/passwd
#Debian 10
tar -czvf /etc/hard/copias.tar /etc/securetty /etc/ssh/sshd_config /etc/profile /etc/fstab /etc/passwd
echo ""
echo ""
echo ""
echo "Realizado backup dos arquivos que serão alterados"
echo ""
echo ""
echo ""
#Desabilitar ctrl+alt+del
#Debian anterior ao 10, onde ainda usava o /etc/inittab, descomentar e comentar as de Debian 10
#sed -e '/shutdown/d' /etc/inittab | tee /etc/inittab
#echo "ca:12345:ctrlaltdel:/sbin/echo "Este recurso foi desabilitado"" >> /etc/inittab
#Debian 10
systemctl mask ctrl-alt-del.target
systemctl daemon-reload
echo ""
echo ""
echo ""
echo "DESABILITAR CTRL+ALT+DEL"
echo ""
echo ""
echo ""
#config do ssh, alterar porta do ssh, a gosto do fregues
sed -e /Port/s/22/1433/g -e /PermitRootLogin/s/yes/no/g /etc/ssh/sshd_config| tee /etc/ssh/sshd_config
cp /etc/hard/issue /etc/issue.net
cp /etc/hard/issue /etc/issue
echo ""
echo ""
echo ""
echo "Configurado ssh"
echo ""
echo ""
echo ""
#Restringir apenas três terminais para acesso
#Debian anterior ao 10, onde ainda usava o /etc/inittab, descomentar e comentar as de Debian 10
#sed -e '/respawn/s/4:/#4:/g' -e '/respawn/s/5:/#5:/g' -e '/respawn/s/6:/#6:/g' /etc/inittab | tee /etc/inittab
#Debian 10
echo "NAutoVTs=3" >> /etc/systemd/logind.conf
echo ""
echo ""
echo "RESTRINGIR O USO DE APENAS TRES TERMINAIS"
echo ""
echo ""
echo ""
#Desabilitar Suid bit
chmod -s -R /
chmod +s /usr/bin/passwd
chmod +s /bin/su
echo ""
echo ""
echo ""
echo "Suid bit desativado"
echo ""
echo ""
echo ""
#Limite de inatividade de 5 minutos nos terminais
echo "TMOUT=300" >> /etc/profile
echo ""
echo ""
echo ""
echo "Ativado limite inatividade de 5 minutos"
echo ""
echo ""
echo ""
#Remover shells dos usuários
for USER in $(cat /etc/passwd| cut -f 1 -d ":"| grep -v root| grep -v freitasrdf)
do
usermod -s /bin/false $USER
done
echo ""
echo ""
echo ""
echo "Removidos os shells dos usuarios"
echo ""
echo ""
echo ""
# Não permitir login do root
sed -e '/tty/d' /etc/securetty | tee /etc/securetty
#
echo "Desabilitado login pelo root"
;;
*) echo "erro use $0 {start|stop|inicio}"
exit 0
esac
################# A T E N C A O ################# Você esta tentando logar em um servidor de administração do Departamento de TI. Todas as tentativas e os acessos estão sendo monitorados.
Mandrake Firewall - Firewall com interface amigável
Verificação de integridade de arquivos - Ferramenta OSSEC
PaX: Solução eficiente para segurança em Linux
Desafio: Análise Forense Computacional - Forense em Tráfego de Rede [Resolvido]
Notificação Fail2ban pelo Telegram
SAMSB - Snort + Apache2 + MySQL + Snorby e BarnYard2 no Debian
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Script de montagem de chroot automatica









