
그래서 많은 사람들처럼 저는 다음 도구의 도움을 받아 SSH 인증에 GPG 키를 사용합니다.원숭이 공, 명령을 사용하여 개인 키를 에이전트에 로드하고 monkeysphere s
비밀번호 없이 원하는 곳 어디든 자유롭게 연결할 수 있습니다.
최근에 Arch Linux 시스템을 업데이트했는데 GnuPG 2.0이 Monkeysphere와 호환되지 않는 GnuPG 2.1로 대체되었음을 발견했습니다. GPG 2.1은 gpg-agent
Monkeysphere가 더 이상 필요하지 않게 만드는 개선 사항을 제공하지만 사용 방법에 대한 명확한 지침을 찾는 데 어려움을 겪고 있습니다.
Monkeysphere에서 가능한 것과 동일한 결과를 얻기 위해 GPG 2.1을 구성하는 방법(개인 키를 메모리에 한 번 로드하고 다음 연결마다 사용)을 설명할 수 있는 사람이 있습니까?
답변1
나는 당신이 ssh.com 문서에서 다루는 이 점을 찾고 있다고 생각합니다.PGP 핵심 부분.
발췌SSH Secure Shell은 OpenPGP 표준과 해당 표준을 준수하는 PGP 프로그램만 지원합니다. GnuPG는 다음 지침에서 사용됩니다. PGP를 사용하는 경우 유일한 차이점은 파일 확장자가 GnuPGP의 gpg 대신 pgp라는 것입니다.
사용자 공개 키 인증이 활성화되도록 하려면
AllowedAuthentications
원격 파일과 로컬 파일 모두의 필드에 "publickey"라는 단어가 포함되어야 합니다./etc/ssh2/sshd2_config
/etc/ssh2/ssh2_config
AllowedAuthentications publickey
다른 인증 방법도 구성 파일에 나열될 수 있습니다. 개인 키링( )을 로컬 디렉터리
secring.gpg
에 복사합니다. 로컬 디렉터리에 ID 파일이 아직 없는 경우 ID 파일을 만듭니다. ID 파일에 다음 줄을 추가합니다.~/.ssh2
~/.ssh2
PgpSecretKeyFile <filename of the user's private key ring> IdPgpKeyName <name of the OpenPGP key in PgpSecretKeyFile> IdPgpKeyFingerprint <fingerprint of OpenPGP key in PgpSecretKeyFile> IdPgpKeyId <id of the OpenPGP key in PgpSecretKeyFile>
공개 키링( )을 원격 디렉터리
pubring.gpg
에 복사하세요.~/.ssh2
scp2 pubring.gpg user@remote_host:.ssh2
원격 디렉토리에 인증 파일을 생성합니다
~/.ssh2
. 인증 파일에 다음 줄을 추가합니다.PgpPublicKeyFile <filename of the user's public-key ring> PgpKeyName <name of the OpenPGP key> PgpKeyFingerprint <fingerprint the OpenPGP key> PgpKeyId <id of the OpenPGP key>
이제 Secure Shell을 사용하여 로컬에서 원격으로 로그인할 수 있습니다. 로그인을 시도하십시오:
Local>ssh Remote Passphrase for pgp key "user (comment) <user@Local>":
PGP 키의 비밀번호를 입력하면 Secure Shell 연결이 설정됩니다.
인용하다
답변2
ssh-agent 프로토콜에 대한 지원을 활성화하려면 gpg-agent에 지시하십시오. 실행하여 시작
--enable-ssh-support
하거나 배치하여 수행 할 수 있습니다.enable-ssh-support
입력하다
~/.gnupg/gpg-agent.conf
.상담원에게 말해요어느SSH 인증에 사용하려는 키(키에는 다음이 있어야 합니다.ㅏ(확인) 능력). 당신은 찾아야합니다주요 요점키 목록을 작성하려면
--with-keygrip
다음과 같이 키를 나열하십시오.gpg2 --with-keygrip -k <your email>
키그립(또는 여러 키의 키그립, 한 줄에 하나씩)을
~/.gnupg/sshcontrol
.2.1부터 프록시는 수신 대기하는 소켓에 대해 정적 경로를 사용합니다. ssh가 올바른 소켓을 가리키도록 다음을 추가하기만 하면 됩니다.
export SSH_AUTH_SOCK="$HOME/.gnupg/S.gpg-agent.ssh"
일부 시작 파일(
~/.xsession
또는~/.bashrc
적합한 파일).