FreeBSD 12의 Nginx에서 TLS 1.3을 활성화하는 방법

TLS 1.3은 2018 년 RFC 8446 에서 제안 된 표준으로 게시 된 TLS (Transport Layer Security) 프로토콜의 버전입니다 . 이전 제품보다 보안 및 성능 향상 기능을 제공합니다.

이 안내서는 FreeBSD 12에서 Nginx 웹 서버를 사용하여 TLS 1.3을 활성화하는 방법을 보여줍니다.

요구 사항

  • FreeBSD 12를 실행하는 Vultr Cloud Compute (VC2) 인스턴스.
  • 유효한 도메인 이름과 제대로 구성 A/ AAAA/ CNAME도메인에 대한 DNS 레코드.
  • 유효한 TLS 인증서 Let 's Encrypt에서 가져옵니다.
  • Nginx 버전 1.13.0이상
  • OpenSSL 버전 1.1.1이상

시작하기 전에

FreeBSD 버전을 확인하십시오.

uname -ro
# FreeBSD 12.0-RELEASE

FreeBSD 시스템이 최신인지 확인하십시오.

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

필요한 패키지가 시스템에 없으면 설치하십시오.

pkg install -y sudo vim unzip wget bash socat git

선호하는 사용자 이름으로 새 사용자 계정을 만듭니다 (이용합니다 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!

그룹 구성원이 명령을 실행할 수 있도록 visudo명령을 실행하고 %wheel ALL=(ALL) ALL행의 주석을 해제하십시오 wheel.

visudo

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

이제로 새로 만든 사용자로 전환하십시오 su.

su - johndoe

참고 : 대체 johndoe사용자 이름과 함께.

시간대를 설정하십시오.

sudo tzsetup

acme.sh 클라이언트를 설치하고 Let 's Encrypt에서 TLS 인증서를 얻습니다.

설치하십시오 acme.sh.

sudo pkg install -y acme.sh

버전을 확인하십시오.

acme.sh --version
# v2.7.9

도메인의 RSA 및 ECDSA 인증서를 얻습니다.

# 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

참고 : 교체 example.com도메인 이름으로 명령에.

인증서 및 키를 저장할 디렉토리를 작성하십시오. 우리는 사용할 것 /etc/letsencrypt입니다.

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

인증서를 설치하고 /etc/letsencrypt디렉토리에 복사하십시오 .

# 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

위의 명령을 실행하면 인증서와 키가 다음 위치에 있습니다.

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

Nginx 설치

Nginx는 버전 1.13.0에서 TLS 1.3에 대한 지원을 추가했습니다. FreeBSD 12 시스템은 기본적으로 TLS 1.3을 지원하는 Nginx 및 OpenSSL과 함께 제공되므로 사용자 정의 버전을 구축 할 필요가 없습니다.

pkg패키지 관리자 를 통해 최신 메인 라인 버전의 Nginx를 다운로드하여 설치하십시오 .

sudo pkg install -y nginx-devel

버전을 확인하십시오.

nginx -v
# nginx version: nginx/1.15.8

Nginx가 컴파일 된 OpenSSL 버전을 확인하십시오.

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

Nginx를 시작하고 활성화하십시오.

sudo sysrc nginx_enable=yes
sudo service nginx start

Nginx 구성

Nginx를 성공적으로 설치 했으므로 서버에서 TLS 1.3 사용을 시작하도록 적절한 구성으로 구성 할 준비가되었습니다.

sudo vim /usr/local/etc/nginx/example.com.conf명령을 실행하고 다음 구성으로 파일을 채우십시오.

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;
}

파일을 저장하고 :+ W+로 종료하십시오 Q.

이제 example.com.conf메인 nginx.conf파일 에 포함시켜야 합니다.

sudo vim /usr/local/etc/nginx/nginx.conf다음 줄을 실행 하여 http {}블록에 추가하십시오 .

include example.com.conf;

