На момент написания (март 2026) во всех актуальных версиях Debian (11, 12, 13) доступен Apache 2.4.66 из стандартных репозиториев. Обычное обновление через apt upgrade уже даёт вам эту версию. Однако есть сценарии, когда нужно перейти на пакеты из репозитория Ondrej Sury: если вы хотите более частые обновления (не дожидаясь security-обновлений Debian), или если на сервере уже используются другие пакеты Sury (например, PHP). Главные сложности для новичка: не перепутать способы добавления репозитория (extrepo vs ручной), не создать конфликт Signed-By (не использовать оба способа одновременно), а также правильно настроить UFW после обновления.
💡 В этом руководстве вы обновите Apache на Debian тремя способами: через стандартные репозитории Debian (рекомендовано для большинства), через extrepo (Sury) и ручным добавлением репозитория Sury. Вы также узнаете, как проверить версию, настроить UFW и решить типичные проблемы.
В этой статье вы узнаете:
- Как обновить Apache из стандартных репозиториев Debian
- Как перейти на пакеты Apache из репозитория Ondrej Sury через
extrepo - Как перейти на пакеты Apache из репозитория Sury вручную (DEB822)
- Как проверить, из какого источника установлен Apache
- Как настроить UFW после обновления
- Как решить типичные проблемы: конфликт Signed-By, порт уже занят, отсутствие модулей
Для кого: администраторы веб-серверов, которые хотят обновить Apache на Debian 11, 12 или 13.
1. 🔧 Предварительные требования
Перед обновлением убедитесь, что:
- У вас установлена Debian 11, 12 или 13
- Apache уже установлен (если нет — сначала установите Apache)
- Подключение к интернету стабильно
- У вас есть права sudo
⚠️ ВАЖНО: Проверьте права sudo перед установкой
Если вы не уверены, есть ли у вашего пользователя права администратора, выполните в терминале:
sudo whoami
Что делает: sudo выполняет команду от имени суперпользователя, whoami показывает имя текущего пользователя.
Зачем: Эта команда проверяет, есть ли у вас права sudo. Без них вы не сможете обновлять пакеты.
✅ Если выводит root — всё в порядке, можете продолжать.
❌ Если выводит is not in the sudoers file — сначала пройдите наше руководство по настройке sudo.
1.1 Обновление системы
Перед обновлением всегда обновляйте список пакетов.
sudo apt update && sudo apt upgrade -y
Что делает: Обновляет список пакетов и устанавливает последние обновления.
2. 📊 Сравнение способов обновления Apache
В Debian есть три основных способа обновления/переключения Apache. Вот их сравнение:
| Метод | Откуда | Версия | Когда использовать |
|---|---|---|---|
| Стандартный APT | Репозитории Debian | 2.4.66 (latest) | Для большинства серверов — обновление через apt upgrade уже даёт актуальную версию |
| extrepo (Sury) | Репозиторий Sury через extrepo | 2.4.66 (Sury build) | Если вы уже используете другие пакеты Sury (PHP) или хотите более частые обновления |
| Ручной DEB822 (Sury) | Репозиторий Sury | 2.4.66 (Sury build) | Если не хотите устанавливать extrepo, но нужны пакеты Sury |
💡 Рекомендация: Для большинства серверов достаточно стандартного sudo apt upgrade. Переход на Sury имеет смысл только если вы уже используете репозиторий Sury для PHP или других пакетов.
3. 📦 Способ 1: Обновление Apache из стандартных репозиториев Debian (рекомендованный)
Этот способ подходит для большинства пользователей.
3.1 Обновление Apache
sudo apt install --only-upgrade apache2 -y
Что делает: Обновляет только Apache (если он уже установлен), не трогая другие пакеты.
3.2 Проверка версии
sudo apache2 -v
✅ Ожидаемый вывод:
Server version: Apache/2.4.66 (Debian)
3.3 Проверка источника пакета
apt-cache policy apache2
✅ Ожидаемый вывод: В строке Version table должен быть http://deb.debian.org/debian.
4. 📦 Способ 2: Переход на репозиторий Sury через extrepo
Этот способ подходит, если вы хотите перейти на пакеты Apache из репозитория Ondrej Sury (например, для единообразия с PHP).
4.1 Установка extrepo и включение репозитория Sury для Apache
sudo apt install extrepo -y
sudo extrepo enable sury_apache2
4.2 Обновление списка пакетов
sudo apt update
4.3 Установка/обновление Apache из репозитория Sury
sudo apt install apache2 -y
Что делает: Если Apache уже был установлен из Debian, APT переключит его на пакет из Sury.
4.4 Проверка источника
apt-cache policy apache2
✅ Ожидаемый вывод: В строке Version table должен быть https://packages.sury.org/apache2.
5. 📦 Способ 3: Переход на репозиторий Sury вручную (DEB822)
Этот способ подходит, если вы не хотите устанавливать extrepo.
5.1 Установка зависимостей
sudo apt install ca-certificates curl lsb-release -y
5.2 Установка keyring-пакета Sury
curl -fsSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb
sudo dpkg -i /tmp/debsuryorg-archive-keyring.deb
5.3 Создание файла репозитория (DEB822)
sudo tee /etc/apt/sources.list.d/apache2-sury.sources > /dev/null <<EOF
Types: deb
URIs: https://packages.sury.org/apache2/
Suites: $(lsb_release -cs)
Components: main
Architectures: $(dpkg --print-architecture)
Signed-By: /usr/share/keyrings/debsuryorg-archive-keyring.gpg
EOF
5.4 Обновление и установка
sudo apt update
sudo apt install apache2 -y
6. 🔥 Настройка UFW после обновления
Если вы используете UFW, убедитесь, что Apache разрешён.
6.1 Разрешить Apache
sudo ufw allow 'Apache Full'
6.2 Проверка правил
sudo ufw status
7. ⚠️ Решение типичных проблем
7.1 Ошибка: Conflicting values set for option Signed-By
Симптом: sudo apt update выдаёт ошибку:
Error: Conflicting values set for option Signed-By regarding source https://packages.sury.org/apache2/
Причина: Вы добавили репозиторий Sury и через extrepo, и вручную.
Решение: Удалите один из способов.
Если хотите оставить extrepo:
sudo rm -f /etc/apt/sources.list.d/apache2-sury.sources
sudo apt remove -y debsuryorg-archive-keyring
sudo apt update
Если хотите оставить ручной способ:
sudo rm -f /etc/apt/sources.list.d/extrepo_sury_apache2.sources
sudo rm -f /var/lib/extrepo/keys/sury_apache2.asc
sudo apt update
7.2 Ошибка: Address already in use (порт 80 или 443)
Симптом: Apache не запускается, systemctl status apache2 показывает failed.
Причина: Другой веб-сервер (например, Nginx) уже слушает порт 80.
Решение: Остановите конфликтующий сервис:
sudo systemctl stop nginx
sudo systemctl start apache2
7.3 Отсутствуют модули после переключения на Sury
Симптом: Виртуальный хост требует mod_rewrite, но модуль не загружен.
Решение: Включите нужные модули:
sudo a2enmod rewrite
sudo systemctl restart apache2
8. 🔄 Откат на стандартные пакеты Debian (если перешли на Sury)
Если вы решили вернуться к стандартным пакетам Debian.
8.1 Удаление пакетов Apache
sudo systemctl stop apache2
sudo apt remove --purge apache2 apache2-bin apache2-data apache2-utils -y
sudo apt autoremove -y
8.2 Удаление репозитория Sury
Для ручного способа:
sudo rm -f /etc/apt/sources.list.d/apache2-sury.sources
sudo apt remove -y debsuryorg-archive-keyring
Для extrepo:
sudo extrepo disable sury_apache2
sudo rm -f /etc/apt/sources.list.d/extrepo_sury_apache2.sources
sudo rm -f /var/lib/extrepo/keys/sury_apache2.asc
8.3 Установка Apache из Debian
sudo apt update
sudo apt install apache2 -y
9. 📝 Чек-лист: всё готово к работе
- [ ] Система обновлена (
sudo apt update && sudo apt upgrade -y) - [ ] Выбран и выполнен один из способов обновления (Debian / extrepo Sury / ручной Sury)
- [ ]
sudo apache2 -vпоказываетApache/2.4.66 - [ ]
systemctl status apache2показываетactive (running) - [ ] UFW разрешает
Apache Full(если используется) - [ ] Сайт открывается без ошибок
Заключение
Вы обновили Apache на Debian. Если вы использовали стандартные репозитории — ничего не меняли, просто получили актуальную версию. Если перешли на репозиторий Sury — теперь вы будете получать обновления Apache из этого источника. Главное, что нужно запомнить: во всех актуальных Debian уже есть Apache 2.4.66, так что переход на Sury нужен только если вы уже используете другие пакеты Sury. Не используйте одновременно extrepo и ручной способ — это вызовет конфликт Signed-By.
Что дальше:
- Настройте SSL-сертификаты Let’s Encrypt
- Установите PHP для динамических сайтов
- Настройте Fail2Ban для защиты
- Для увеличения производительности рассмотрите Nginx как reverse-прокси