지식 Profitserver 서비스를 사용하기 위한 간단한 지침
본관 지식 Certbot: Let's Encrypt 인증서 설치

Certbot: Let's Encrypt 인증서 설치


이 문서에서는 설치 및 구성 프로세스를 살펴보겠습니다. Certbot 리눅스 서버에서. 자세히 설명드리겠습니다. Let's Encrypt SSL/TLS 인증서를 얻는 방법 귀하의 도메인에 대해. 또한 웹 서버(예: Nginx 또는 Apache)에 설치하는 방법과 자동 인증서 갱신을 설정하여 웹 리소스와의 지속적인 보안 연결을 보장하는 방법도 설명합니다.

Certbot 자동적인 취득 및 갱신을 위해 설계된 무료 오픈 소스 도구입니다. SSL/TLS 인증서. 서버와 클라이언트 간의 연결을 보호하고, 무단 액세스로부터 데이터를 보호하는 데 중요한 역할을 합니다. Certbot은 SSL 인증서의 설치 및 갱신 프로세스를 간소화합니다. 인증서는 보안을 강화할 뿐만 아니라 웹 리소스에 대한 사용자 신뢰도를 높여 사이트의 평판과 검색 엔진 순위를 모두 개선합니다.

Certbot 설치

Certbot은 대부분의 배포판에 기본적으로 포함되어 있으므로 설치하려면 데비안 / 우분투 시스템에서는 패키지 목록만 업데이트하면 됩니다.

apt update

그런 다음 설치 프로세스를 시작합니다.

apt install certbot

Certbot은 웹 서버에 대한 인증서의 설정 및 구성을 용이하게 하는 플러그인을 지원합니다. 이러한 플러그인을 설치하려면 해당 명령을 사용합니다.

apt install certbot python3-certbot-nginx # for Nginx
apt install certbot python3-certbot-apache # for Apache

설치 프로세스 레드햇 시스템(예: RHEL, CentOS에, 페도라)은 약간 다릅니다. 처음에는 EPEL 저장소를 추가해야 합니다.

yum install epel-release

그런 다음 도구를 설치하세요.

yum install certbot

마찬가지로 특정 웹 서버에 대한 플러그인을 선택하는 옵션이 있습니다.

yum install python3-certbot-nginx # for Nginx
yum install python3-certbot-apache # for Apache

설치 후 바로 인증서를 받을 수 있습니다.

SSL 인증서 획득

이 섹션에서는 특정 웹 서버와 독립적으로 인증서를 얻는 과정을 논의한 다음, Nginx 및 Apache에 대한 인증서를 설치하는 과정을 설명합니다. 그러나 먼저 프로그램의 구문과 기능을 이해하는 것이 필수적입니다. 다음과 같습니다.

certbot command option -d domain

주요 명령은 다음과 같습니다.

certbot certonly - 인증서를 검색하지만 설치하지는 않습니다.
certbot certificates - 이 명령은 설치된 모든 인증서 목록을 표시합니다.
certbot renew - 기존 인증서를 확장합니다.
certbot revoke - 기존 인증서를 폐지합니다.
certbot delete - 기존 인증서를 삭제합니다.

가장 일반적으로 사용되는 옵션은 다음과 같습니다.

--nginx - 도메인 확인을 위해 Nginx 구성 스크립트를 사용합니다.
--apache - 도메인 확인을 위해 Apache 구성 스크립트를 사용합니다.
-d - 인증서가 요청된 도메인 목록입니다.
--standalone - 도메인 확인을 위해 독립 실행형 모드를 사용합니다.
--manual - 수동 도메인 검증을 수행합니다.

이것은 가장 자주 사용되는 명령과 옵션의 예일 뿐입니다. 도움말 섹션에서 프로그램 기능의 전체 목록을 확인할 수 있습니다.

certbot –help
Certbot 도구의 도움말 섹션

이제 인증서를 취득하기 위해 진행합니다. 예를 들어, 우리는 인증서를 취득할 것입니다. 가상 서버 yourusername.pserver.space와 같은 무료 3차 도메인의 경우

먼저 다음 명령을 입력해야 합니다.

certbot certonly

이에 대해 유틸리티는 도메인 소유권을 확인하는 방법을 선택하도록 요청합니다.

Certbot SSL 인증서를 얻는 방법

