ユーザーのラップトップを変更し、ユーザー名とパスワードをOpenVPN GUIに保存しました。当然のことながら、しばらく入力して[パスワードを保存]をクリックしたため、パスワードがわかりません。とにかくこれらの詳細を回復して、VPNアカウントをリセットせずに新しいラップトップに移行できるようにすることはできますか(これは、かなり困難になるはずです!)。
どちらのラップトップもWindows 10です。
.ovpn
、p12
、および.key
ファイルをコピーしましたが、GUIは依然としてユーザー名とパスワードの入力を求めます。 configディレクトリ内(OpenVPNのProgram Filesの下)にパスワードテキストファイルはありません。
レジストリも検索しましたが、そこに情報が見つかりませんでした。
[〜#〜] edit [〜#〜]:明確にするために、実際にはパスワードを「回復」する必要はありません。たとえば、レジストリキーで暗号化されている場合は、古いラップトップからキーをエクスポートして、新しいラップトップにインポートできます。ラップトップ1からラップトップ2に詳細をコピーする方法を見つける必要があります。
OpenVPN GUI ソースコード に従って、保存されたパスワードはHKCU\Software\OpenVPN-GUI\configs
の下のレジストリに保存されます。
このリンクのPowershellスクリプトは私のためにパスワードを取得します: OpenVPN Password Recovery
私のコンピュータのレジストリ名は少し異なります。私のバージョン:
$keys = Get-ChildItem "HKCU:\Software\OpenVPN-GUI\configs"
$items = $keys | ForEach-Object {Get-ItemProperty $_.PsPath}
foreach ($item in $items)
{
$encryptedbytes=$item.'key-data'
$entropy=$item.'entropy'
$entropy=$entropy[0..(($entropy.Length)-2)]
$decryptedbytes = [System.Security.Cryptography.ProtectedData]::Unprotect(
$encryptedBytes,
$entropy,
[System.Security.Cryptography.DataProtectionScope]::CurrentUser)
Write-Host ([System.Text.Encoding]::Unicode.GetString($decryptedbytes))
}
また、PowershellでAdd-Type -AssemblyName System.Security
を実行して機能させる必要がある場合もあります。