Linux/서버 보안(CentOS)

[테스트2] 공개키 생성과 관리 및 배포 후 사용

D4tai1 2018. 12. 23.

※ 비교적 간단한 서버에서 공개키를 생성과 관리를 하고 이후 배포하여 사용하는 것을 테스트하려고 한다.

※ 이 글에서 진행한 내용은 이전에 더 세부적으로 다루었지만 배운 내용을 잊어버리지 않도록 스스로를 테스트하는 것이다.


1. 계정 생성 후 공개키 생성과 관리 및 배포 후 사용

1) test1, test2 사용자 추가 후 비밀번호 설정

  ▶ [useradd test1] 명령어로 test1 계정을 생성한다.
  ▶ [useradd test2] 명령어로 test2 계정을 생성한다.
  ▶ [passwd test1] -> 패스워드 입력
  ▶ [passwd test2] -> 패스워드 입력


2) test1 계정으로 w.txt(rw-rw----) 파일 생성 후 내용 기록(test1계정으로 진행)

  ▶ cat > w.txt
  ▶ [ok ok]
  ▶ chmod 660 w.txt


3) w.txt 파일을 test2 계정만 예외적으로 읽고 쓰기가 가능하도록 설정 후 test2 홈 디렉터리에 복사(root계정으로 진행)

  ▶ 다른 사용자의 홈 디렉터리에 접근하기 위해 루트계정으로 진행하였다.

  ▶ 파일 접근제어리스트(setfacl)는 캡쳐를 잘못해서 2)의 그림에 명령어가 적혀있다.

  ▶ [setfacl -m u:test2:rw w.txt] 명령어로 w.txt 파일에 대해 test2 사용자만 읽고 쓸 수 있도록 한다.

  ▶ [cd /home/test1] 명령어로 test1의 홈 디렉터리로 이동한다.

  ▶ [cp -a w.txt ../test2/] 명령어로 test2의 홈 디렉터리에 w.txt를 복사(속성포함)한다.


4) test2 계정으로 로그인 후 w.txt 파일에 내용 기록(test2계정으로 진행)

  ▶ [cat >> w.txt] 명령어를 이용하여 쓸 준비를 한다.
  ▶ [내용 작성]


5) test1 계정에서 자신의 키 상태를 핑거프린팅(test1계정으로 진행)

  ▶ [gpg --fingerprint] 명령어를 이용하여 키 상태를 확인한다.


6) test1 계정으로 새로운 공개키 제작

  ▶ [gpg --gen-key]
  ▶ 1
  ▶ [enter]
  ▶ [enter]


  ▶ y
  ▶ [names]
  ▶ [key1@test.com]
  ▶ [imsi]
  ▶ O


  ▶ 개인키 비밀번호를 입력한다.


  ▶ [계속 입력]



  ▶ [gpg --fingerprint] 명령어를 이용하여 생성된 키 정보를 확인한다.


7) test1의 공개키(test1.pub)를 추출하여 test2의 기본 폴더로 보내고, test2는 test1의 공개키를 자신의 키 스토어에 등록

  ▶ (test1계정으로 진행) [gpg -o test1.pub -a --export key1@test.com]로 key1@test.com의 공개키를 추출한다.


  ▶ (root계정으로 진행) [mv test1.pub ../test2/] 명령어로 test1의 공개키를 test2의 홈 디렉터리에 옮긴다.



  ▶ (test2계정으로 진행) [gpg --import test1.pub] 명령어로 test1의 공개키를 test2의 키스토어에 등록한다. 

  ▶ [gpg --fingerprint] 명령어로 등록한 키 정보를 확인한다.


8) test2계정에서 파일을 생성 후 test1의 공개키로 암호화하여 test1에게 전송

  ▶ (test2계정으로 진행)
  ▶ [cd] 
  ▶ [cat > m.txt]
  ▶ [hellow from test2]
  ▶ [gpg -aer key1@test.com m.txt] 명령어로 m.txt를 test1의 공개키로 암호화한다.
  ▶ y


  ▶ (root계정으로 진행)
  ▶ cd /home/test2
  ▶ mv m.txt.asc ../test1/


9) test1은 받은 암호화  파일을 자신의 개인키로 복호화 후 내용 확인(test1계정으로 진행)

  ▶ [cd]
  ▶ [gpg m.txt.asc] 명령어로 복호화를 시도한다.


  ▶ [자신의 개인키]를 입력 후 복호화에 성공한다.

  ▶ [cat m.txt] 명령어로 내용을 확인한다.

  ▶ 위 그림은 캡쳐를 하지 못해 재시도를 했기 때문에 덮어쓰기를 할 것인지 물어보는 부분이 있다.


※ 공개키를 사용한 파일 암호화에 대한 내용은 아래 주소에서 추가로 확인할 수 있다.

  ▶ https://ccurity.tistory.com/192

'Linux > 서버 보안(CentOS)' 카테고리의 다른 글

[테스트4] 암호화된 하드디스크 마운트  (0) 2018.12.24
[테스트3] IPS(fail2ban) 설정  (0) 2018.12.24
[테스트1] 서버 기본설정  (0) 2018.12.23
스케쥴러  (0) 2018.12.16
네트워크 보안  (0) 2018.11.25

댓글