Amazon Linux version2 에서 진행하였다.
### JDK 1.8.0 설치 및 버전 확인
sudo yum install -y java-1.8.0-openjdk-devel.x86_64
java -version
### Jenkins 설치
# 1. jenkins repository를 설정파일을 생성
sudo wget -O /etc/yum.repos.d/jenkins.repo
https://pkg.jenkins.io/redhat-stable/jenkins.repo
# 2. 설정파일 생성 후 아래 실행
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
# 3. 관리자 권한으로 변경
sudo -s
# 4. yum 을 이용한 젠킨스 설치
yum install jenkins
# 5. 젠킨스 실행
sudo systemctl start jenkins
# (Optional) 만약 부팅시 가능하게 설정하려면 다음도 추가
# sudo systemctl enable jenkins
# 6. 젠킨스 상태 확인
sudo systemctl status jenkins
.jks란 java key store의 약자로서 자바 언어에서 사용되는 보안 인증서
# 1. .crt 및 .key 를 조합하여 jenkins.pfx 만들기
# export password 입력 필요!
openssl pkcs12 -export -in <crt인증서 경로>.crt -inkey <private키 경로>.key -out jenkins.pfx
# .pfx 에 포함된 인증서 확인
openssl pkcs12 -info -in jenkins.pfx
# 2. 위에서 생성한 jenkin.pfx를 .jks 로 변환
keytool -importkeystore -srckeystore jenkins.pfx -srcstoretype pkcs12 -destkeystore jenkins.jks -deststoretype jks
# 3. jenkins 전용 폴더 생성 후 jks 파일 이동
mkdir -p /etc/jenkins
cp jenkins.jks /etc/jenkins/
# 4. key와 폴더 권한 변경
chown -R jenkins: /etc/jenkins
chmod 700 /etc/jenkins
chmod 600 /etc/jenkins/jenkins.jks
# 1. config 파일 접속
sudo vi /etc/sysconfig/jenkins
아래와 같이 변경하기
JENKINS_PORT="-1" # http 포트 비활성화
JENKINS_HTTPS_PORT="9090" # 젠킨스 포트 설정 (다른 포트여도 ㄱㅊ)
JENKINS_HTTPS_KEYSTORE="/etc/jenkins/jenkins.jks" # 앞서 변환한 .jks 인증서 경로
JENKINS_HTTPS_KEYSTORE_PASSWORD="<인증서 비밀번호>"
JENKINS_HTTPS_LISTEN_ADDRESS="0.0.0.0" # 모든 ip에서 접근할 수 있도록 변경
JENKINS_ENABLE_ACCESS_LOG="yes" # 초기 admin 비밀번호를 확인할 수 있도록 로그 활성화
# 2. 젠킨스 재실행
sudo systemctl restart jenkins
AWS에 접속하여 젠킨스 포트번호 (9090) 열어주기
https://www.sslcert.co.kr/guides/SSL-Certificate-Convert-Format
https://devopscube.com/configure-ssl-jenkins/