Назад | Перейти на главную страницу

Ubuntu Server 12.04: как настроить брандмауэр во время установки?

я следую инструкции для автоматизации установки Ubuntu Server 12.04 с помощью кикстарта. Он хорошо работает для автоматического разбиения дисков, выбора языков и т. Д. Однако он не настраивает брандмауэр. Это известная проблема.

Работать без брандмауэра - не лучшая идея. Как настроить брандмауэр UFW во время установки, чтобы предотвратить несанкционированный доступ к серверу?

Файл кикстарта, который у меня есть, выглядит следующим образом (с измененным только именем пользователя)

#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

ОБНОВИТЬ

Я добавил следующее в файл выше:

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

После установки каталог /usr/sample существует, но брандмауэр по-прежнему отключен и доступ к порту 22 запрещен.

Вы можете использовать %post (после установки) часть файла кикстарта для запуска правил брандмауэра или даже создания базового скрипта брандмауэра.

Я нашел на этом сайт пример использования настройки после установки. И Вот у вас есть другое объяснение того, как достичь того, чего вы хотите.

РЕДАКТИРОВАТЬ: %post предложение:

%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

Попробуйте и посмотрите, сработает ли это. Может быть, немного больше, но если это сработает, это может быть хорошим решением.