概要
(メモ) お金ないけどクラウドにPCを置きたい。GCEでUbuntuの起動しssh接続するまで。
2026/4/1版
環境
- Google アカウント(決済登録必要)
- MyDNSでホスト名借用
作成
https://console.cloud.google.com/compute/instances
インスタンスを作成 >
- us-central1(アイオワ)★
- e2-micro (2 vCPU、1コア、1GBメモリ)★
OSとストレージ >
- Ubuntu
- Ubuntu 24.04 LTS(x64)
- バランス永続ディスク★
- 30GB★
ネットワーキング >
- ネットワーク サービス ティア: スタンダード
★: 無料枠
VM設定
(例)任意IPv4アドレスから一部のポートにアクセス可能に
VMインスタンス > ネットワークの詳細の表示 >
VPCファイアウォールルールを作成 >
指定したプロトコルとポート >
- TCP: 10000-11000
- UDP: 10000-11000
ターゲット: ネットワーク上のすべてのインスタンス
送信元IPv4範囲: 0.0.0.0/0
他は初期値のまま
初回SSH
(例) Ubuntuゲスト設定によるsshアクセス
VMインスタンス > SSH >
コンソールが開く。証明書を生成。
ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519 -N ""
cat ~/.ssh/id_*.pub > ~/.ssh/authorized_keys
chmod 600 ~/.ssh/*
cat ~/.ssh/id_ed25519
id_ed25519をコピペしてローカルOSにコピー
cat > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/*
サーバで id -un user_idを採取。 VMインスタンス>外部 IP で外部アドレス(ext_address)を採取。
ssh接続。
ssh $user_id@$ext_address
ホスト名解決
事前準備:MyDNS様からホスト名を借用
sudo apt install -y cron
MYDNS_ID=xxxxxxxx
MYDNS_PW=xxxxxxxx
MYDNS_CRED=$MYDNS_ID:$MYDNS_PW
crontab - << EOF
0 3 * * 1 /bin/wget -q -O - http://$MYDNS_CRED@ipv4.mydns.jp/login.html
0 3 * * 1 /bin/wget -q -O - http://$MYDNS_CRED@ipv6.mydns.jp/login.html
EOF
以降、普通にOS設定作業。
参考