Ubuntu Server / Let’s Encrypt 무료 SSL 인증서 발급 받기

Ubuntu Server에서 Apache Web Server를 사용하는 경우 Let’s Encrypt 인증서 발급 받는 방법입니다.

Apache용 Certbot 설치

Ubuntu Server 20.04, Ubuntu Server 22.04

# snap install core
# snap refresh core
# snap install --classic certbot
# ln -s /snap/bin/certbot /usr/bin/certbot

Ubuntu Server 18.04

# apt install software-properties-common
# add-apt-repository universe
# add-apt-repository ppa:certbot/certbot
# apt update
# apt upgrade
# apt install certbot python3-certbot-apache

Ubuntu Server 16.04

# add-apt-repository ppa:certbot/certbot
# apt update
# apt upgrade
# apt install python-certbot-apache

인증서 발급

  • abc.com 인증서를 발급하고 설정 파일을 생성합니다.
# certbot --apache -d abc.com
  • abc.com과 www.abc.com 인증서를 동시 발급하고 설정 파일을 생성합니다.
# certbot --apache -d abc.com -d www.abc.com
  • abc.com 인증서만 발급합니다.
# certbot certonly --apache -d abc.com
  • 와일드 카드 인증서만 발급합니다. DNS에 레코드를 추가하는 과정이 있습니다.(이처럼 만든 인증서는 certbot renew로 갱신되지 않습니다. 다시 발급받아야 합니다.)
# certbot certonly --manual --preferred-challenges=dns -d abc.com -d *.abc.com

인증서 갱신

Let’s Encrypt 인증서 유효 기간은 90일이고, 만료일 30일 전부터 갱신이 가능합니다.

  • 갱신 가능한 인증서를 갱신합니다.
# certbot renew

인증서 삭제

  • abc.com 인증서를 삭제합니다.
# certbot delete --cert-name abc.com

Cron으로 자동 갱신

  • crontab에 다음을 추가하면 매일 새벽 4시에 갱신을 시도합니다.
0 4 * * * certbot renew --post-hook "service apache2 reload"
같은 카테고리의 다른 글

다른 서버나 컴퓨터의 특정 포트로 통신 가능한지 확인하는 방법

서버를 운영하거나 네트워크 문제를 점검하다 보면 “상대 서버의 특정 포트로 접속이 되는지” 확인해야 할 때가 많습니다. 윈도우와 리눅스에서 통신 여부를 확인하는 방법을 정리합니다.

Rocky Linux 8 / root 계정으로 ssh 접속 가능하게 설정하는 방법

Rocky Linux 8 / root 계정으로 ssh 접속 가능하게 설정하는 방법

Rocky Linux를 설치할 때 가능하게 설정하지 않았다면, root 계정으로 ssh 접속을 할 수 없다. 보안 상 권장되는 설정이나, 테스트나 공부 목적 등으로 root 계정으로 ssh 접속하는 게 더 좋은 상황이라면, 다음과 같이 하여 접속을 허용할 수 있다. vi나 nano 같은 텍스트 에디터로 /etc/ssh/sshd_config 파일을 연다. 제일 밑에 다음 코드를 추가하고, 저장한다. PermitRootLogin yes 다음과 같이 ...

지메일, 네이버 메일, 다음 메일 / IMAP 사용할 수 있게 설정하는 방법

지메일, 네이버 메일, 다음 메일 / IMAP 사용할 수 있게 설정하는 방법

지메일, 네이버 메일, 다음 메일 등은 아웃룩이나 썬더버드 같은 메일 클라이언트 프로그램으로 메일을 주고 받을 수 있습니다. 메일을 받을 때 POP3 또는 IMAP 방식을 사용하는데, IMAP이 여러모로 편합니다. 메일을 보내는 것은 SMTP를 이용하구요. IMAP/SMTP를 이용하여 아웃룩 등으로 메일 송수신을 하려면 웹메일에서 IMAP을 사용할 수 있도록 설정해주어야 합니다. 메일 서비스별로 설정하는 방법을 ...

당구 / 길 / 앞으로 걸어 치기, 뒤로 걸어 치기, 미러법

당구 / 길 / 앞으로 걸어 치기, 뒤로 걸어 치기, 미러법

걸어 치기 걸어 치기는 쿠션을 먼저 한 번 맞추고 1적구를 맞춘 후 쿠션을 두 번 더 맞추고 2적구를 맞추는 기술입니다. 걸어 치기에는 앞으로 걸어 치기, 뒤로 걸어 치기 두 가지가 있습니다. 뒤로 걸어 치기 뒤로 걸어 치기는 보통 구멍이라고 하는데, 아래와 같이 치는 것을 말합니다. 앞으로 걸어 치기 아래와 같이 치는 것을 앞으로 걸어 치기라고 ...

Ubuntu 18.04 Server / 언어 변경하는 방법