지시문 의 새 TLSv1.3매개 변수를 확인하십시오 ssl_protocols. 이 매개 변수는 Nginx 서버에서 TLS 1.3을 활성화하는 데만 필요합니다.

구성을 확인하십시오.

sudo nginx -t

Nginx를 다시로드하십시오.

sudo service nginx reload

TLS 1.3을 확인하기 위해 브라우저 개발 도구 또는 SSL Labs 서비스를 사용할 수 있습니다. 아래 스크린 샷은 Chrome의 보안 탭을 보여줍니다.

FreeBSD 12의 Nginx에서 TLS 1.3을 활성화하는 방법

FreeBSD 12의 Nginx에서 TLS 1.3을 활성화하는 방법

FreeBSD 서버의 Nginx에서 TLS 1.3을 성공적으로 활성화했습니다. TLS 1.3의 최종 버전은 2018 년 8 월에 정의되었으므로이 새로운 기술을 채택하기에 더 좋은시기는 없습니다.



Leave a Comment

FreeBSD 12에 Neos CMS를 설치하는 방법

FreeBSD 12에 Neos CMS를 설치하는 방법

다른 시스템을 사용하십니까? Neos는 CMS와 응용 프로그램 프레임 워크가 핵심 인 콘텐츠 응용 프로그램 플랫폼입니다. 이 가이드는 설치하는 방법을 보여줍니다

전체 디스크 암호화를 사용하여 OpenBSD 5.6 설정

전체 디스크 암호화를 사용하여 OpenBSD 5.6 설정

이 튜토리얼에서는 Vultr VPS에서 완전히 암호화 된 디스크로 OpenBSD 5.6을 설정하는 방법을 보여줍니다. 암호화 부분에 대한 참고 사항 : 대부분의 데이터 센터

FreeBSD 12에서 osTicket을 설치하는 방법

FreeBSD 12에서 osTicket을 설치하는 방법

다른 시스템을 사용하십니까? osTicket은 오픈 소스 고객 지원 티켓팅 시스템입니다. osTicket 소스 코드는 Github에서 공개적으로 호스팅됩니다. 이 튜토리얼에서

OpenBSD 6.2에 WordPress 설치

OpenBSD 6.2에 WordPress 설치

소개 WordPress는 인터넷에서 지배적 인 컨텐츠 관리 시스템입니다. 블로그에서 동적 컨텐츠가있는 복잡한 웹 사이트에 이르기까지 모든 것을 지원합니다.

FreeBSD 11 FAMP VPS에 ProcessWire CMS 3.0을 설치하는 방법

FreeBSD 11 FAMP VPS에 ProcessWire CMS 3.0을 설치하는 방법

다른 시스템을 사용하십니까? ProcessWire CMS 3.0은 간단하고 유연하며 강력하며 무료이며 오픈 소스 CMS (콘텐츠 관리 시스템)입니다. ProcessWire CMS 3.

PrestaShop 및 Apache를 사용한 전자 상거래 솔루션으로서의 OpenBSD

PrestaShop 및 Apache를 사용한 전자 상거래 솔루션으로서의 OpenBSD

소개이 튜토리얼은 PrestaShop 및 Apache를 사용한 전자 상거래 솔루션으로서 OpenBSD를 보여줍니다. PrestaShop에 복잡한 UR이 있으므로 Apache가 필요합니다.

OS 선택 : CentOS, Ubuntu, Debian, FreeBSD, CoreOS 또는 Windows Server

OS 선택 : CentOS, Ubuntu, Debian, FreeBSD, CoreOS 또는 Windows Server

