GitLab 은 기 존 Nginx 로 HTTPS 접근 설정
2808 단어 GitLab
GitLab 은 기본적으로 Nginx 가 내장 되 어 있 지만 서버 자체 에 Nginx 가 설치 되 어 있 는 경우 도 있 습 니 다. 기 존의 Nginx 를 이용 하여 HTTPS 접근 을 설정 하려 고 합 니 다.
1. 신청서
아 리 클 라 우 드 에서 무료 인증 서 를 신청 하고 서버 에 다운로드 합 니 다.
2. 도 메 인 이름 분석 설정
git. example. com 주소 분석 만 들 기
3. 외부 접근 주소 설정
/ etc / gitlab / gitlab. rb 설정
external_url 'https://git.example.com'
4. 내 장 된 Nginx 사용 하지 않 기
/ etc / gitlab / gitlab. rb 설정
nginx['enable'] = false
5. 현재 Nginx 의 사용자 이름 설정
서버 에 Nginx 를 설치 할 때 만 든 사용자 이름 에 따라 / etc / gitlab / gitlab. rb 에 설정 합 니 다.
web_server['external_users'] = ['nginx-user']
6. 현재 Nginx 의 수신 대 리 를 설정 합 니 다.
/ etc / gitlab / gitlab. rb 설정
gitlab_rails['trusted_proxies'] = ['127.0.0.1']
7. 기 존 Nginx 에 가상 호스트 추가
/ data / nginx / nginx. conf 설정
upstream gitlab-workhorse {
server unix:/var/opt/gitlab/gitlab-workhorse/socket fail_timeout=0;
}
server {
listen 80;
server_name git.example.com;
server_tokens off;
return 301 https://$http_host$request_uri;
access_log /var/log/nginx/gitlab_access.log;
error_log /var/log/nginx/gitlab_error.log;
}
server {
listen 443 ssl;
server_name git.example.com;
server_tokens off;
root /opt/gitlab/embedded/service/gitlab-rails/public;
ssl on;
ssl_certificate cert/git.example.com/git.example.com.pem;
ssl_certificate_key cert/git.example.com/git.example.com.key;
ssl_ciphers "ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4";
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 5m;
access_log /var/log/nginx/gitlab_access.log;
error_log /var/log/nginx/gitlab_error.log;
location / {
client_max_body_size 0;
gzip off;
proxy_read_timeout 300;
proxy_connect_timeout 300;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Ssl on;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://gitlab-workhorse;
}
}
8. 재 설정
nginx -t
nginx -s reload
gitlab-ctl reconfigure
9. 참고 자료
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Hugo에서 시작한 블로그 기사를 멋지게 관리합니다.Hugo에서 블로그를 시작하면 블로그 게시물을 다른 저장소에서 관리하면 커밋 로그가 더러워지지 않습니다. CI/CD를 사용하여 블로그 기사 저장소를 복제하고 빌드하는 파이프 라인을 구축하면 블로그 본문 소스를 만질 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.