TLS1.3 käyttöön Nginx-webpalvelimella

Nginx-webpalvelimen uusin versio (1.1.3 tai uudempi) tukee TLS1.3:sta, kunhan käytössäsi on uusin OpenSSL 1.1.1-versio palvelimella asennettuna. TLS1.3 parantaa sivuston latausnopeutta ja turvallisuutta. CloudFlaren blogissa tämä on hyvin selitetty.

Ubuntu 18.04 LTS tarjoaa vain OpenSSL 1.1.0:n ja toki on mahdollista päivittää kirjasto, mutta tämä ei ole hyvä asia sillä se voi rikkoa jotakin. Tästä syystä on parempi kääntää Nginx OpenSSL-kirjaston kanssa ottaakseen käyttöön TLS1.3-käyttöön.

Huomaa, että webbiselaimet eivät tue TLS1.3 viimeistä versiota kuin vasta lokakuun 2018 tulevassa päivityksessä, eli Chrome 70 on yksi ensimmäisistä versiosta, joka tätä tukee. Mikäli haluat jo testata tätä, sinun tulee asentaa BETA-versio Chromesta.

Lisää Nginx:n viralliset sourcet source.list-tiedostoon. Mikäli käytät Ubuntun 16.04 LTS-versiota, niin vaihda bionic-tilalle xenial.  Tämän jälkeen päivitä paikallinen paketti indeksi.

Luodaan ensin hakemisto Nginx ja OpenSSL-lähdekoodeille ja sitten ladataan Nginx lähdekoodi.

Tämän jälkeen kloonataan OpenSSL-repo Githubista ja vaihda OpenSSL 1.1.1.1 vakaaseen branchiin.

Muuta Nginx compile sääntöjä

Etsi config.status.nginx: config.env.nginx osa ja lisää loppupäähän

Siirry Nginx-lähdekoodihakemistoon ja käännä Nginx lähdekoodista

Mikäli saat virheen ”missing initializer for field ’md_ctrl’ of ’ENV_MD)…” niin muokkaa auto/cc/gcc tiedostoa ja kommentoi pois alla oleva rivi

Tallenna tiedosto ja yritä uudelleen. Kun lähdekoodin kääntäminen on valmis niin asenna dpkg-paketti.

Tarkista lopuksi Nginx-versio ”nginx -V” -komennolla, jonka pitäisi palauttaa seuraavanlaisen tuloksen.

Nyt ota TLS1.3 käyttöön konfiguroimalla virtualhostit lisäämällä ssl_protocols kohtaan TLSv1.3 ja määrittämällä seuraavat cipherit

Tarkista konfiguraatio ja lataa konfiguraatio uudelleen

On suositeltavaa poistaa automaattiset päivitykset pois käytöstä, sillä päivitämällä aptin kautta menetävät TLS1.3:sen.

Voit nyt testata TLS1.3 toimivuus esimerkiksi SSL Labsin testillä tai Chrome (70 tai uudempi) tai Firefoxin (63 tai uudempi) selaimella.

Chrome-selaimella näet TLS-version kehittäjän konsolista (pikapainikkeella F12 saat tämän auki selaimestasi). Firefoxilla näet kun valitset lukkokuvakkeesta osoiteriviltä -> Lisätietoa.

Vastaa