WordPress용 무료 SSL 인증서 및 HTTPS를 얻는 방법
게시 됨: 2018-06-12SSL 인증서는 웹사이트와 최종 사용자 간의 연결을 암호화하여 웹사이트를 보호합니다.
사용자의 58.4%가 주로 또는 단독으로 Chrome 브라우저를 사용하므로 방문자가 웹사이트를 신뢰할 수 있도록 WordPress 웹사이트가 SSL 및 HTTPS로 보안되어 있는지 확인하는 것이 중요합니다.
SSL 인증서를 얻는 것은 빠르고 무료일 수 있습니다. Let's Encrypt는 자동화된 클라이언트 Certbot의 도움을 받아 무료 SSL 인증서를 제공하는 유명하고 신뢰할 수 있는 제공업체입니다.
오늘은 SSL, HTTPS, Let's Encrypt 및 Certbot에 대해 자세히 설명하고 웹 서버에 무료 SSL 인증서를 수동으로 설치, 관리 및 갱신하여 Chrome에서 오류 없이 표시되도록 WordPress 웹사이트를 보호하는 방법을 공유하겠습니다. .
SSL 및 HTTPS란 무엇이며 왜 필요한가요?
SSL 인증서는 연결된 웹사이트에 암호화 키를 바인딩하는 도메인 이름에 대해 인증 기관(CA)에서 발급한 공개 디지털 문서입니다.
유효한 SSL 인증서가 있는 모든 웹사이트는 웹사이트 서버와 최종 사용자 브라우저 간의 통신을 암호화하는 HTTPS 및 SSL 프로토콜을 사용합니다.
웹사이트에 유효한 SSL 인증서가 있으면 단순히 URL에 "https"가 포함된 웹사이트와 달리 사용자가 정보를 입력할 수 있는 사이트가 신뢰할 수 있음을 확인합니다. 또한 해커가 무단 액세스를 얻기 위해 연결을 가로채는 것을 방지합니다.
자세한 내용은 WordPress 웹 사이트용 HTTPS 및 SSL이 절대적으로 필수적인 이유를 확인하십시오.
Let's Encrypt란 무엇입니까?
Let's Encrypt는 인터넷을 보다 안전한 곳으로 만드는 데 전념하는 비영리 단체인 ISRG(Internet Security Research Group)에서 제공하는 자동화된 CA입니다. Let's Encrypt는 무료 SSL 인증서만 발급하며 웹 서버에서 인증서 관리 에이전트를 실행하여 프로세스를 가속화합니다.
인증서 유형
Let's Encrypt는 CA가 제공하는 가장 낮은 수준의 인증서인 DV(Domain Validation) 인증서를 인증하고 웹사이트가 주장하는 도메인 이름을 소유하고 있다는 것만 확인합니다.
2018년 1월부터 Let's Encrypt는 단일 인증서로 웹사이트의 모든 하위 도메인을 보호할 수 있는 와일드카드 인증서도 제공합니다. 예: info.example.com 및 about.example.com .
또한 특정 ACMEv2 프로토콜과 결과적으로 ACMEv2를 지원하도록 업데이트된 클라이언트가 있어야 합니다.
자세한 내용은 ACME 클라이언트 구현을 확인하십시오.
Let's Encrypt 인증서는 예외 없이 90일 동안 유효하며 30일 동안 가능한 문제를 해결할 수 있도록 60일마다 갱신할 것을 권장합니다. 하지만 서버에 따라 자동 갱신을 구성할 수 있습니다.
인증서를 받는 방법
Let's Encrypt에서 무료 SSL 인증서를 얻는 가장 쉬운 방법은 웹 호스팅을 이용하는 것입니다.
Let's Encrypt는 많은 웹 호스트 및 Let's Encrypt를 활성화하고 기본적으로 HTTPS로 리디렉션하는 여러 공급자와 파트너 관계를 맺었습니다.
호스팅 서비스에서 Let's Encrypt를 인식하지 못하는 경우 해당 서비스에 연락하여 옵션임을 알릴 수 있습니다.
호스팅 서비스가 호환되지 않는 경우 웹 서버에 Let's Encrypt 무료 SSL 인증서를 배치하는 가장 쉬운 방법 중 하나는 SSL 인증서를 가져와 웹 서버에 배포하는 자동 클라이언트인 Certbot을 사용하는 것입니다.
Certbot 문서에 따르면 "Certbot은 구조적으로 더 비공개적이고 안전하며 검열로부터 보호되는 네트워크를 구축하는 것을 목표로 합니다."

