Categories
Computer Network

아파치 (Apache) 에서 암호로 디렉토리 보호하기

1. 암호 파일 생성

“/etc/apache2” 디렉토리에 암호 파일을 만든다.

sudo htpasswd -c /etc/apache2/.htpasswd user12

“user12” 는 로그인에 사용될 사용자이름이다.

htpasswd 명령은 암호를 2 번 입력받는다.

2. 000-default.conf 파일 편집

“000-default.conf” 파일을 연다.

sudo vi /etc/apache2/sites-enabled/000-default.conf

파일에서 아래 라인을 찾는다.

AllowOverride None

“None” 을 “All” 로 변경한다.

AllowOverride All

파일을 저장하고 편집기를 닫는다.

아파치 (Apache) 를 재시작한다.

sudo systemctl restart apache2.service

3. 디렉토리에 암호 설정하기

암호로 보호할 디렉토리로 이동한다.

cd /test/html/admin

편집기로 “.htaccess” 파일을 생성한다.

sudo vi .htaccess

파일에 아래 내용을 입력한다.

AuthType Basic
AuthName "Password Required"
Require valid-user
AuthUserFile /etc/apache2/.htpasswd

4. 결과 확인

웹브라우저에서 암호가 설정된 디렉토리를 연다.

https://example.com/admin

로그인을 위한 팝업 (pop-up) 창이 열리는지 확인한다.

Categories
Computer Network

기존 Let’s Encrypt SSL 인증서에 새 도메인 추가하기

1. 도메인 예시

  • example.com: 기존 도메인
  • www.example1.com: SSL 인증서에 추가할 도메인 (1)
  • www.example2.com: SSL 인증서에 추가할 도메인 (2)

2. SSL 인증서에 도메인 추가하기

certbot 명령으로 SSL 인증서에 새 도메인을 추가한다.

sudo certbot −−cert-name example.com -d example.com -d www.example1.com -d www.example2.com

−−cert-name 으로 SSL 인증서의 이름을 지정한다. SSL 인증서의 이름은 기존 도메인의 이름과 같다.

-d 옵션으로 새로 추가할 도메인을 지정하는 것은 물론이고 기존의 도메인도 지정해야 한다.

3. 결과 확인

SSL 인증서에 새로 추가한 도메인 이름으로 사이트에 접속한다.

https://www.example1.com/

SSL 연결이 이루어지는지 확인한다.


Categories
Computer Network

아파치 (Apache) 웹서버의 문서 루트 (Document Root) 변경하기

1. 새 위치로 파일 복사하기

“index.html” 파일을 새 문서 루트 (document root) 로 복사한다.

  • 새 문서 루트: /test/html

sudo cp /var/www/html/index.html /test/html/

2. 000-default.conf 파일 편집

“/etc/apache2/sites-enabled/000-default.conf” 파일을 연다.

sudo vi /etc/apache2/sites-enabled/000-default.conf

“DocumentRoot” 로 시작하는 부분을 찾아 아래와 같이 변경한다.

DocumentRoot /test/html

파일의 끝에 아래 내용을 추가한다.

<Directory /test/html>
  Options FollowSymLinks
  AllowOverride None
  Require all granted
</Directory>

파일을 저장하고 편집기를 닫는다.

3. 000-default-le-ssl.conf 파일 편집

“/etc/apache2/sites-enabled/000-default-le-ssl.conf” 파일을 연다.

sudo vi /etc/apache2/sites-enabled/000-default-le-ssl.conf

“DocumentRoot” 로 시작하는 부분을 찾아 아래와 같이 변경한다.

DocumentRoot /test/html

파일을 저장하고 편집기를 닫는다.

4. 아파치 재시작하기

아파치를 재시작한다.

sudo systemctl reload apache2

5. 결과 확인

웹브라우저로 사이트에 접속한다.

아파치의 디폴트 (default) 페이지가 열리는지 확인한다.


Categories
Computer Network

우분투에서 아파치 서버에 SSL 인증서 (Certificate) 설치하기

1. 아파치 설치하기

우분투 패키지 DB 를 업데이트한다.

sudo apt update

아파치를 설치한다.

sudo apt install apache2

아파치의 리라이트 (rewrite) 모듈을 활성화한다.

sudo a2enmod rewrite

아파치를 재시작한다.

sudo systemctl restart apache2

2. SSL 인증서 설치하기

certbot 패키지를 설치한다.

sudo apt install certbot

python3-certbot-apache 패키지를 설치한다.

sudo apt install python3-certbot-apache

아파치의 실행을 잠시 중단한다.

sudo systemctl stop apache2

사이트에 SSL 인증서를 설치한다.

sudo certbot −−apache

프롬프트에서 요구하는 정보를 입력한다.

  • 이메일 주소
  • 라이센스 동의
  • SSL 인증서에 연결할 도메인 이름

SSL 인증서가 설치될 때까지 잠시 기다린다.

3. 결과 확인

아파치를 다시 시작한다.

sudo systemctl start apache2

웹브라우저를 열고 SSL 인증서를 설치한 사이트로 간다.

보안 연결이 이루어지는지 확인한다.