В прошлой статье я устанавливал на одноплатный мини сервер OrangePi операционную систему Debian, и так как я использую на своем мини сервере программу Fail2ban, а при сборке ядра Linux был не включен параметр multiport потому Fail2ban не работает. Вернее можно отключить iptables-multiport и указать iptables, но тогда банить боты по портам не получится, а только по IP.
Для того, чтобы Iptables работал в полноценном режиме мы пересоберем и установим скрипт и ядро Linux от Loboris с включенным multiport. Также я выложу архив собранного ядра и скриптов для всех поддерживаемых плат OrangePi.
Устанавливаем необходимые программы для сборки ядра выполнив команду:
aptitude install lib32ncurses5 lib32ncurses5-dev lib32z1 u-boot-tools lib32stdc++6 git build-essential fakeroot
Скачиваем исходники ядра выполнив команду:
git clone https://github.com/loboris/OrangePI-Kernel.git
Переходим в скачанную папку и запускаем конфигурирование для выбора параметров ядра Linux
cd OrangePI-Kernel ./config_linux_kernel.sh
Включаем Multiport в iptables:
Необходимо отметить параметр кликнув на поле multiport два раза пробелом, чтобы поставить звездочку:
Отмеченный параметр multiport:
Если Вам необходимо отметить для компиляции еще какой необходимый параметр, можете отметить аналогично. После включения необходимых параметров, необходимо выйти из конфигуратора выбрав на Exit и нажав Enter. На запрос сохранить конфигурацию выбираем Yes и нажимаем Enter:
Запускаем компиляцию ядра для всех поддерживаемых плат OrangePi:
./build_linux_kernel.sh all
Чтобы собрать script.bin необходимо еще установить sunxi-tools который есть в Debian Jessie.
Устанавливаем командой:
aptitude install sunxi-tools
Если у Вас для сборки в наличии Debian Wheezy, необходимо установить пакет который есть в дистрибутиве Debian Jessie. Добавляем репозиторий от Jessie выполнив команду:
echo 'deb http://mirror.yandex.ru/debian jessie main contrib non-free' >> /etc/apt/sources.list
Обновляем репозиторий и устанавливаем unxi-tools выполнив команду:
aptitude install unxi-tools -t jessie
На первый запрос установщика, когда система предлагает удалить много пакетов, нажимаем n и на следующем этапе, где предлагает обновить соглашаемся нажав Y:
На следующие вопросы отвечаем положительно нажимаем Y:
Выбираем No и нажимаем Enter:
На запрос конфигуратора надимаем Enter:
Запускаем сборку файла скрипта выполнив команду:
./build_scripts.sh
В папке build находятся ядро и скрипты, которые необходимо переименовать и поместить в директорию /media/boot/ на нашей плате, а также папку.
Также в папках выбранной платы OrangePi: build/lib.opi2/modules/ и build/lib.opiplus/modules/ находятся модули скомпилированного нового ядра 3.4.39-02-lobo, эту папку от Вашей платы необходимо скопировать на плату в директорию /lib/modules/
Для установки ядра на мини сервер в моем случае OrangePi Plus, переименовываем ядро выполнив:
mv uImage_OPI-PLUS uImage
Далее переименовываем файл скрипта, у меня монитор поддерживает разрешение 1080, потому переименовываю скрипт:
mv script.bin_OPI-PLUS_1080p50_hdmi script.bin
Эти файлы копируем в папку на плате /media/boot/
После перезагрузки проверяем версию ядра и версию ядра в папке /lib/modules/:
uname -r
3.4.39-02-lobo
ls /lib/modules/
3.4.39-02-lobo
Скачать перекомпилированное ядро и файлы скрипта можно по ссылке с облака
С Вами был Сергей Лазаренко.
Сделаем небольшой перерыв и посмотрим небольшой видео ролик:
Add new comment