Certbot 설치
Certbot은 다양한 운영 체제 및 서버용으로 패키지되어 있습니다. 이상적인 설정을 파악하는 가장 좋은 방법은 Certbot의 웹사이트로 이동하여 특정 설치 지침을 읽는 것입니다.
대부분의 경우 CertBot을 인증하려면 루트 액세스 또는 관리자 수준 기능이 필요합니다.
설치는 일반적으로 안전하지 않은 네트워크를 통한 파일 전송을 허용하는 보안 셸 암호화 프로토콜인 SSH를 통해 이루어집니다. 인기 있는 SSH 클라이언트는 Mac OS X용 터미널 및 Windows용 PuTTY입니다.
인증서 설치
설정 및 사이트 요구 사항에 따라 Let's Encrypt DV 인증서를 사이트에 설치하는 여러 가지 방법이 있습니다. Certbot 웹 사이트는 특정 서버 설정을 기반으로 설치 프로세스를 안내합니다.
이전에 언급했듯이 웹 호스트에서 이 옵션을 사용할 수 있도록 선택한 경우 웹 호스트를 통해 인증서를 자동으로 설치할 수도 있습니다. 각 웹 호스트가 다르기 때문에 설정 지침은 호스트 설명서를 참조하십시오.
와일드카드 인증서를 설치하려면 DNS 플러그인을 사용해야 합니다.
자세한 내용은 Certbot 문서를 확인하세요.
독립 실행형 모드
예를 들어 Apache 또는 Nginx와 같은 서버 소프트웨어가 없고 얻는 데 관심이 없다면 독립 실행형 플러그인 접근 방식이 적합한 옵션입니다.
플러그인은 도메인을 확인하기 위해 웹 서버 포트 80(HTTP의 경우) 또는 443(SSL의 경우)에 바인딩해야 하므로 미리 서버에서 해당 포트를 해제해야 할 수도 있습니다.

