Найти в Дзене

Обновляем Nginx из репозитория на Ubuntu Server 20.04

Всем добрых выходных. Что может быть проще чем обновить пакет на Ubuntu Server? Если он обновляется, то всё очень просто: "apt install пакет". А вот если нет... Пришла задачка — обновить nginx на одном из web серверов. Главное требование, обновиться нужно на версию не ниже 1.21, потому что в более ранних версиях обнаружена какая-то уязвимость. Захожу на сервер, смотрю версию nginx. dpkg -l | grep nginx У нас установлен nginx 1.18.0, да, нужно обновлять. apt-get update
apt-get install nginx
dpkg -l | grep nginx И ничего не изменилось, облом. Может, Ubuntu старая? lsb_release -a Да не такая и старая, Ubuntu 20.04.3 LTS. К сожалению такое случается, новые версии пакетов не сразу доходят до официальных репозиториев. Делать нечего, будем обновлять пакет с репозитория nginx. https://www.nginx.com/resources/wiki/start/topics/tutorials/install/ Создаём файл репозитория. cd /etc/apt/sources.list.d
touch nginx.list Для Ubuntu 20 прописываем внутри: deb https://nginx.org/packages/ubuntu/ focal ng

Всем добрых выходных. Что может быть проще чем обновить пакет на Ubuntu Server? Если он обновляется, то всё очень просто: "apt install пакет". А вот если нет...

Пришла задачка — обновить nginx на одном из web серверов. Главное требование, обновиться нужно на версию не ниже 1.21, потому что в более ранних версиях обнаружена какая-то уязвимость.

Захожу на сервер, смотрю версию nginx.

dpkg -l | grep nginx
-2

У нас установлен nginx 1.18.0, да, нужно обновлять.

apt-get update
apt-get install nginx
dpkg -l | grep nginx

И ничего не изменилось, облом. Может, Ubuntu старая?

lsb_release -a
-3

Да не такая и старая, Ubuntu 20.04.3 LTS. К сожалению такое случается, новые версии пакетов не сразу доходят до официальных репозиториев.

Делать нечего, будем обновлять пакет с репозитория nginx.

https://www.nginx.com/resources/wiki/start/topics/tutorials/install/

-4

Создаём файл репозитория.

cd /etc/apt/sources.list.d
touch nginx.list

Для Ubuntu 20 прописываем внутри:

deb https://nginx.org/packages/ubuntu/ focal nginx
deb-src https://nginx.org/packages/ubuntu/ focal nginx
-5

Обновляем локальные репозитории:

apt update

Находим текст ошибки:

Следующие подписи не могут быть проверены, так как недоступен открытый ключ: NO_PUBKEY $key

или

The following signatures couldn't be verified because the public key is not available: NO_PUBKEY $key

Собственно, указанный ключ нам и нужен.

-6

Копируем этот ключ и регистрируем:

apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ABF5BD827BD9BF62
-7

Вот теперь можно обновлять nginx.

apt update
apt install nginx
-8

Проверяем что установилось:

dpkg -l | grep nginx
-9

Стоит nginx 1.22, условия задания соблюдены.

Перезапуск службы:

systemctl stop nginx
systemctl start nginx

Закрываем задачу.

Источник:
https://internet-lab.ru/ubuntu_nginx_repo

💰 Поддержать проект

Если вам понравилась статья, то ставьте 👍🏻 каналу.
Пишите комментарии, задавайте вопросы, подписывайтесь.