3 votes

Serveur Ubuntu 12.04 : Comment configurer le pare-feu lors de l'installation ?

Je suis instructions pour automatiser l'installation d'Ubuntu Server 12.04 en utilisant kickstart. Il fonctionne bien pour partitionner automatiquement les disques, sélectionner les langues, etc. Cependant, il ne configure pas le pare-feu. Il s'agit d'un problème connu .

Fonctionner sans pare-feu n'est pas une bonne idée. Comment configurer le pare-feu UFW lors de l'installation pour empêcher tout accès non autorisé au serveur ?

Le fichier kickstart que j'ai ressemble à ce qui suit (avec seulement le nom d'utilisateur modifié)

#System language
lang en_US
#Language modules to install
langsupport en_US
#System keyboard
keyboard us
#System mouse
mouse
#System timezone
timezone America/Los_Angeles
#Root password
rootpw --disabled
#Initial user
user johnd --fullname "John Doe" --iscrypted --password <omitted>
#Reboot after installation
reboot
#Use text mode install
text
#Install OS instead of upgrade
install
#Use CDROM installation media
cdrom
#System bootloader configuration
bootloader --location=mbr 
#Clear the Master Boot Record
zerombr yes
#Partition clearing information
clearpart --all --initlabel 
#Disk partitioning information
part / --fstype ext4 --size 1 --grow 
part swap --recommended 
#System authorization infomation
auth  --useshadow  --enablemd5 
#Network information
network --bootproto=dhcp --device=eth0
#Firewall configuration
firewall --enabled --trust=eth0 --ssh 
#Do not configure the X Window System
skipx

UPDATE

J'ai ajouté ce qui suit dans le fichier ci-dessus :

%post
mkdir /usr/sample
ufw enable
ufw allow 22

Après l'installation, le répertoire /usr/sample existe, mais le pare-feu est toujours désactivé et l'accès au port 22 n'est pas autorisé.

3voto

fboaventura Points 1127

Vous pouvez utiliser le %post (post-installation) du fichier kickstart pour exécuter les règles du pare-feu, ou même créer un pare-feu de base script.

J'ai trouvé, sur ce sitio un exemple d'utilisation de la configuration post-installation. Et aquí vous avez une autre explication sur la façon d'obtenir ce que vous voulez.

EDITAR : %post suggestion :

%post
mkdir /usr/sample
sed -i 's/^\(ENABLE=\s*\).*$/\1yes/' /etc/ufw/ufw.conf
sed -i 's/^COMMIT/-A ufw-before-input -p tcp --dport 22 -j ACCEPT\n\nCOMMIT/' /etc/ufw/before.rules
ufw status verbose > /usr/sample/ufw_out.log

Essayez et voyez si cela fonctionne. Peut-être un peu trop, mais si ça marche, ça peut être une bonne solution de rechange.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X