Вопрос или проблема
Я хочу запустить веб-сервер на своем Raspberry Pi 1B в домашней сети, поэтому я хочу убедиться, что программное обеспечение обновлено, чтобы минимизировать риск безопасности. Я рассматривал возможность использования lighttpd, и он у меня заработал, но я смог установить только версию 1.4.69 через apt, когда последняя версия – 1.4.76. Изучая журналы изменений, я заметил, что есть некоторые исправления уязвимостей, которые мне хотелось бы иметь в своей установке.
Я проверил несколько источников, и все они согласны с тем, что вы не можете просто установить новую версию из apt, потому что их необходимо вручную добавлять в apt из исходных репозиториев. Я мог бы собрать из исходников, но было бы неплохо этого избежать. Но затем я наткнулся на ответ на этот вопрос https://askubuntu.com/questions/970267/how-to-upgrade-lighttpd-1-4-33-to-1-4-47-on-ubuntu-14-04, в котором говорилось, что вы можете проверить, были ли исправления безопасности добавлены к более старой версии, доступной в apt.
Как мне проверить, были ли исправления безопасности из версий между 1.4.69 и 1.4.76 добавлены в 1.4.69, установленную через apt?
Другая потенциально относящаяся информация
Linux raspberrypi 6.6.51+rpt-rpi-v6 #1 Raspbian 1:6.6.51-1+rpt3 (2024-10-08) armv6l GNU/Linux
/etc/apt/sources.list
:
deb [ arch=armhf ] http://raspbian.raspberrypi.com/raspbian/ bookworm main contrib non-free rpi
pi@raspberrypi:~ $ apt show lighttpd
Package: lighttpd
Version: 1.4.69-1
Priority: optional
Section: httpd
Maintainer: Debian lighttpd maintainers <[email protected]>
Installed-Size: 814 kB
Provides: httpd, httpd-cgi, lighttpd-mod-accesslog, lighttpd-mod-ajp13, lighttpd-mod-auth, lighttpd-mod-authn-file, lighttpd-mod-cgi, lighttpd-mod-dirlisting, lighttpd-mod-extforward, lighttpd-mod-proxy, lighttpd-mod-rrdtool, lighttpd-mod-sockproxy, lighttpd-mod-ssi, lighttpd-mod-status, lighttpd-mod-userdir, lighttpd-mod-vhostdb, lighttpd-mod-wstunnel
Pre-Depends: init-system-helpers (>= 1.54~)
Depends: libc6 (>= 2.36), libcrypt1 (>= 1:4.1.0), libnettle8, libpcre2-8-0 (>= 10.22), libxxhash0 (>= 0.6.5), media-types | mime-support, systemd-sysv | lsb-base
Recommends: spawn-fcgi, perl:any, lighttpd-mod-deflate, lighttpd-mod-openssl
Suggests: openssl, php-cgi, php-fpm (>= 2:7.4), apache2-utils, lighttpd-doc, lighttpd-mod-webdav, lighttpd-modules-dbi, lighttpd-modules-lua
Conflicts: lighttpd-mod-geoip, lighttpd-mod-trigger-b4-dl
Homepage: https://www.lighttpd.net/
Download-Size: 306 kB
APT-Sources: http://raspbian.raspberrypi.com/raspbian bookworm/main armhf Packages
Description: fast webserver with minimal memory footprint
lighttpd is a small webserver and fast webserver developed with
security in mind and a lot of features.
It has support for
* CGI, FastCGI and SSI
* virtual hosts
* URL rewriting
* authentication (plain files, htpasswd, LDAP)
* transparent content compression
* conditional configuration
* HTTP proxying
and configuration is straight-forward and easy.
Ответ или решение
Чтобы проверить, содержатся ли обратно портированные исправления безопасности в устаревальной версии пакета, таком как lighttpd 1.4.69, вместо более новой версии 1.4.76, вам следует следовать нескольким шагам, которые помогут вам получить необходимую информацию.
1. Изучите Историю Изменений
Первым шагом является ознакомление с историей изменений (changelog) между версиями. Вы можете найти changelog для lighttpd на официальном сайте проекта или в репозитории Debian. Это даст вам полное представление о том, какие изменения и исправления безопасности были внесены в версиях 1.4.70, 1.4.71, 1.4.72 и т. д.
2. Проверка на Наличие Обратно Портированных Исправлений
Для проверки того, были ли исправления безопасности обратно портированы в вашу текущую версию, выполните следующие действия:
-
Откройте changelog для вашей установленной версии. В большинстве дистрибутивов Linux это можно сделать через терминал:
apt changelog lighttpd
Эта команда выведет список изменений и исправлений, внесённых в последнюю версию пакета, доступную в репозитории.
-
Сравните изменения. Перейдите в changelog для более новых версий и найдите упоминания об исправлениях безопасности. Если изменения касаются той же уязвимости и в changelog вашей версии указано, что она исправлена, то можно с уверенностью сказать, что исправление было обратно портировано.
3. Использование Системного Инструмента для Проверки Уязвимостей
Существуют инструменты, такие как apt-listbugs
или usn-db
, которые могут помочь вам отслеживать уязвимости определённых пакетов. Установите и настройте один из этих инструментов, чтобы автоматически получать уведомления о проблемах с безопасностью в ваших установленных пакетах.
sudo apt install apt-listbugs
После установки вы сможете получить информацию о текущих уязвимостях, используя:
apt-listbugs list lighttpd
4. Рассмотрите Варианты Обновления
Если вы обнаружите, что исправления безопасности не были обратно портированы, вам может потребоваться рассмотреть возможность обновления до более новой версии пакета. Вы можете это сделать несколькими способами:
-
Подключить альтернативный репозиторий. Некоторые пользователи создают собственные репозитории с обновлёнными версиями пакетов. Убедитесь, что вы доверяете этому репозиторию прежде чем добавлять его.
-
Сборка из исходников. Если вы хотите сами контролировать, какие фиксированные версии установить, вы можете загрузить исходный код с GitHub и собрать его вручную:
wget https://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.76.tar.gz tar -xzf lighttpd-1.4.76.tar.gz cd lighttpd-1.4.76 ./configure make sudo make install
5. Проверьте После Обновления
После обновления или установки новой версии пакета, убедитесь, что у вас актуальные версии и все патчи установлены. Для этого повторите процесс проверки версии и changelog.
Заключение
Следуя этим шагам, вы сможете убедиться, что версия lighttpd, установленная на вашем Raspberry Pi, содержит все необходимые исправления безопасности. Если исправления не были обратно портированы, рассмотрите возможность обновления, чтобы защитить свой веб-сервер от потенциальных уязвимостей. Ваше внимание к обновлениям и безопасности программного обеспечения является важным шагом на пути к защите вашей домашней сети.