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: 4.919 ]

Por: Rogerio Domingos de Freitas em 19/10/2021


Script hardening.sh



#!/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

Arquivo issue:

#################
  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.



Página anterior    

Páginas do artigo
   1. Introdução
   2. Script hardening.sh
Outros artigos deste autor

Mandrake Firewall - Firewall com interface amigável

Leitura recomendada

5 comandos que ninguém nunca deve executar no Linux

SysLog: Sistema de log do Linux

Bloqueio de usuários com página de aviso

Administrando Linux via web (parte 1)

Instalação do Fail2Ban no CentOS 7

  
Comentários
[1] Comentário enviado por removido em 19/10/2021 - 10:30h

Sugestão.

Debian reforçado com CIS (Ansible CIS) => https://github.com/dbernaci/CIS-Debian10-Ansible

Nota: Esta função fará mudanças no sistema que podem quebrar coisas.

[2] Comentário enviado por cizordj em 19/10/2021 - 13:00h

Por que dá erro 404 quando eu vou acessar o seu perfil?
https://www.vivaolinux.com.br/~freitasrdf

[3] Comentário enviado por maurixnovatrento em 21/10/2021 - 11:19h


bacana.

___________________________________________________________
[code]Conhecimento não se Leva para o Túmulo.
https://github.com/MauricioFerrari-NovaTrento [/code]

[4] Comentário enviado por Shealey446 em 09/11/2021 - 06:47h


Satisfied to consider your to be as I would hypothesize I have an equivalent issue, I am comparably befuddled and requiring light on this indistinguishable issue. Need assistance.

https://www.mcdvoice.tips/


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts