おすすめテンプレートを利用すればインストール不要で簡単ですが、今回はあえて自分でインストールしてみました。
IDCFクラウドのWebにログインして操作します。
仮想マシンの作成
1. 「西日本リージョン」→「コンピューティング」を選択して左上の「仮想マシン作成」をクリック
2. 最小のマシンタイプに「light.S1」を選択
1CPU/1GB RAMの200円/月で、個人的に利用するNextcloudやLibreOffice onlineには十分です。
3. イメージで「ISO」をクリックして、「debian-9.0.0-amd64-DVD-1.iso」を選ぶ
4. ボリュームは12GBにしてみました。1ヶ月240円です。サイズによって価格が変わります
5. SSH Keyは以前作成したものを選択
6. 後はデフォルトで、仮想マシン名を入れるくらいです
Debian 9のインストール
1. Web画面の左側「仮想マシン」タブを選択し、「仮想マシン名」をクリックする
2. 設定メニューの[コンソール]を選択し、「コンソールにアクセス」をクリックする
3. DVDイメージからインストーラーが起動してくるので普通にグラフィカルモードでインストールしました
ややモタモタしていてストレスは感じますが、PCへのインストールと同じです
4. インストーラで、日本語を選択、パーティションはディスク全体を利用し暗号化LVMをセットアップ、1つのパーティションにを選択します
再起動などしたときに、コンソールでLVMパスワードが必要になるので面倒だったと後で気が付きました(なぜSSHでログインできなくなったのか、しばらく思案しました)
5. インストーラで、ネットワークミラーで日本を選択。一番上を選びました
6. インストーラで、ソフトウェアの選択
Debianデスクトップ環境、プリンタサーバをOFFにして
SSHサーバと標準システムユーティリティのみを選択状態にします
7. インストールが終わったら、仮想マシン名をクリックして、「ISO」を選択、DVDイメージをデタッチしておきます
Debian 9の設定
まだSSHできないはずなので、コンソールアクセスでがんばります
aptの設定
/etc/apt/sources.listを編集
dvdをコメントアウト。main以外のcontrib,non-freeを追記します。
# apt update
# apt upgrade
基本最新でしたが、kernelがあがりました
sudoの設定
sudoパッケージをインストールして、一般ユーザにsudo権限を付与します
# apt install sudo
# visudo
ちなみにこの段階でdf -hで確認したところ"/"は11GBのうち1.2GB程度(12%)利用していました
vimのインストール:ないと編集しずらいので
$ sudo apt install vim
SSHログインの設定
$ sudo vi /etc/ssh/sshd_conf
ポート番号22の行をコメントアウト外します
どうせポートフォワードされるので、サーバでのポート番号はデフォルトのままにしています
ステータスはactiveでした。サービスを再起動します
$ sudo service sshd status
$ sudo service sshd restart
## ポートフォワードを設定する
1. Webで、[IPアドレス]タブを選択し、IPアドレス名(「no name」でした)をクリックします
2. [ポートフォワード]を選択して、パブリックポートに適当な大きなポート番号、プライベートポートに"22"を入れて、仮想マシンを該当のものを選択して、「+」をクリックします
## ファイアウォールの設定する
1. Webで、[IPアドレス]タブを選択し、IPアドレス名をクリックします
2. [ファイアウォール]を選択して、
ソースCIDRに"0.0.0.0/0"、
タイプに"TCP"
ポートレンジにポートフォワードで設定したポート番号を入力して
「+」をクリックします
ソースを0.0.0.0/0にすると怒られましたが、公開鍵認証のみに設定するので気にせずいきます。
## ノートPCからSSHしてみる
$ ssh -l ユーザ名 -p 設定したポート番号 IPアドレス
SSH接続時に知らないECDSA key fingerprintなので
サーバー側でフィンガープリントを確認します。md5の方のようでしたので、サーバ側で以下を実行します
$ ssh-keygen -E md5 -lf /etc/ssh/ssh_host_ecdsa_key.pub
SSHでの接続時に表示されたのと、コンソールのサーバーでの出力が同じことを確認します。
ちなみに、設定した覚えはないのですが、rootではログインできませんでした。
## sshdの設定
$ sudo vi /etc/ssh/sshd_config
#PubkeyAuthentication yes
#AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
#PasswordAuthentication yes
↓
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
PasswordAuthentication no
$ sudo service sshd restart
この設定する前に鍵をコピーしたら公開鍵では入れたように見えましたが、追いかけていません。
## ローカル側sshの設定
ノートPCの~/.ssh/configに今回の設定をidcf9という名前で記述します
# IDCF deb9
Host idcf9
HostName "IPアドレス"
Port "設定したポート名"
User "ログインユーザ名"
IdentityFile ~/.ssh/id_rsa_idcf
## 公開鍵をサーバに置いて公開鍵認証でログインする
鍵は以前に作ったものを利用しました。
公開鍵をscpでサーバーへコピーします
$ scp authorized_keys idcf9:
$ ssh idcf9
$ mkdir ~/.ssh
$ chmod 700 .ssh
$ mv authorized_keys .ssh/
$ exit
一度サーバーから抜けて試します
$ ssh -l ユーザ名 -p ポート番号 -i ~/.ssh/id_rsa_idcf IPアドレス
#ログインした時のメッセージをかえる
どこにログインしたかわかりにくいため
IDCFのおすすめテンプレ「Debian8」のものを利用しました。
/etc/motdを編集します
マイテンプレートにする
他でも使うかもしれないと思って、この段階でテンプレートにしてみました
1. Webの左メニューで[仮想マシン]を選択して、仮想マシンを選択して停止させます
2. Webの左メニューで[ボリューム]を選択します
3. ボリューム名をクリックし、[テンプレート作成]を選択して以下のように入力して[作成する]をクリックします
テンプレート名、説明を入力、
OSタイプを選択(一番近いDebian 8 64bitを選択)
パスワードリセット:有効
ダイナミックスケール:有効
しばらく待たされます。出来ると、メニューの[テンプレート]の一覧に表示されるようになります。
テンプレートの料金はわかりにくいのですが、IDCFクラウドのWebのシミュレーションで計算させてみるとディスク容量によるようです。12GBだと360円/月のようでした。
この記事へのコメント