
# 変数
$adminPublicKey = Get-Content "id_ed25519.pub" -Encoding ASCII
$winSSHAdminPath = "C:/ProgramData/ssh"
$winSSHAdminAuthKeys = "${winSSHAdminPath}/administrators_authorized_keys"
$winSSHHostKeys = "${winSSHAdminPath}/ssh_host_*_key.pub"
# Windows Serverの標準機能であるOpenSSHサーバ(sshdサービス)をインストール
Add-WindowsCapability -Online -Name OpenSSH.Server‾‾‾‾0.0.1.0
#サービスとして認識されるまで待つ
while(!(Get-Service sshd -ErrorAction SilentlyContinue)) { Start-Sleep 1; }
# sshdサービスを起動
Start-Service sshd
# sshdサービスが自動的に起動するように設定を変更
Set-Service sshd -StartupType Automatic
# 管理アカウント用の公開鍵を所定のパスに保存
Write-Output ${adminPublicKey} | Out-File ${winSSHAdminAuthKeys} -Encoding ASCII
# 公開鍵ファイルを管理者とシステムアカウントだけがアクセスできるように制限
icacls.exe ${winSSHAdminAuthKeys} /inheritance:r /grant "Administrators:F" /grant "SYSTEM:F"
# C:¥ProgramData¥sshフォルダにあるホストキーを表示
Write-Output "----- SSH Host Keys -----"
Get-Content ${winSSHHostKeys}
from "鍵" - Google ニュース https://ift.tt/82YGqhB
via IFTTT
Bagikan Berita Ini
0 Response to "【Azure VM】Windows Serverに公開鍵認証のSSHで接続できるようにする - @IT"
Post a Comment