OpenSSL 명령어
1. enc - 암복호화
암호화
openssl enc -aes256 -salt -in testtext.txt -out enctext.txt
복호화
openssl enc -d -aes256 -in enctext.txt -out dectext.txt
-d : decrypt의 약어로, 복호화한다는 옵션 명령어
-aes256 : 256비트 크기의 aes알고리즘을 사용하여 파일의 데이터 암호화한다는 옵션 명령어
-salt : 암호화 수준을 강화하기 위한 옵션
-in : 암복호화 하기 위한 대상이 될 파일
-out : 암복호화 후 저장될 파일
암복호화시, 암호화 알고리즘 사용

aes 256으로 암호화

동일한 aes256으로 암호화시 정상적으로 노출

다른 비트의 aes128사용해도 bad decrypt가 출력,
상이한 알고리즘 사용시 정상 복호화 불가
-aes256
-aes128
-aria256
-camellia256
-des등등의 여러 알고리즘이 더 있다.
2. genrsa - 키 생성
개인키를 생성할 때, 사용된다.
openssl genrsa -aes256 -out test.key 2048
-aes256 : 설정하지 않으면, 암호화되지 않은(파일의 Lock이 없는) 키가 생성된다.
-out : 키의 이름 지정
-2048 : 키의 길이가 2048이라는 의미, 1024,4096도 가능하다. 키값의 길이가 길어질 수 록 보안성이 우수해진다.
openssl rsa -in test.key -noout -text
3. req - csr파일 생성 및 확인
CSR(Certificate Signing Request) 파일, 인증서명 요청서를 생성하는 명령어,
CSR파일에는 신청자의 정보와 설정한 키가 첨부한다.
*CSR파일 - 인증서로, 인증서를 신청한 신청자의 신원이 해당 CSR파일의 저장된다.
신청자의 국가, 지역, 회사명, 조직명, 도메인, 이메일의 정보를 보유하고 있다.
openssl req -new -key test.key -out testreq.csr
-new : 새로운 csr파일을 생성한다는 옵션
new옵션을 사용하지 않으려면 -in 옵션으로 참조될 csr을 첨부해주어야 한다.
-key : csr 사용시 사용될 키
-out : 생성될 csr파일의이름 지정
생성한 csr을 text로 확인
openssl req -in test.csr -text -noout
-in : 참조될 csr
-text : csr을 텍스트로 출력하는 옵션, 입력하지 않으면 아무것도 뜨지 않음
-noout : csr을 생성하지 않는 옵션
4. x509 - crt파일 생성 및 조회
CRT(Certificate) 파일, 인증서를 생성하는데 사용되는 명령어,
x509는 공개키 인증서와 인증 알고리즘을 사용하기 위한 ITU-T가 만든 PKI 표준이다.
*ITU-T (International Telecommunication Union Telecommunication) : 국제 전기 통신 연합, 전기 통신 표준화부문으로 모든 전기통신분야에 적용하는 표준을 만들어내는 단체
*PKI(Public Key Infrastructure) : 공개키 기반 구조, 공인된 인증기관이 인터넷상에서 사용자간에 법적 효력이 있는 인증서를 전자적으로 분배, 전달, 제공함으로 비인가된 자로부터 개인의 정보보호, 전자상거래 위변조 방지함
x509는 인증 기관에서 발행하는 규격화된 인증서를 기반으로 암호화 키 쌍을 웹사이트, 개인 또는 조직과 같은 ID와 안전하게 연관시키는 디지털 문서다.
openssl x509 -req -days 3650 -set_serial 1 -signkey test.key -in test.csr -out test.crt
-req : 인증서명 요청서를 참조하여 crt 파일을 생성한다는 옵션
-days : 인증서의 기간을 설정할 수 있다.
-set_serial : 인증서의 시리얼넘버를 설정할 수 있으며, 설정하지 않으면 임의의 시리얼넘버가 설정된다.
openssl x509 -in test.crt -noout -text
해당 명령어로 인증서의 정보를 확인할 수 있다.
'Linux' 카테고리의 다른 글
RHEL8 방화벽 - Firewalld (0) | 2024.05.02 |
---|---|
Linux - Yum Repository (0) | 2024.05.02 |
Linux 명령어 (0) | 2024.04.30 |
Linux 폴더 구조 (0) | 2024.04.29 |
Linux - 오라클 11G 초기설 (0) | 2024.03.05 |