読者です 読者をやめる 読者になる 読者になる

おいしいとこはすこしだけ

文系出身SE見習いの備忘録。

Serversman@VPSでUbuntuサーバを立ててCygwin(Conemu)からSSH接続できるようにした話

文系出身SE見習いの北白川キリコです。

今回はタイトル通りの内容です。(Qiitaとどっちに書こうか悩んだけどこっちにまとめて書きます)


用意したもの/使いたかったもの

  • Windows10
  • CygwinMinGWUTF-8非対応だったので)
  • ConEmu(かっこいいので)
  • Serversman@VPSで借りたUbuntuサーバ(安いので)
    • IPv4アドレス(XXX.XXX.XXX.XXX)
    • ポート番号(多分3843)
    • rootに対応するパスワード
  • TeraTerm(初回ログインに必要そうだったので/Puttyでも良いと思う)


Cygwinをインストール

https://www.cygwin.com/

基本的には上記公式HPからインストーラをDLして道なりに進めば大丈夫です。

参考:cygwinのインストールと使い方


ただ、インストールの際にmakeとsshを入れておかないと後で詰まります。

追ってインストールもできるのですが先にやっておいたほうが面倒がないと思います。


インストーラを起動して勧めていくとこの画面に辿りつくので、

f:id:kitashirakawakiriko:20161118234339p:plain

画面上部のSearch欄を使って以下の2つのパッケージを探します。

  • make(Develの下にあります)
  • openssh(Netsの下にあります)

ちなみに検索ワードを入力してからエンターキーを押すと次の画面に進んでしまってイライラするので注意。


CygwinをConEmuで開けるようにする

qiita.com

こちらを参考にさせていただきました。

別に真っ黒な画面でもいいといえばいいのですが、Conemu好きなので。


Teratermでログイン→鍵を生成して設置

root権限で仮想マシンへログインする | マニュアル|ServersMan@VPS Entry/Standard/Proプラン|仮想専用サーバー|クラウドサービス:ユビキタスプロバイダ DTI

ログインについてはServersMan@VPSさん側でマニュアルを用意してくれていたので素直に言うとおりにしました。


その後、TeraTermで鍵を作成します。

f:id:kitashirakawakiriko:20161118234350p:plain

f:id:kitashirakawakiriko:20161118234626p:plain

生成→パスフレーズ設定→公開鍵保存・秘密鍵保存の順でいいかと思います(厳密には公開鍵保存のときにはパスフレーズなくてもいいはずなのですが)。

保存先は一旦は適当で。後で然るべき場所に移動させます。


その後、公開鍵(id_rsa.pub)をサーバに設置します。

f:id:kitashirakawakiriko:20161118235306p:plain

TeraTermのウィンドウ上にドラッグアンドドロップするとこういうダイアログが表示されます。

「SCP」ボタンをクリックすると、カレントディレクトリに公開鍵がコピーされます。


あとは以下のような感じで。

$ mv id_rsa.pub ~/.ssh               # .sshに配置
$ cd ~/.ssh
$ cat id_rsa.pub >> authorized_keys  # 公開鍵の内容をauthorized_keysファイルに統合
$ rm id_rsa.pub                      # 統合後は元の公開鍵は要らないので削除
$ chmod 600 authorized_keys          # authorized_keysのアクセス制限変更

ここまでやったらとりあえずサーバとのセッションを切断します。


秘密鍵でログインする準備

さっき適当なところに置いた秘密鍵ですが、これをホームディレクトリに置きます。

コマンド叩いてもいいし、どうせWindows上のことなのでエクスプローラ使ってもいいです(CygwinのホームディレクトリはだいたいC:\cygwin64\home(ユーザ名)だと思います)。

ただ、.sshフォルダ作るのはエクスプローラ上ではできないと思うので、

$ mkdir ~/.ssh      # .sshフォルダ作成
$ mv id_rsa ~/.ssh  # 秘密鍵を移動。.sshフォルダ内にさらにディレクトリを切ってもいいかも

こんな感じで移動して保存しておきます。


ここまでできたらいざアクセス!

$ ssh -l root -i .ssh/id_rsa -p [ポート番号] [サーバのIPアドレス]

パスフレーズを聞かれると思うので、鍵作成時に設定したパスフレーズを入力します。

これで接続できるはず!


Ubuntuの初期設定

無事に繋がる状態になったら、諸々の初期設定をしていきます。

ServerMan@VPSを借りてみた。Ubuntu初期設定 | さがさんといてください

初期設定に関してはこちらを丸パクリしましたので特に語ることはないです。


終わってみて

サーバ触ったことは仕事でもほとんどなかったので戸惑いましたが、分かってみれば一本道でした。

今後はちょっとしたWebサービスみたいなのを作っていきたいなと思ってます。