.png)
사용할 때구글 클라우드 SDKWindows의 경우 gcloud compute ssh
내장된퍼티. gcloud compute ssh
명령 에 대해 다른 기본 SSH 클라이언트를 지정할 수 있습니까 ?
답변1
Windows용 Cloud SDK의 최신 릴리스에는 사전 패키징된 Putty 실행 파일(dir/bin/sdk 폴더)이 함께 제공됩니다. gcloud의 소스 코드를 살펴보면 PuTTY 사용이 하드코딩된 것으로 보이며 현재 다른 SSH 클라이언트를 선택할 수 없습니다.
답변2
MobaXterm, Windows 터미널 또는 SSH를 지원하는 기타 명령 프롬프트 애플리케이션을 사용하여 GCP VM에 로그인할 수 있습니다. 당신에게 필요한 것은개인 키그리고내부/외부 IPGCP 인스턴스(일명 GCP VM)의
개인키는 일반적으로C:\Users\<username>\.ssh\google_compute_engine
해당 파일을 찾을 수 없으면 gcloud login 명령어를 테스트 실행하여 경로를 알 수 있습니다.
$ gcloud compute ssh example-instance --zone=us-east1-b --dry-run
(--zone 플래그는 선택 사항입니다.)
출력에서 명령에 사용된 개인 키가 확장명 .ppk
( ppk
putty-private-key를 나타냄)으로 끝나는 것을 확인할 수 있습니다.
.ppk
동일한 경로에서 파일 탐색기를 탐색하면 확장자가 없는 다른 파일, 즉 표준 형식의 개인 키를 찾을 수 있습니다 .
이제 인스턴스의 외부/내부 IP가 필요합니다(VPN을 사용하는 경우 내부 IP를 사용할 수 있습니다).
두 가지 방법을 사용하여 VM의 외부 IP를 찾을 수 있습니다.
VM에 정상적으로 로그인하고 다음 명령을 사용하여 외부 IP를 찾으십시오.
$ curl ifconfig.co
(외부 IP는 유동 IP이므로 시간이 지나면 변경되므로 사용하지 않는 것이 좋습니다. 게다가 GCP 인스턴스가 외부 IP를 통해 로그인할 수 있도록 허용한 경우에만 사용할 수 있습니다. SSH 포트)
GCP 콘솔에서 내부/외부 IP를 모두 찾을 수도 있습니다.페이지(관리자 권한이 있는 경우에만 가능)
VM의 내부 또는 외부 IP를 얻은 후에는 아래 명령을 실행하여 즐겨 사용하는 셸에서 로그인할 수 있습니다.
$ ssh -i <path to private key without the (.ppk) extension> user@your_instance_IP
답변3
새 명령을 만들어 Microsoft.PowerShell_profile.ps1에 저장할 수 있습니다.
function g-ml-vm
{
# get default command as string(--dry-run)
$SrcCommand = (gcloud beta compute ssh username@ml-ubuntu-18 --dry-run `
--zone "your-zone" --project "your-project-id") | Out-String
# remove path to putty.exe
$PuttyExe = "putty.exe"
$SrcCommand = $SrcCommand.SubString($SrcCommand.IndexOf($PuttyExe) + $PuttyExe.length)
# use ssh, remove .ppk file extension from the key name
$NewCommand = "ssh" + $SrcCommand.Replace(".ppk", "")
# run
iex $NewCommand
}
이 기능의 첫 번째 명령만 변경하면 됩니다. 바꾸다사용자 이름@ml-ubuntu-18,귀하의 영역그리고귀하의 프로젝트 ID당신의 가치관으로.
새 프로필 스크립트를 사용하려면 터미널을 다시 시작하거나 . $profile
. 그 후에는 이 명령을 사용할 수 있습니다.
이렇게 하면 멋진 Windows 터미널 창을 떠나지 않고도 gcloud VM에 연결할 수 있습니다. :)