Як оновити OpenSSL 1.1.0 до 1.1.1 в Ubuntu 18.04?


17

Я працював на виробничому сервері з встановленим Ubuntu 18. Нещодавно я виявив, що мою веб-програму заборонено на деяких брандмауерах, встановлених у місці розташування клієнта.

Я виявив, що мій сервер спілкується за TLSv1.0, TLSv1.1, TLSv1.2протоколами, я вважаю, що налаштування брандмауера дозволяє спілкуватися з сервером TLSv1.3лише за протоколом.

Оскільки Ubuntu 18 постачається разом OpenSSL version 1.1.0, і для підтримки сервера TLS v1.3я повинен оновити OpenSSL, до version 1.1.1якого він є останнім.

Оскільки це сервер виробництва, на якому працює nginxсервер, я не хочу безпосередньо нічого пробувати на сервері.

root@energy-prod:~# nginx -v
nginx version: nginx/1.14.0 (Ubuntu)

Який найкращий спосіб оновити OpenSSL до v1.1.1, не порушуючи жодних інших налаштувань сервера?


2
FYI: »OpenSSL 1.1.1 SRU в Bionic« list.ubuntu.com/archives/ubuntu-devel/2018-December/… Тим часом поговоріть із відповідним контактом, який відповідає за конфігурацію брандмауера, запитайте про вимоги / рекомендації / відмови. Я сумніваюся, що ви єдиний, хто працює 18.04 і має цю проблему, і я не вважаю, що не підтримувати TLS 1.3 на даний момент часу є проблемою, оскільки це все ще зовсім нове і всупереч вашому твердженню. Я прочитав, що він все ще викликає проблеми з деякими середні скриньки, але ви не дізнаєтесь, якщо не запитаєте.
LiveWireBT

2
Оновлення буде неможливим, доки SRU не пройде. Існує занадто багато матеріалів, що залежить від OpenSSL, щоб зробити оновлення самостійно, оскільки це може зламати все.
Thomas Ward

Відповіді:


34

ПРИМІТКА : Станом на ~ серпня 2019 року openSSL 1.1.1 повинен бути доступний для встановлення через звичайні оновлення / установки пакета до 18.04. Або ви можете завантажити .deb пакет прямо звідси .


За даними веб-сайту OpenSSL :

Остання стабільна версія - серія 1.1.1. Це також наша версія довгострокової підтримки (LTS), яка підтримується до 11 вересня 2023 року.

Оскільки цього немає в поточних сховищах Ubuntu, вам потрібно буде завантажити, компілювати та встановити останню версію OpenSSL вручну.

Нижче наведено інструкції, які слід виконати:

  1. Відкрийте термінал ( Ctrl+ Alt+ t).
  2. Отримати тарбол: wget https://www.openssl.org/source/openssl-1.1.1a.tar.gz
  3. Розпакуйте тарбол за допомогою tar -zxf openssl-1.1.1a.tar.gz && cd openssl-1.1.1a
  4. Видайте команду ./config.
  5. Видайте команду make(Можливо, вам потрібно буде запустити, sudo apt install make gccперш ніж успішно виконати цю команду).
  6. Запустіть, make testщоб перевірити можливі помилки.
  7. Ток резервного копіювання Opensl двійковий: sudo mv /usr/bin/openssl ~/tmp
  8. Видайте команду sudo make install.
  9. Створіть символічне посилання з недавно встановленого бінарного файлу до місця за замовчуванням:
    sudo ln -s /usr/local/bin/openssl /usr/bin/openssl
    
  10. Запустіть команду sudo ldconfigдля оновлення символьних посилань та відновлення кеш-бібліотеки.

Якщо припустити, що у виконанні кроків 4 - 10 не було помилок, вам слід було б успішно встановити нову версію OpenSSL.

Знову з терміналу видайте команду:

openssl version

Вихід має бути таким:

OpenSSL 1.1.1a  20 Nov 2018

1
Щодо "Станом на ~ червня 2019 року, openSSL 1.1.1 повинен бути доступний для встановлення через звичайні оновлення / установки пакетів": Тільки не зауважте, що це не так у Ubuntu 18.04 (принаймні, на двох машинах, на які я спробував ) ...
logidelic

@logidelic Цікаво. Дякуємо, що вказали на це. Я це зафіксую. Мої основні системи - 19.04, і я маю пару похідних (Mint) на основі біонних (18.04), які вже отримали опори. Судячи з усього , запускаючи.net/ubuntu/+ source/openssl/1.1.1-1ubuntu2.1~ 18.04.4 він все ще може бути "запропонований" або доступний як джерело в 18.04. Я не дуже впевнений у своєму статусі.
Кевін Боуен

Працював і над Дебіаном Джессі. Використовували 1.1.1c, оскільки це та сама версія в Buster.
Рудольф Ваврух,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.