이 기사는 Vultr에서 템플릿으로 제공되는 서버 운영 체제에 대한 간략한 개요를 제공합니다. CentOS CentOS는 RHEL의 공개 소스 버전입니다 (Re

FreeBSD 12에 X-Cart 5를 설치하는 방법

FreeBSD 12에 X-Cart 5를 설치하는 방법

다른 시스템을 사용하십니까? X-Cart는 다양한 기능과 통합 기능을 갖춘 매우 유연한 오픈 소스 전자 상거래 플랫폼입니다. X-Cart 소스 코드는 호스트입니다

FreeBSD 11에 PyroCMS를 설치하는 방법

FreeBSD 11에 PyroCMS를 설치하는 방법

다른 시스템을 사용하십니까? PyroCMS는 PHP로 작성된 오픈 소스 CMS입니다. PyroCMS 소스 코드는 GitHub에서 호스팅됩니다. 이 가이드에서는 입구를 잘 살펴보십시오.

FreeBSD 11로 자신 만의 메일 서버 만들기

FreeBSD 11로 자신 만의 메일 서버 만들기

자신의 이메일 서버를 운영하는 것은 매우 보람이있을 수 있습니다. 귀하는 귀하의 데이터를 담당합니다. 또한 배송 옵션을보다 유연하게 사용할 수 있습니다. 하나

FreeBSD 10에서 스왑 파일 생성

FreeBSD 10에서 스왑 파일 생성

기본적으로 Vultr FreeBSD 서버는 스왑 공간을 포함하도록 구성되어 있지 않습니다. 일회용 클라우드 인스턴스에 대한 의도라면

FreeBSD 10에서 iRedMail 설정

FreeBSD 10에서 iRedMail 설정

이 튜토리얼에서는 FreeBSD 10을 새로 설치할 때 그룹웨어 iRedMail을 설치하는 방법을 보여줍니다. 최소 1 기가 바이트 이상의 서버를 사용해야합니다

OpenBSD 6에서 MariaDB 구성

OpenBSD 6에서 MariaDB 구성

이 기사에서는 OpenBSD 6에 MariaDB를 설치하고 chroot 된 웹 서버 (Apache 또는 Nginx)에 액세스 할 수 있도록 구성하는 방법을 보여줍니다. 당신은 Als

FreeBSD 11 FAMP VPS에 Redaxscript 3.2 CMS를 설치하는 방법

FreeBSD 11 FAMP VPS에 Redaxscript 3.2 CMS를 설치하는 방법

다른 시스템을 사용하십니까? Redaxscript 3.2 CMS는 현대적이고 초경량이며 무료이며 공개 소스 인 CMS (로켓 관리 시스템)

FreeBSD 12에서 Craft CMS를 설치하는 방법

FreeBSD 12에서 Craft CMS를 설치하는 방법

다른 시스템을 사용하십니까? 소개 Craft CMS는 PHP로 작성된 오픈 소스 CMS입니다. Craft CMS 소스 코드는 GitHub에서 호스팅됩니다. 이 가이드는 요를 보여줍니다

FreeBSD 11에서 Nginx와 함께 Varnish 5 설치

FreeBSD 11에서 Nginx와 함께 Varnish 5 설치

Varnish는 웹 서버의 컨텐츠를 저장하는 오픈 소스 캐시 서버입니다. Apache 또는 Nginx와 같은 웹 서버 앞에 설치됩니다. Cachin

FreeBSD / TrueOS에서 ZFS 저장소 풀 크기 조정

FreeBSD / TrueOS에서 ZFS 저장소 풀 크기 조정

Vultr에서 VPS 인스턴스를 업그레이드하면 Linux 파일 시스템의 크기가 자동으로 조정됩니다. 고급 ZFS 파일 시스템으로 FreeBSD를 실행할 때 일부 수동 wor

FreeBSD 11 FAMP VPS에 TextPattern CMS 4.6.2를 설치하는 방법

FreeBSD 11 FAMP VPS에 TextPattern CMS 4.6.2를 설치하는 방법

다른 시스템을 사용하십니까? TextPattern CMS 4.6.2는 간단하고 유연하며 무료이며 오픈 소스 CMS (콘텐츠 관리 시스템)로 웹 디자이너는

FreeBSD 12에 eSpeak 설치

FreeBSD 12에 eSpeak 설치

다른 시스템을 사용하십니까? ESpeak는 TTS (text-to-speech) 오디오 파일을 생성 할 수 있습니다. 토리노를 직접 만드는 등 여러 가지 이유로 유용 할 수 있습니다.

Vultr Cloud 서버에 pfSense 설치

Vultr Cloud 서버에 pfSense 설치

pfSense는 다양한 기능을 네트워크에 추가하려는 시스템 관리자에게 이상적인 도구입니다. 주로 오픈 소스입니다

NTLite를 사용하여 업데이트로 Windows 사용자 지정 ISO를 만드는 방법

NTLite를 사용하여 업데이트로 Windows 사용자 지정 ISO를 만드는 방법

NTLite를 사용하여 Vultr 시스템과 호환되는 Windows 사용자 지정 ISO를 만드는 방법을 단계별로 설명합니다. 최신 드라이버와 업데이트 통합을 포함한 완벽 가이드.

Vultr에서 BGP 구성

Vultr에서 BGP 구성

Vultr BGP 설정을 위한 단계별 튜토리얼. ASN 할당부터 IP 라우팅 구성, BIRD 데몬 설정, FreeBSD 특이사항 및 실전 문제 해결 팁 7가지 포함한 최종 가이드

WsgiDAV를 사용하여 Debian 10에 WebDAV 배포

WsgiDAV를 사용하여 Debian 10에 WebDAV 배포

WebDAV (Web Distributed Authoring and Versioning)를 이용한 원격 파일 작성을 위한 프레임워크로, WsgiDAV 설치 및 구성 방법을 안내합니다.

데비안 7에 Mailcow 설치

데비안 7에 Mailcow 설치

Mailcow는 DoveCot, Postfix 및 기타 여러 오픈 소스 패키지를 기반으로 하는 경량 메일 서버입니다. 데비안에서 Mailcow 설치 방법을 안내합니다.

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

AI가 랜섬웨어 공격의 증가와 싸울 수 있습니까?

랜섬웨어 공격이 증가하고 있지만 AI가 최신 컴퓨터 바이러스를 처리하는 데 도움이 될 수 있습니까? AI가 답인가? AI boone 또는 bane인지 여기에서 읽으십시오.

ReactOS: 이것이 Windows의 미래입니까?

ReactOS: 이것이 Windows의 미래입니까?

오픈 소스이자 무료 운영 체제인 ReactOS가 최신 버전과 함께 제공됩니다. 현대 Windows 사용자의 요구 사항을 충족하고 Microsoft를 무너뜨릴 수 있습니까? 이 구식이지만 더 새로운 OS 환경에 대해 자세히 알아보겠습니다.

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

WhatsApp 데스크톱 앱 24*7을 통해 연결 유지

Whatsapp은 마침내 Mac 및 Windows 사용자용 데스크톱 앱을 출시했습니다. 이제 Windows 또는 Mac에서 Whatsapp에 쉽게 액세스할 수 있습니다. Windows 8 이상 및 Mac OS 10.9 이상에서 사용 가능

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

AI는 어떻게 프로세스 자동화를 다음 단계로 끌어올릴 수 있습니까?

인공 지능이 소규모 회사에서 어떻게 인기를 얻고 있으며 어떻게 인공 지능이 성장할 가능성을 높이고 경쟁자가 우위를 점할 수 있는지 알아보려면 이 기사를 읽으십시오.

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

macOS Catalina 10.15.4 추가 업데이트로 인해 해결보다 더 많은 문제가 발생함

최근 Apple은 문제를 해결하기 위해 macOS Catalina 10.15.4 추가 업데이트를 출시했지만 이 업데이트로 인해 Mac 컴퓨터의 브릭킹으로 이어지는 더 많은 문제가 발생하는 것 같습니다. 자세히 알아보려면 이 기사를 읽어보세요.

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구

빅데이터의 13가지 상용 데이터 추출 도구