Bagaimana untuk Membolehkan TLS 1.3 di Nginx pada FreeBSD 12

TLS 1.3 adalah versi protokol Keselamatan Layer Pengangkutan (TLS) yang diterbitkan pada 2018 sebagai standard yang dicadangkan dalam RFC 8446 . Ia menawarkan peningkatan keselamatan dan prestasi berbanding pendahulunya.

Panduan ini akan menunjukkan cara untuk membolehkan TLS 1.3 menggunakan pelayan web Nginx pada FreeBSD 12.

Keperluan

  • Contoh Vultr Cloud Compute (VC2) yang menjalankan FreeBSD 12.
  • Nama domain yang sah dan rekod A/ AAAA/ CNAMEDNS yang dikonfigurasi dengan betul untuk domain anda.
  • Sijil TLS yang sah. Kami akan mendapat satu daripada Let's Encrypt.
  • Versi Nginx 1.13.0atau lebih besar.
  • Versi OpenSSL 1.1.1atau lebih tinggi.

Sebelum awak bermula

Semak versi FreeBSD.

uname -ro
# FreeBSD 12.0-RELEASE

Pastikan sistem FreeBSD anda terkini.

freebsd-update fetch install
pkg update && pkg upgrade -y

Pasang pakej yang diperlukan sekiranya tidak terdapat di sistem anda.

pkg install -y sudo vim unzip wget bash socat git

Buat akaun pengguna baru dengan nama pengguna pilihan anda (kami akan gunakan johndoe).

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

Jalankan visudoarahan dan unmentasikan %wheel ALL=(ALL) ALLbaris, untuk membolehkan ahli wheelkumpulan melaksanakan sebarang arahan.

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

Kini, beralih kepada pengguna yang baru anda buat dengan su.

su - johndoe

CATATAN: Ganti johndoedengan nama pengguna anda.

Sediakan zon waktu.

sudo tzsetup

Pasang klien acme.sh dan dapatkan sijil TLS dari Let's Encrypt

Pasang acme.sh.

sudo pkg install -y acme.sh

Semak versi.

acme.sh --version
# v2.7.9

Dapatkan sijil RSA dan ECDSA untuk domain anda.

# RSA
sudo acme.sh --issue --standalone -d example.com --ocsp-must-staple --keylength 2048
# ECC/ECDSA
sudo acme.sh --issue --standalone -d example.com --ocsp-must-staple --keylength ec-256

CATATAN: Ganti example.comperintah dengan nama domain anda.

Buat direktori untuk menyimpan sijil dan kunci anda. Kami akan menggunakannya /etc/letsencrypt.

sudo mkdir -p /etc/letsencrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc

Pasang dan salin sijil ke /etc/letsencryptdirektori.

# RSA
sudo acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem 
# ECC/ECDSA
sudo acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem

Selepas menjalankan arahan di atas, sijil dan kunci anda akan berada di lokasi berikut:

  • RSA: /etc/letsencrypt/example.com
  • ECC/ECDSA: /etc/letsencrypt/example.com_ecc

Pasang Nginx

Nginx menambah sokongan untuk TLS 1.3 dalam versi 1.13.0. Sistem FreeBSD 12 dilengkapi dengan Nginx dan OpenSSL yang menyokong TLS 1.3 di luar kotak, jadi tidak perlu membuat versi khusus.

Muat turun dan pasang versi utama terbaru Nginx melalui pkgpengurus pakej.

sudo pkg install -y nginx-devel

Semak versi.

nginx -v
# nginx version: nginx/1.15.8

Semak versi OpenSSL yang telah dikumpulkan oleh Nginx.

nginx -V
# built with OpenSSL 1.1.1a-freebsd  20 Nov 2018

Mulakan dan aktifkan Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Konfigurasikan Nginx

Setelah berjaya memasang Nginx, kami siap mengkonfigurasinya dengan konfigurasi yang betul untuk mula menggunakan TLS 1.3 di pelayan kami.

Jalankan sudo vim /usr/local/etc/nginx/example.com.confperintah, dan isi fail dengan konfigurasi berikut.

server {
  listen 443 ssl http2;
  listen [::]:443 ssl http2;

  server_name example.com;

  # RSA
  ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/example.com/private.key;
  # ECDSA
  ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;

  ssl_protocols TLSv1.2 TLSv1.3;
  ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
  ssl_prefer_server_ciphers on;
}

Simpan fail dan keluar dengan :+ W+ Q.

Sekarang kita perlu memasukkan example.com.confdalam nginx.conffail utama .

Jalankan sudo vim /usr/local/etc/nginx/nginx.confdan tambah baris berikut ke http {}blok.

include example.com.conf;

Perhatikan TLSv1.3parameter ssl_protocolsarahan baru. Parameter ini hanya diperlukan untuk mengaktifkan TLS 1.3 pada pelayan Nginx.

Periksa konfigurasi.

sudo nginx -t

Muat semula Nginx.

sudo service nginx reload

Untuk mengesahkan TLS 1.3, anda boleh menggunakan alat penyemak imbas atau perkhidmatan Lab SSL. Tangkapan skrin di bawah menunjukkan tab keselamatan Chrome.

Bagaimana untuk Membolehkan TLS 1.3 di Nginx pada FreeBSD 12

Bagaimana untuk Membolehkan TLS 1.3 di Nginx pada FreeBSD 12

Anda berjaya mengaktifkan TLS 1.3 di Nginx pada pelayan FreeBSD anda. Versi terakhir TLS 1.3 telah ditentukan pada bulan Ogos 2018, jadi tidak ada waktu yang lebih baik untuk mulai menggunakan teknologi baru ini.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut