8. Gitlab - SSL 적용

2020. 3. 5. 16:02Git

3. SSL적용

3.1. 인증서생성

3.1.1. 개인키생성

3.1.2. 인증요청서생성

3.1.3. 인증서생성

3.1.4. 확인

3.2. GitLab 설정

 

3. SSL적용

- 자가 서명 인증서 만들기 ( 인증기관에서 발급받으려면 돈내야함 )

- [참고] 관련개념 https://12bme.tistory.com/80

 

[정보보안] SSL(Secure Socket Layer) 이란

현재 근무 중인 업체에서 SSL 인증서 적용 작업이 필요하다고 합니다. SSL 인증서관련 필요한 것이 무엇인지에 대한 요청이 있었습니다. 간단하게 SSL에 대해 정리해보겠습니다. 1. SSL 개념 잡기 SSL의 개념에 대..

12bme.tistory.com

 

3.1. 인증서생성

[참고]

https://zetawiki.com/wiki/%EB%A6%AC%EB%88%85%EC%8A%A4_%EC%9E%90%EC%B2%B4%EC%84%9C%EB%AA%85_SSL_%EC%9D%B8%EC%A6%9D%EC%84%9C_%EC%83%9D%EC%84%B1

# openssl version 

버전확인

3.1.1. 개인키생성

# openssl genrsa -des3 -out server.key 2048

서버 개인키인 server.key 파일 생성

3.1.2. 인증요청서 생성

# openssl req -new -key server.key -out server.csr

서버 개인키 패스워드 입력
자신의 경우에 맞게 적절히 입력 뒤에 두개는 엔터 엔터

-> 서버 인증요청서인 server.csr 파일 생성

 

cp server.key server.key.org

openssl rsa -in server.key.org -out server.key

참고한 블로그에서 개인키 암호를 제거하라고 한다

따라서 하자

3.1.3. 인증서 생성

# openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt

유효기간이 3650(10년)으로 되어있으나 필요에따라 바꾸면됨

-> 서버 인증서인 server.crt 파일 생성

3.1.4 확인

# cat server.key | head -3

개인키 확인

# cat server.crt | head -3

사설인증서

3.2 Gitlab 설정

# vim /etc/gitlab/gitlab.rb 

external_url의 내용을 사용할 도메인과 포트번호(다른번호 가능)을 넣으면 됨

external_url 'https://사용할도메인(192.168.182.129):443

nginx['redirect_http_to_https'] = true 는 선택사항인데 http(80포트) 요청이 왔을 때 https로 돌려줄건지 설정하는 것

 

Key ,crt 파일을 복사할건데, 도메인 이름으로 인증서 파일명을 바꿔야함

# mv server.crt 192.168.182.129.org.crt

# mv server.key 92.168.182.129.org.key

 

폴더 생성 후 인증서 파일 두개를 복사.

# mkdir -p /etc/gitlab/ssl

# chmod 700 /etc/gitlab/ssl

# cp 192.168.182.129.org.crt /etc/gitlab/ssl/

# cp 192.168.182.129.org.key /etc/gitlab/ssl/

 

혹시 모르니 파이어월 오픈

# ufw allow https

 

재시작

# gitlab-ctl reconfigure

 

브라우저에서 https://192.168.182.129 ( 설정한도메인) 으로 접속하면 보안설정

- 고급 - 그냥 사용 

http로 접근해도 htts로 들어가진다 

[참고] : https://m.blog.naver.com/punxoi/220295947502

 


아래는 사실 필요 없는듯....3.1.5 개인키와 인증서 설치


이를 위해서 httpd 설치가 필요함!

[참고] https://lng1982.tistory.com/288

ubuntu 기본 소프트웨어 저장소에 사용할 수 있는 apache가 있다.

1. root 로그인

2. 패키지 관리 툴인 apt-get을 이용하여 apache2를 설치한다. (apache2 설치와 함께 의존하는 프로그램도 함께 설치된다.)

 > apt-get update

 > apt-get install apache2

3. 설치 후 Apache 상태 확인

 > systemctl status apache2

4. Apache 접속

 > hostname -I  명령어를 통해 IP를 알아낸 후 웹 브라우저를 이용하여 http://{IP} 로 접속해보자


# cp server.key /etc/apache2

# cp server.crt /etc/apache2

우분투는 httpd.conf 폴더가 /etc/apache2

 

'Git' 카테고리의 다른 글

11. Jenkins 기본설정  (0) 2020.03.09
10. Jenkins 설치  (0) 2020.03.08
7. GitLab - 설치 / 접속  (0) 2020.03.04
6. Git 명령어  (0) 2020.03.03
5. Git 고급  (0) 2020.03.02