Windows 10をインストールした後、SSHキーを取得して実行するのに非常に苦労しています。通常の方法は、SSHキーを作成し、.sshの下でユーザーのアカウントに投げます。このフォルダーはWindows 10では使用できないようです。
他の誰かがこれに遭遇しましたか?異なるリポジトリ用に3つのSSHキーが必要ですが、これは本当に私を妨げています。
Windows 10をインストールした後、SSHキーを取得して実行するのに非常に苦労しています。通常の方法は、SSHキーを作成し、.sshの下でユーザーのアカウントに投げます。このフォルダーはWindows 10では使用できないようです。
他の誰かがこれに遭遇しましたか?異なるリポジトリ用に3つのSSHキーが必要ですが、これは本当に私を妨げています。
回答:
cd
、別のフォルダーに移動する必要はありません。ssh-keygen
/c/Users/YourUserName/.ssh/id_rsa.pub
ps:gitをbash統合でインストールした場合(私のように)、最初のステップで「cmd」ではなく「Git Bash」を開きます。
ssh-keygen
ssh-keygen
コマンドをcmd-shellではなくgit-bashシェルで実行する必要がありました。
2019-04-07更新:本日、新しいバージョンのWindows 10(ビルド1809、「2018年10月の更新」)でテストしました。すでにインストールされているため、オープンSSHクライアントだけがベータ版ではなくなりました。したがって、キーを作成し、putty(pagent)の代わりにオープンSSHを使用するようにクライアントを設定するだけです。
ssh-keygen
を押してEnter キーを押します私はGit ExtensionsとSource Treeでテストしましたが、GitHubの個人用リポジトリで動作しました。以前のバージョンのWindowsを使用しているか、SSHのグラフィカルクライアントを使用する場合は、以下をお読みください。
2018-06-04 UDPATE:
Windows 10では、バージョン1709(win + Rとタイプwinver
してビルド番号を見つける)以降、MicrosoftはOpenSSHクライアントとサーバーのベータ版をリリースしています。キーを作成できるようにするには、OpenSSHサーバーをインストールする必要があります。これを行うには、次の手順に従います。
これでプロンプトを開くことができssh-keygen
、クライアントはウィンドウによって認識されます。私はこれをテストしていません。Windows 10がない場合、またはベータ版を使用したくない場合は、以下のputtyの使用方法の手順に従ってください。
ssh-keygen
Windowsにはインストールされません。PuttyでSSH鍵を作成する方法は次のとおりです。
opensshキーの場合、さらにいくつかの手順が必要です。
これでキーが保存されました。pagent
そこに秘密鍵を開始して追加します(Putty形式のppkファイル)。
pagent
認証が機能するためには実行している必要があることに注意してください
警告:キーをC:/User/username/.ssh(デフォルトの場所)に保存する場合は、キーをどこかにバックアップしてください(例:パスワードマネージャー)。
最新のWindows 10 Update(バージョン1607)の後、.sshフォルダーが空になりました。これは私の鍵が常にあった場所ですが、Windowsは更新時にそれらを削除することにしました。
ありがたいことに、私は自分のキーをバックアップしました...しかし、...今日、一部の人々は自分のPCを元に戻すでしょう。
Windows 10では、説明されたルートを使用すると、ssh-keygenジェネレーターでファイル名が指定されていない場合にのみ、フォルダーにファイルが書き込まれるという顕著な例外が見つかりました。
カスタムキー名を指定すると、RSA公開鍵と秘密鍵を含むファイルがフォルダーに書き込まれなくなりました。
ssh-keygen
c:/Users/YourUserName/.ssh/
(管理コマンドラインとWindows 10 Proを使用)
:-/
秘密鍵/公開鍵を作成します。
git bash
、PowerShell
、cmd.exe
など)ssh-keygen
~/.ssh/id_rsa
)RSA
である3072
以上これで秘密鍵と公開鍵のペアが作成されました。
GITの場合、キーはの強度を持っている2048
必要があり、ユーザー.ssh
ディレクトリに配置され、とで呼び出される必要がid_rsa
ありid_rsa.pub
ます。キーをどこかに貼り付けるときは、VIMのような新しい行を追加しないプログラムを使用してください。
すでに管理者であり、手動でディレクトリを作成できたとしても、「管理者を実行」でコマンドラインを開くことで、ようやく機能しました
OpenSSHクライアントを備えたWindows 10を使用している場合、キーを生成できる可能性がありますが、ssh-copy-idコマンドはクライアントツールセットの一部ではないため、ターゲットのLinuxボックスにキーをコピーできません。
この問題が発生したため、これに対処するために小さなPowerShell関数を作成しました。これをプロファイルに追加します。
function ssh-copy-id([string]$userAtMachine, [string]$port = 22) {
# Get the generated public key
$key = "$ENV:USERPROFILE" + "/.ssh/id_rsa.pub"
# Verify that it exists
if (!(Test-Path "$key")) {
# Alert user
Write-Error "ERROR: '$key' does not exist!"
}
else {
# Copy the public key across
& cat "$key" | ssh $userAtMachine -p $port "umask 077; test -d .ssh || mkdir .ssh ; cat >> .ssh/authorized_keys || exit 1"
}
}
ここで要点を取得できます