>  기사  >  운영 및 유지보수  >  Ubuntu 16.04에서 NGINX 웹 서버를 구성하고 사용하는 방법

Ubuntu 16.04에서 NGINX 웹 서버를 구성하고 사용하는 방법

PHPz
PHPz앞으로
2023-05-11 16:55:191199검색

Nginx는 성능 최적화를 위해 특별히 개발되었습니다. 가장 잘 알려진 장점은 안정성과 낮은 시스템 리소스 소비뿐 아니라 동시 연결에 대한 높은 처리 능력입니다(단일 물리적 서버는 30,000~50,000개의 동시 연결을 지원할 수 있습니다). 은 고성능 HTTP 및 역방향 프록시 서버이자 IMAP/POP3/SMTP 프록시 서비스입니다. Ubuntu 16.04中怎么配置和使用NGINX Web服务器

Install Certbot

첫 번째 단계는 거의 모든 프로세스를 자동화할 수 있는 소프트웨어 클라이언트인 certbot을 설치하는 것입니다. Certbot 개발자는 Ubuntu 리포지토리에 존재하는 것보다 최신 소프트웨어가 포함된 자체 Ubuntu 리포지토리를 유지 관리합니다.

Certbot 저장소 추가:

# add-apt-repository ppa:certbot/certbot

다음으로 APT 소스 목록을 업데이트합니다.

# apt-get update

이 시점에서 다음 apt 명령을 사용하여 certbot을 설치할 수 있습니다.

# apt-get install certbot

Certbot이 이제 설치되었으며 사용할 준비가 되었습니다.

인증서 획득

SSL 인증서를 획득하는 데 사용할 수 있는 다양한 Certbot 플러그인이 있습니다. 이러한 플러그인은 인증서를 얻는 데 도움이 되며 인증서 설치 및 웹 서버 구성은 관리자에게 맡겨집니다.

SSL 인증서를 얻기 위해 Webroot라는 플러그인을 사용합니다.

이 플러그인은 제공되는 콘텐츠를 수정할 수 있는 경우에 권장됩니다. 인증서 발급 과정에서 웹 서버를 중지할 필요가 없습니다.

NGINX를 구성하면

Webroot는 웹 루트 디렉터리 아래의 .well-known 디렉터리에 각 도메인에 대한 임시 파일을 생성합니다. 이 예에서 웹 루트는 /var/www/html입니다. Let's Encrypt 인증 중에 이 디렉터리에 액세스할 수 있는지 확인하세요. 이렇게 하려면 NGINX 구성을 편집하세요. 텍스트 편집기를 사용하여 /etc/nginx/sites-available/default를 엽니다.

# $EDITOR /etc/nginx/sites-available/default

파일의 서버 블록 내부에 다음을 입력합니다.

location ~ /.well-known {
allow all;
}

저장하고 종료한 후 NGINX 구성을 확인합니다.

# nginx -t

있는 경우 오류 없음 다음과 같이 나타나야 합니다.

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

NGINX 다시 시작:

# systemctl restart nginx

Certbot을 사용하여 인증서 얻기

다음 단계는 Certbot의 Webroot 플러그인을 사용하여 새 인증서를 얻는 것입니다. 이 튜토리얼에서는 예제 도메인 www.example.com을 보호하겠습니다. 인증서로 보호해야 하는 각 도메인을 지정해야 합니다. 다음 명령을 실행하세요:

# certbot certonly --webroot --webroot-path=/var/www/html -d www.example.com

이 과정에서 Cerbot은 알림을 위한 유효한 이메일 주소를 묻습니다. EFF와 공유하라는 메시지도 표시되지만 필수는 아닙니다. 서비스 약관에 동의한 후 새 인증서를 받게 됩니다.

마지막으로 /etc/letsencrypt/archive 디렉터리에는 다음 파일이 포함됩니다.

  • chain.pem: 암호화 체인 인증서를 암호화합니다.

  • cert.pem: 도메인 이름 인증서.

  • fullchain.pem: cert.pem과 chain.pem의 조합.

  • privkey.pem: 인증서의 개인 키입니다.

Certbot은 /etc/letsencrypt/live/domain_name/에 최신 인증서 파일에 대한 심볼릭 링크도 생성합니다. 이것이 서버 구성에서 사용할 경로입니다.

NGINX에서 SSL/TLS 구성

다음 단계는 서버 구성입니다. /etc/nginx/snippets/에 새 스니펫을 만듭니다. 조각은 가상 호스트 구성 파일에 포함될 수 있는 구성 부분을 나타냅니다. 다음과 같이 새 파일을 만듭니다.

# $EDITOR /etc/nginx/snippets/secure-example.conf

파일 내용에 인증서와 키 위치가 지정됩니다. 다음을 붙여넣으세요.

ssl_certificate /etc/letsencrypt/live/domain_name/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain_name/privkey.pem;

이 경우 domain_name은 example.com입니다.

NGINX 구성 편집

기본 가상 호스트 파일

# $EDITOR /etc/nginx/sites-available/default

을 다음과 같이 편집하세요.

server {
listen 80 default_server;
listen [::]:80 default_server;
server_name www.example.comreturn 301 https://$server_name$request_uri;# SSL configuration#listen 443 ssl default_server;
listen [::]:443 ssl default_server;
include snippets/secure-example.conf## Note: You should disable gzip for SSL traffic.# See: https://bugs.debian.org/773332# ...}

이렇게 하면 NGINX 암호화가 활성화됩니다.

NGINX 구성 파일 저장, 종료 및 확인:

# nginx -tnginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

NGINX 다시 시작:

# systemctl restart nginx

위 내용은 Ubuntu 16.04에서 NGINX 웹 서버를 구성하고 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제