Автоматическая перекомпиляция ядра для исправлений безопасности?

В основном существует два способа переадресации портов: Первый - это то, что сейчас делает ваш pfSense («полный» NAT, conntrack в Linux): когда новое соединение инициируется клиентом, pfSense создает новое сопоставление в своей таблице NAT, заменяет исходный адрес своим собственным, при необходимости меняет исходный порт и отправляет измененный пакет на ваш веб-сервер. Ваш веб-сервер автоматически отправит свои ответы машине pfSense, которая затем может снова поменять поля местами и отправить пакет клиенту. Преимущество этого подхода в том, что вашему веб-серверу не нужно об этом знать, он просто работает. Насколько я помню, вы можете отключить это в pfSense, если переключите режим NAT на «AON» и отключите NAT для (webserverip, targetport).

Ваш потребительский маршрутизатор выполнил простую переадресацию портов (DNAT в Linux): по прибытии пакета он просто поменял местами адрес назначения и отправил пакет на ваш веб-сервер. Поскольку пакет теперь по-прежнему имеет реальный адрес отправителя, веб-сервер может видеть реальный адрес клиента. К сожалению, когда он отправляет ответ, он помещает свой собственный (частный) адрес в поле источника, которое маршрутизатор должен заменить на ваш общедоступный IP-адрес на выходе (SNAT в Linux). Поскольку веб-сервер напрямую адресует пакет клиенту, маршрутизатор может сделать это, только если он также является шлюзом по умолчанию! (или когда вы настраиваете довольно забавные политики маршрутизации на своем веб-сервере)

3
11.11.2015, 21:48
1 ответ

Вы уверены, что вам нужна автоматическая перекомпиляция ядра? Если вы используете репозитории Ubuntu для загрузки обновлений безопасности, компилировать их нет необходимости. В противном случае этот момент отсутствует в вашем вопросе.

Есть несколько способов автоматически скомпилировать ядро. Например, посмотрите эту статью

Я добавляю цитату со страницы:

# Automated Kernel Recompilation By Avinash Shankar 
# Note: This was done under RH-7.3 so plz verify the paths
# Warning: Please run the Script under Xwindows

#going to kernel sources directory:
echo Entering Kernel Source Directory................
cd /usr/src/linux-2.4/

#Cleaning dep files and objs:
echo Cleaning up Junk files..................
make clean

#Configuring your New Kernel:
echo Entering Graphical kernel config.....................
make xconfig

#Making the dependencies files:
echo Making the dependecies ..................
make dep

#Backing up old module files
echo All your module files and system.map files backed up ................ 
mv /lib/modules/2.4.18-3/modules.dep modules.dep.old
mv /usr/src/linux-2.4/System.map System.map.old

#Make a compressed kernel:
echo Compressing the kernel image ..............................................
make bzImage

#Copy the Image to /boot directory
echo Copying the bzImage to /boot Directory......................................................
cp /usr/src/linux-2.4/arch/i386/boot/bzImage /boot

#Make the modules :
echo Compiling the Modules ...............................
make modules

#Make the Installable modules used by the new kernel
echo Making the modules executable ...................................
make modules_install

#copy the System.map file to /boot
echo Copying System.map file to /boot ....................................
cp /usr/src/linux-2.4/System.map /boot

echo Thats it you are finished ! Cool now edit the lilo.conf or your grub.conf file
echo located in the /boot directory. Copy the kernel entries and replace kernel with
echo the bzImage file and the initrd entry with System.map

-----------------------------------------------------------------------------------------------

Также в наши дни Live Kernel Patching - это то, что облегчит вашу жизнь. К сожалению, это справедливо только для Ubuntu 16.04

. С момента выпуска ядра Linux 4.0 около 18 месяцев назад пользователи могли исправлять и обновлять свои пакеты ядра без перезагрузки.

0
27.01.2020, 21:40

Теги

Похожие вопросы