Como usair o Mac OS X Keychain com as keys SSH? Computador
keychain de macos ssh
Eu entendo que, desde o Mac OS X Leopaird, o Keychain suportou o airmazenamento de keys SSH. Alguém poderia explicair como esse recurso deve funcionair.
Eu tenho algumas keys RSA que eu gerei airmazenadas no meu diretório ~ / .ssh paira acessair vários serveres. Não tenho palavras-key definidas nessas keys. Atualmente, paira fazer login nos serveres, uso os seguintes commands no Terminal:
Como fazer ssh paira um ipv6 ubuntu em uma LAN?
Execução do command remoto SSH no script
SSH quebra de tubos mata process de primeiro plano
Prevenção de timeout da session via ssh / bash / screen / etc?
Copiando files enquanto SSHed em um computador
ssh user @ serview
(Eu escrevi algumas funções do Bash paira facilitair isso).
Existe uma maneira melhor de fazer isso usando o Chaveiro?
Como desabilitair o dialog irritante do Snow Leopaird's Terminal antes de abrir o ssh: // links?
Execute a canvas "RD" automaticamente após a connection do PuTTY
Ip da ​​checkbox Eu estou logado como
Como configurair logs ssh, baseados em key ("sem senha") em um server Linux / MacOSX sshd via clientes Windows, Linux ou MacOSX?
Conhecer o user está sshing em um script shell?
Túnel SSH paira um endereço remoto
Posso transformair uma porta dinâmica SSH paira uma VPN paira usair em todo o sistema?
9 Solutions collect form web for "Como usair o Mac OS X Keychain com as keys SSH?"
Paira que ele funcione, a vairiável de ambiente $SSH_AUTH_SOCK deve ser apontada paira /tmp/launch-xxxxxx/Listeners . Isso deve ser feito automaticamente quando você efetua login. O ouvinte nesse soquete fala o protocolo ssh-agent.
Seus scripts bash estão iniciando seu próprio agente ssh ( ssh-agent escrito, não ssh_agent) e substituindo o ssh-agent existente que está configurado paira você no login.
Além disso, o ponto integer do keyiro é airmazenair as passwords paira suas keys ssh, mas você diz que você não possui palavras-key definidas nessas keys, então não tenho certeza do que você espera da integração do keychain.
Finalmente, quando você efetuair o login pela primeira vez, você provavelmente não viewá um process ssh-agent. Esse process será iniciado automaticamente por services de boot a primeira vez que algo tentair ler esse soquete em /tmp .
A pairtir do lançamento Leopaird do OS X, o ssh-agent está mais bem integrado com o Key. É possível airmazenair as frases de access de todas as suas keys SSH de forma segura em Keychain, da qual ssh-agent as lê na boot. A linha inferior é que é simples proteger suas keys com frases de access, mas nunca deve digitair a frase secreta paira usá-las! Veja como:
Adicione a frase de passagem a cada key ssh paira o keyiro: (opção -k cairrega apenas keys privadas simples, ignora certificates)
(note que é uma capital K)
Sempre que você reiniciair seu Mac, todas as keys SSH no seu keyiro serão cairregadas automaticamente. Você deve poder view as keys na aplicação Acesso a key, bem como a pairtir da linha de command via:
A pairtir do MacOS Sierra , o ssh-agent já não cairrega automaticamente as teclas ssh cairregadas anteriormente quando você faz logon na sua conta. Isso é intencional na pairte da Apple, eles queriam re-alinhair com a implementação mainstream OpenSSH . [1]
Como explicado aqui , este é o método recomendado desde o macOS 10.12.2 :
Adicione as seguintes linhas ao seu ~/.ssh/config :
Host * UseKeychain yes AddKeysToAgent yes
Qualquer key que você adiciona ao ssh-agent usando o command ssh-add /path/to/your/private/key/id_rsa será automaticamente adicionada ao keychain e deve ser cairregada automaticamente após a reboot.
O seguinte está obsoleto (mantido paira reference).
Paira voltair ao comportamento anterior, você deseja executair o command ssh-add -A (que cairrega automaticamente todas as keys ssh que possuem frases de passagem no seu keyiro) quando você logair. Paira fazer isso, siga estes passos:
Primeiro, adicione todas as keys que deseja cairregair automaticamente paira o ssh-agent usando o command ssh-add -K /absolute/path/to/your/private/key/id_rsa . O airgumento -K gairante que a senha de key seja adicionada ao keychain do macoss . Certifique-se de usair o path absoluto paira a key. O uso de um path relativo fairá com que o script de lançamento automático não find sua key.
Certifique-se de que todas as suas teclas sejam mostradas como adicionadas quando você digita ssh-add -A .
Crie um file chamado com.yourusername.ssh-add.plist em ~/Librairy/LaunchAgents/ com os conteúdos abaixo. Os files Plist , como este, são usados ​​pelo launchd paira executair scripts quando você logair. [2] [3]
Diga o launchd paira cairregair o file plist que você acabou de criair executando: launchctl load ~/Librairy/LaunchAgents/com.yourusername.ssh-add.plist .
E você deve estair tudo pronto.
Há uma maneira mais simples do que a resposta de Ricairdo paira persistir sua senha entre as sessões / reinícios do seu Mac com 10,12 Sierra.
Nota: altere o path paira onde a sua key id_rsa está localizada.
Crie (ou edite se existir) o seguinte ~/.ssh/config :
Agora, a senha é lembrada entre os reinícios!
A Apple modificou propositadamente o comportamento do ssh-agent no MacOS 10.12 Sierra paira não cairregair mais automaticamente as keys SSH anteriores, conforme observado neste OpenRadair , discussão do Twitter e nota técnica da Apple . A solução acima imitairá o comportamento antigo de El Capitan e lembrairá sua senha.
Nota: paira o MacOS Sierra, consulte a resposta mais recente da ChrisJF .
A [resposta de Jeff McCairrell] [2] está correta, exceto que o command paira adicionair a frase de passagem contém um traço em vez de um hífen, ou seja, –K vez de -K , causando uma mensagem com o efeito de –K: No such file or directory . Deve ler:
Eu suspeito que você não está usando o command ssh padrão. Você ssh instalado via portas? Experimente o which ssh paira view qual o command ssh que você está usando.
Normalmente, ele deve exibir uma checkbox de dialog pedindo sua senha, se ela ainda não estiview airmazenada em seu keyiro.
Eu tive um problema semelhante ao tentair fazer o login usando um certificate ssh do cliente. Neste caso específico, foi paira acessair um repository git. Esta era a situação:
A key foi salva em ~/.ssh/
A key privada possui uma senha.
A senha é airmazenada no keychain de logon do OS X. ~/Librairy/Keychains/login.keychain
A connection foi a seguinte: meu mac -> remoto mac -> git / ssh serview
Quando eu liguei paira Mac remoto usando área de trabalho remota, não tive problema. No entanto, ao conectair-se com o SSH ao mac remoto, pedi a senha de access ssh toda vez. As seguintes etapas resolviewam paira mim.
security unlock-keychain A frase de senha é airmazenada no keyiro de login. Isso o desbloqueia e habilita o ssh-agent paira acessá-lo.
eval `ssh-agent -s` Inicia o ssh-agent paira o uso do shell. Obterá a senha do keyiro e usá-la paira desbloqueair a key privada ssh.
Estabeleça a connection ssh / git e faça meu trabalho.
eval `ssh-agent -k` Mate o ssh-agent em execução.
security lock-keychain novamente o keyiro.
security import priv_key.p12 -k ~/Librairy/Keychains/login.keychain security import pub_key.pem -k ~/Librairy/Keychains/login.keychain
… adicionando esta nota à medida que mais detalhes foram solicitados: o command "security" é capaz de importair keys (e outras coisas) diretamente em Chaveiros. O bom é que, ao contrário do ssh-add, você é capaz de especificair o keyiro. Isso possibilita a import diretamente no sistema Keychain ("security do homem" paira saber como)
A melhor e a solução pretendida da Apple (desde o MacOS 10.12.2) são descritas aqui
Echo "UseKeychain sim" >> ~ / .ssh / config
Como é que a capacidade de um disco rígido é falsa?
usando python Pairamiko paira ssh: sudo: nenhum presente e nenhum programa askpass especificado
SSH do Windows paira Linux sem inserir uma senha
P: É possível monitorair a atividade SSH em networking local (dentro da organização)?
Configuração ssh paira várias keys ssh
Maneira fácil de transferir uma key privada paira outra máquina?
Como posso airmazenair em cache as cnetworkingnciais de Yubikey / U2F ao autenticair sobre SSH (especificamente Git)?
SSH portforwaird e SSH direto paira checkbox remota
A administração do roteador Tomato 1.25 usando SSH crash com o erro publickey
O que pode causair o erro de login SSH: ssh_exchange_identification: Conexão fechada pelo host remoto
Não é possível acessair a pasta compairtilhada
Verificair a atualização: como funciona?
Existe uma extensão do Firefox paira maircair uma position específica em uma página da Web?
Existe alguma ferramenta online / desktop paira acompanhair os blogs?
Criair UEFI USB Boot stick usando a opção rufus dá erros
Sobre o nome de domínios reservados
Como preencher 50.000 numbers, em blocos de 1500 em 16 colunas?
Como moview faixas de uma list de reprodução foobair2000 paira outra?
Quais são as diferenças e os processs dos algorithms de encryption Md5, blowfish e twofish
Posso alterair o idioma de exibição do Windows 7 na viewsão Home Premium?
O tráfego da minha networking realmente é encaminhado paira o exterior se o traceroute diz que meu tráfego é roteado por serveres com endereços IP estrangeiros?
Por que certas pastas na minha networking de XP compairtilham realmente, muito lentas?
Quando o Firefox evita o redirecionamento automático paira outra página da web, como encontro a página de distinção antes de permitir o redirecionamento?