첫 번째 옵션은 구성된 웹 서버가 없거나 기존 웹 서버를 변경하고 싶지 않은 경우에 편리합니다. 이 방법은 도메인에 대한 권한을 확인하기 위해 임시 웹 서버를 만듭니다. 간단하고 빠른 설정에 이상적입니다. 이 방법을 선택할 때는 포트 80을 비워두는 것이 중요합니다.

두 번째 옵션은 이미 웹 서버를 운영하고 있고, 이를 사용하여 도메인에 대한 권한을 확인하려는 경우에 더 좋습니다. Certbot은 서버의 폴더에 특수 파일을 저장한 다음 인증 센터에서 확인합니다.

첫 번째 옵션을 선택하고 다음을 클릭합니다. 이 단계에서는 다음을 수행해야 합니다.

  1. 이메일 주소를 입력하세요.
  2. 서비스 약관에 동의합니다.
  3. 회사 및 파트너를 대신하여 이메일을 수신하는 데 동의하거나 거부합니다.
  4. 인증서가 발급된 도메인 이름을 지정하세요.
SSL 인증서 취득을 위한 데이터

Certbot 도구로 인증서 발급 프로세스를 완료하면 발급된 인증서와 계정 데이터가 저장된 디렉토리 경로가 표시됩니다.

획득한 SSL 인증서의 데이터

이제 남은 일은 획득한 인증서를 필요한 서비스에 연결하는 것입니다.

Nginx 또는 Apache에 대한 인증서 설치

이 섹션에서는 특정한 기본 조건이 충족되었다고 가정합니다.

  1. 당신은 이미 Nginx 또는 Apache 중 하나의 웹 서버를 설치하고 구성했습니다. 인증서를 얻으려는 도메인 이름을 통해 인터넷에서 액세스할 수 있어야 합니다.
  2. 도구를 설치하는 동안 적절한 명령을 사용하여 Nginx 또는 Apache용 플러그인도 설치했습니다.
  3. 방화벽은 포트 80과 443에서 연결을 허용합니다. 이러한 포트가 연결에 닫혀 있으면 들어오는 연결에 서비스를 사용할 수 없습니다. 방화벽 작동에 대한 자세한 내용은 다음 문서에서 논의했습니다. 리눅스에 방화벽 설정하기.

모든 조건이 충족되면 인증서 발급으로 바로 진행할 수 있습니다. Nginx를 사용하여 서버에서 SSL 인증서를 얻는 과정을 예로 들어 보겠습니다. 그러나 Apache 웹 서버를 사용하는 경우 프로세스는 완전히 동일합니다.

인증서를 얻으려면 다음 명령을 입력해야 합니다.

certbot --nginx # for Nginx
certbot --apache # for Apache

이에 대한 응답으로 도구는 이메일 주소, Let's Encrypt 서비스 이용 약관에 대한 동의, 서비스 및 파트너를 대신하여 이메일을 보낼 수 있는 권한을 요청합니다.

Nginx 및 Apache에 대한 SSL 인증서 얻기

그 다음에는 인증서가 발급된 도메인 이름을 지정해야 합니다. Certbot은 도메인이 지정된 경우 자동으로 도메인을 판별할 수 있습니다. 서버 이름 필드 Nginx에 구성 또는 서버 이름 ServerAlias 을 통한 아파치. 지정하지 않으면 프로그램에서 알림을 보내고 도메인 이름을 수동으로 입력하라고 요청합니다. 그런 다음 유틸리티에서 HTTP에서 HTTPS 프로토콜로 요청을 리디렉션할지 묻습니다. 자동 리디렉션을 설정하려면 두 번째 옵션을 선택해야 합니다.

HTTP에서 HTTPS로 요청 리디렉션

얼마 후 Certbot은 지정된 도메인에 대한 인증서의 성공적인 취득을 알려줍니다. 이 시점부터 모든 수신 연결은 포트 80에서 443으로 리디렉션됩니다. 이 도구는 모든 인증서 데이터와 Let's Encrypt 계정 세부 정보를 찾을 수 있는 디렉토리를 표시합니다.

Certbot 인증서의 성공적인 발급

이 메시지에는 획득한 인증서의 유효 기간과 모든 활성 인증서를 관리하기 위한 중요한 옵션도 명시됩니다.

  1. 확실히. 이 옵션은 자동 웹 서버 구성 없이 인증서를 얻거나 업데이트하는 데 사용됩니다. Certbot은 인증서를 요청하거나 업데이트만 하지만 서버 구성을 자동으로 변경하지는 않습니다. 이전에는 이 옵션을 사용하여 웹 서버에 묶이지 않고 인증서를 얻었습니다.
  2. 갱신하다 Certbot을 통해 취득한 모든 인증서의 자동 갱신에 사용되며 유효 기간 내에 있습니다. 이 프로그램은 모든 인증서를 확인하고, 인증서 중 하나라도 30일 이내에 만료되면 자동으로 갱신됩니다.

