PKCS#11
...
Xshell에서 PKCS#11 인증하기
...
드라이버(미들웨어) 및 관련 도구 설치
Xshell에서 PKCS#11 인증을 진행하기 위해서는 Windows용 Smart Card Minidriver가 Minidriver가 필요합니다. OpenSC 미들웨어에서 제공하는 PKCS11 Minidriver를 Minidriver를 사용하면 호환되는 RSA 키 인증을 받을 수 있습니다.
Windows용 OpenSC 라이브러리를 설치하기 위해 다운로드 페이지에 방문합니다다음 경로에서 윈도우용 OpenSC 라이브러리를 다운로드 받습니다. (https://github.com/OpenSC/OpenSC/releases)
각 버전의 설명 하단에 나열된 다운로드 파일 중 32비트용 OpenSC 설치 파일 (OpenSC-0.xx.x_win32.msi)을 파일을 다운로드 받습니다.
해당 설치 파일을 실행하여 설치를 진행합니다. 설치 도중 설치 유형을 유형을 묻는 창이 나타나면 Typical을 선택합니다.
설치가 완료되면 다음 경로에 해당 파일이 존재하는지 확인합니다: .
C:\Program Files (x86)\OpenSC Project\OpenSC\pkcs11\opensc-pkcs11.dll
...
SSH 서버에 하드웨어 토큰의 RSA 공개 키 등록
다음 명령들을 통해 하드웨어 토큰의 공개 키를 확인합니다:
pkcs15-tool --list-public-keys
pkcs15-tool.exe --read-ssh-key [RSA PIV AUTH pubkey ID]
해당 공개 키 문자열을 복사하여 SSH 서버의 AuthorizedKeysFile에 등록합니다. OpenSSH의 기본 AuthorizedKeysFile은 사용자 홈디렉토리의 ‘.ssh/authorized_keys’ 파일입니다.
주의: .ssh 디렉토리 및 authorized_keys 파일의 접근 권한은 해당 사용자에게만 있어야 합니다.
PKCS#11 Session 세션 생성 및 접속
이제 Xshell에서 PKCS#11 인증을 위한 세션을 생성해 보겠습니다.
Xshell을 실행하고 상단 메뉴의 ‘파일 ‘파일 - 새로 만들기(N)...’ 를 클릭합니다.실행합니다
좌측 범주에서 ‘연결’ 을 선택한 후 세션 파일 이름과 호스트 주소를 주소를 입력합니다.
좌측 범주에서 ‘사용자 인증’을 ‘사용자 인증’을 클릭합니다. 사용자 인증 방법을 ‘PKCS11’로 ‘PKCS11’로 지정한 후 사용자 이름을 입력합니다. 이후 우측의 ‘설정‘설정(S)...’을 ’을 클릭합니다.
참고: 여기에 사용자 이름을 입력하지 않아도 인증 과정에서 입력할 수 있습니다.
PKCS11 설정 창이 열리면 대화 상자에서 미들웨어 경로와 하드웨어 토큰 핀을 번호를 입력합니다.
- 미들웨어 경로 : OpenSC 라이브러리 파일의 경로입니다. (C:\Program Files (x86)\OpenSC Project\OpenSC\pkcs11\opensc-pkcs11.dll)
- 토큰 핀 : USB 토큰에서 토큰에 설정된 PIN을 입력합니다. 이 부분은 추후 세션에 연결한 뒤에 입력해도 됩니다.인증이 진행되는 도중에도 입력할 수 있습니다(Pin 번호의 확인 및 설정에 대해서는 해당 하드웨어 토큰 공급자의 소프트웨어나 사용자 매뉴얼을 참고하실 필요가 있습니다).
모든 설정이 완료되었습니다. 세션에 연결 세션을 실행하여 문제 없이 접속 되는지 확인해봅니다확인해 봅니다.