현재 언어 확인하기 locale 명령어로 현재 언어가 무엇인지 확인할 수 있습니다. # locale LANG=en_US.UTF-8 LANGUAGE= LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL= 언어 변경하기 사용할 언어를 먼저 설치합니다. 한국어를 사용하고 싶다면 다음과 같이 명령합니다. # apt-get install language-pack-ko /etc/default/locale을 열고 다음과 같이 만듭니다. LANG=ko_KR.UTF-8 테스트하기 새로 로그인하거나 재부팅하면 변경한 언어가 적용됩니다. 의미 없는 문자열을 입력해보거나... # 123 123: 명령을 찾을 수 없습니다 locale 명령어로 확인할 수 있습니다. # locale LANG=ko_KR.UTF-8 LANGUAGE= LC_CTYPE="ko_KR.UTF-8" LC_NUMERIC="ko_KR.UTF-8" LC_TIME="ko_KR.UTF-8" LC_COLLATE="ko_KR.UTF-8" LC_MONETARY="ko_KR.UTF-8" LC_MESSAGES="ko_KR.UTF-8" LC_PAPER="ko_KR.UTF-8" LC_NAME="ko_KR.UTF-8" LC_ADDRESS="ko_KR.UTF-8" LC_TELEPHONE="ko_KR.UTF-8" LC_MEASUREMENT="ko_KR.UTF-8" LC_IDENTIFICATION="ko_KR.UTF-8" LC_ALL=

안드로이드 / 앱 / Remote Desktop 8 / 마이크로소프트가 만든 원격 데스크톱 앱

안드로이드 / 앱 / Remote Desktop 8 / 마이크로소프트가 만든 원격 데스크톱 앱

윈도우에 원격 접속할 때 원격 데스크톱을 많이 사용합니다. 윈도우에 포함되어 있어 별도의 프로그램을 설치할 필요가 없고, 마이크로소프트가 만든 것이라 믿을 수 있다는 장점이 있습니다. 또한 안드로이드용 앱도 있어서 스마트폰에서 접속하여 관리할 수도 있습니다. 물론 화면이 작다보니 그리 편하지는 않습니다. 앱 이름은 Remote Desktop 8입니다. 만든 이는 Microsoft Corporration이라도 되어 있구요. 앱을 실행한 후 ...

아이피타임(ipTIME) 공유기 / 포트포워딩 설정하는 방법

아이피타임(ipTIME) 공유기 / 포트포워딩 설정하는 방법

포트 포워딩(port forwarding)은 외부 네트워크에서 특정 장치나 서비스에 접근할 수 있도록 라우터나 방화벽에서 포트를 지정하여 트래픽을 전달하는 네트워크 설정 방식입니다. 공유기에서도 설정이 가능한데, 공유기 IP XX 포트로 요청이 들어왔을 때, 그 요청을 공유기에 연결된 다른 기기의 YY 포트로 전달합니다. ipTIME 공유기에서 포트포워딩 설정하는 방법은 다음과 같습니다. 포트포워딩 추가 아이피타임 공유기 관리자 페이지에 접속합니다. [고급 설정 ...

국세청 홈택스 / 현금영수증 발급 받은 내역과 금액 조회하는 방법

국세청 홈택스 / 현금영수증 발급 받은 내역과 금액 조회하는 방법

사업자로부터 현금으로 무언가를 샀을 때, 현금영수증을 발급받을 수 있습니다. 구입하는 쪽에서는 현금영수증으로 비용처리를 하거나 소득공제를 받고, 판매하는 쪽에서는 매출로 자동 집계됩니다. 판매자에게서 세금을 걷기 위해 구매자에게 혜택을 주는 것이죠. 현금영수증은 전산으로 처리되는 것으로 실제로 영수증을 받지는 않습니다. 그렇다면 잘 발급을 받았는지 어떻게 확인할 수 있을까요? 국세청 홈택스에서 현금영수증 발급 받은 내역과 ...

Ubuntu 22.04 Server / ZIP 압축 파일 푸는 방법

ZIP 파일을 압축 해제하기 위해서는 unzip 패키지가 필요하다. # apt install unzip xxx.zip 파일을 압축 해제하려면 다음과 같이 명령한다. # unzip xxx.zip 다음과 같이 명령하여 도움말을 볼 수 있다. # unzip -h 결과는 다음과 같다. UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP. Usage: unzip Default ...

스팀 / 게임 구입하는 방법

스팀 / 게임 구입하는 방법

우연히 문명이라는 게임을 알게되었습니다. '문명하셨습니다'라는 유행어가 있었을 정도로 유명한 게임이라고 하네요. 게임을 시작하면 시간은 별로 안 가는데 날짜가 바뀐다는... 인터넷에 있는 온갖 글과 영상이 문명을 추천하고 있어서, 한 번 해보기로 했습니다. 문명 5와 문명 6에 대해서 호불호가 갈리는데, 전 그래도 최신판인 문명 6으로 결정했습니다. 어디서 구입을 해야 하나 알아보았더니, 스팀에 있네요. 게다가 ...