다음 지침에서는 3개월마다 사용자의 개입 없이 인증서를 자동으로 갱신하는 방법을 설명합니다.

Certbot에서 자동 인증서 갱신

데비안/우분투의 경우

이러한 운영 체제를 사용할 때 Certbot은 설치된 인증서의 자동 갱신을 위한 작업 목록에 스크립트를 자동으로 추가합니다. 다음 명령으로 스크립트의 기능을 확인할 수 있습니다.

systemctl status certbot.timer
certbot.timer 서비스 상태 확인

응답에는 서비스 상태와 구성 파일이 포함된 디렉토리가 표시됩니다. 모든 텍스트 편집기를 사용하여 열 수 있습니다. Linux의 텍스트 편집기에 익숙하지 않은 경우 다음을 숙지하는 것이 좋습니다. 우리의 개요 가장 인기 있는 솔루션 중 하나입니다. 이 경우 nano를 사용합니다.

nano /lib/systemd/system/certbot.timer
certbot.timer 구성 보기

모든 중요한 매개변수는 강조 표시됩니다.

  1. 시간표에 따르면 서비스는 하루 두 번 00:00와 12:00에 운행됩니다.
  2. 두 번째 값은 타이머 시작에 추가될 초 단위의 무작위 지연을 나타냅니다. 이 경우 43,200초(12시간)로, 이는 시작을 더 무작위로 만들고 부하를 분산시킵니다.
  3. 이 매개변수는 타이머가 시스템 종료 중에 실행되도록 설정된 경우 시스템을 시작하자마자 즉시 활성화되도록 합니다.

다음 명령을 사용하여 인증서 갱신에 대한 강제 검사를 실행할 수도 있습니다.

certbot renew --dry-run

이 명령을 사용하면 인증서가 업데이트되지 않습니다. 대신 도구는 만료 시 인증서를 얻는 것과 유사한 작업을 수행합니다. 이렇게 하면 자동 갱신과 관련된 서비스의 기능을 보장할 수 있습니다.

CentOS, Fedora 및 기타

Red Hat 계열 시스템에서 자동 업데이트를 활성화하는 프로세스는 약간 다릅니다. Debian/Ubuntu와 달리 CentOS 및 기타 시스템의 경우 스케줄러에 작업을 수동으로 추가해야 합니다. 이를 위해 다음을 사용합니다. 크론 도구 :

crontab -e

그런 다음, 열리는 파일에 다음 줄을 추가합니다.

0 12 * * * /usr/bin/certbot renew --quiet

명령어의 주요 인수를 분석해 보겠습니다.

  1. 실행 시간. 이 경우 명령은 매일 12:00에 자동으로 실행됩니다.
  2. Certbot을 사용하여 SSL/TLS 인증서를 갱신하는 명령;
  3. The --조용한 플래그는 출력을 억제하여 프로세스가 시스템 로그나 디스플레이에서 덜 눈에 띄고 덜 방해가 되도록 합니다.

명령을 추가한 후에는 파일의 변경 사항을 저장해야 합니다.

Debian/Ubuntu와 마찬가지로 인증서 갱신에 대한 강제 확인을 시작할 수도 있습니다.

certbot renew --dry-run

명령을 성공적으로 실행한 결과는 다음과 같습니다.

Renew 명령의 성공적인 확인 결과

맺음말

Linux 서버에 Certbot을 설치하고 구성하는 포괄적인 프로세스를 살펴보았습니다. 제공된 지침에 따라 Let's Encrypt에서 SSL/TLS 인증서를 성공적으로 획득하고 웹 서버에 설치하고 자동 갱신을 구성하여 지속적인 보호와 웹 리소스에 대한 신뢰 증가를 보장할 수 있습니다. Certbot을 사용하면 사용자를 위한 안정적이고 안전한 환경을 쉽게 만들 수 있습니다.

❮ 이전 기사 Linux 패키지 관리자
다음 기사 ❯ 서버 부하 감소

VPS에 대해 문의하세요

저희는 언제든지 여러분의 질문에 답변할 준비가 되어 있습니다.