둘 다 사이트를 로드하는 데 사용되지만 둘 다 사용할 수 없는 경우 Certbot에서 오류가 발생할 수 있습니다. 포트를 닫고 여는 프로세스는 운영 소프트웨어에 따라 다르므로 필요에 따라 필요한 특정 문서를 참조하십시오.
Certbot이 설치되어 있고 포트 80 또는 443을 사용할 수 있는지 확인한 후 SSH 클라이언트에 아래 명령을 입력하십시오. 사용하는 포트에 따라 명령이 약간 다릅니다.
//For Port 80 certbot certonly --standalone --preferred-challenges http -d example.com //For Port 443 certbot certonly --standalone --preferred-challenges tls-sni -d example.com
분해하면 certonly 가 인증서를 얻거나(특정 상황에서는 갱신) 설치하지 않습니다. –standalone 은 Certbot에게 인증을 위해 독립 실행형 웹 서버를 실행하도록 지시하고, –preferred-challenges 는 Certbot이 사용할 게시물을 지정하고 -d SSL 인증서를 요청하는 도메인 이름을 지정합니다.
명령을 실행한 후 이메일 주소를 입력하고 이용 약관에 동의하라는 메시지가 표시됩니다.
완료되면 프로세스가 완료되었음을 알리는 메시지와 인증서 위치를 받게 됩니다.
웹루트 플러그인
서버의 콘텐츠를 수정할 수 있는 기능이 있는 경우 webroot 방법을 사용하는 것이 옵션입니다. 인증서를 설치하는 webroot 방법은 웹 서버의 특정 위치에 유효성 검사 파일을 배치합니다.
이 방법은 포트를 전환할 필요가 없고 설치 프로세스 중에 라이브 사이트를 중단하는 것에 대해 걱정할 필요가 없기 때문에 편리합니다.
webroot 플러그인을 사용하려면 숨겨진 디렉토리, 특히 /.well-known 폴더의 파일을 표시하도록 서버를 구성해야 한다는 점을 아는 것이 중요할 수 있습니다.
SSH 클라이언트에서 다음 명령을 실행하여 webroot 방법을 설치합니다.
certbot certonly --webroot -w /var/www/example -d www.example.com -d example.com
certonly 명령은 인증서를 가져오고 –webroot 는 Certbot에 우리가 사용 중인 방법을 알려줍니다. 그러면 -w 또는 –webroot-path 를 포함하고 웹 서버에서 제공하는 파일이 있는 최상위 디렉토리를 포함하는 파일 경로를 포함해야 합니다. , –webroot-path /var/www/html 은 일반적인 웹 루트 경로입니다.
자세한 내용은 Certbot 문서를 확인하세요.
인증서 위치
모든 키와 발급된 인증서는 /etc/letsencrypt/live/$domain 에서 찾을 수 있으며, 갱신 시 업데이트됩니다.
다음은 인증서에 있는 파일 목록입니다.
- Privkey.pem – 개인 키는 여기에 저장되며 Certbot 개발자에게도 비밀로 유지되어야 합니다. 그러나 루트 사용자만 액세스할 수 있도록 서버에서 액세스할 수 있도록 유지해야 합니다.
- Fullchain.pem – 모든 인증서가 여기에 저장되며 여러 인증서가 있는 경우 첫 번째 인증서가 서버 인증서입니다.
- Cert.pem – 여기에는 개별 서버 인증서가 포함됩니다.
- Chain.pem – 서버를 검증하는 데 필요한 모든 중간 인증서와 인증서가 여기에 저장됩니다.
디렉토리의 파일 내용을 확인하려면 SSH 클라이언트에서 ls /etc/letsencrypt/live/example.com 명령을 사용하여 목록을 표시하십시오.
인증서 갱신
Certbot은 설치된 모든 인증서에 만료가 임박했는지 확인한 다음 갱신을 시도하여 최대한 쉽게 갱신하는 것을 목표로 합니다.
아래 명령은 여러 인증서를 확인하고 만료 여부를 항상 고려합니다.
certbot renew
유효 기간이 30일 미만인 모든 인증서를 갱신합니다. 조기 갱신의 위험이 없으므로 원하는 만큼 자주 실행할 수 있습니다.
여러 도메인 이름이 있고 그 중 하나만 갱신하려는 경우 certonly 를 사용하는 이 명령이 트릭을 수행합니다.
certbot certonly -n -d example.com -d www.example.com
참고 : Certbot은 사용자 입력 차단을 방지하기 위해 -n 또는 -noninteractive 를 포함할 것을 권장합니다.
결론
SSL 인증서 설치는 모든 WordPress 사이트의 필수 보안 조치입니다. Let's Encrypt 및 Certbot은 HTTPS 및 SSL 인증서를 사용하여 도메인과 웹사이트를 보호하는 빠르고 무료 방법을 제공합니다.
포괄적인 세부 정보는 광범위한 Certbot 문서 및 커뮤니티 포럼을 확인하십시오.
Let's Encrypt로 무료 SSL 인증서를 성공적으로 설치할 수 있었습니까? SSL 인증서를 설치하는 이유는 무엇입니까? 아래 의견에서 경험을 공유하십시오.