Ubuntu Server 12.04: Como se configura o firewall durante a instalação?

3

Estou seguindo as instruções para automatizar a instalação do Ubuntu Server 12.04 usando o kickstart. Ele funciona bem para particionar automaticamente as unidades, selecionar idiomas etc. No entanto, ele não configura o firewall. É um problema conhecido .

Correr sem um firewall não é uma boa ideia. Como se configura o firewall UFW durante a instalação para impedir o acesso não autorizado ao servidor?

O arquivo de kickstart que eu tenho é o seguinte (com apenas o nome de usuário alterado)

#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

Eu adicionei o seguinte arquivo acima:

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

Após a instalação, o diretório /usr/sample existe, mas o firewall ainda está desabilitado e o acesso à porta 22 não é permitido.

    
por bloudraak 13.01.2013 / 01:05

1 resposta

3

Você pode usar a parte %post (pós-instalação) do arquivo de kickstart para executar as regras de firewall, ou até mesmo criar um script de firewall básico.

Eu encontrei, neste site , um exemplo de uso da configuração pós-instalação. E aqui você tem outra explicação de como conseguir o que deseja.

EDITAR : %post sugestão:

%post
mkdir /usr/sample
sed -i 's/^\(ENABLE=\s*\).*$/yes/' /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

Tente e veja se isso funcionará. Talvez um pouco mais, mas se isso funcionar, pode ser uma boa solução.

    
por 13.01.2013 / 04:49