さくらのレンタルサーバにSSHでログインしてみた

rubyで作ったCGIを公開したくなったので、さくらのレンタルサーバを使い始めることにしました。今までこの日記で、OS X上のWeb共有でCGIを動かせるようにしていたのは、ローカルでCGIをテストする環境を作るためだったのでした。

ちなみに契約したのは、スタンダードです。

WordPress、EC-CUBE、concrete5等CMSが使えるスタンダードプラン - レンタルサーバーはさくらインターネット

スタンダードより上のプランだとSSHでログインできる。私が普段使っているMacBook Pro(OS X)ならSSHが入っているので、さっそく試してみる事にした。
SSHの使い方にはあまり詳しくないので少し調べてみたら、暗号鍵のファイルを作れば、パスワード入力なしの鍵認証でログインできることが分かったので、パスワードなしログインも試してみた。

パスワード認証でログイン

まず暗号鍵を作る前に、普通にパスワード認証でログインしてみた。パスワードは、サーバコントロールパネルやFTPのと一緒。

以下、コマンドラインの内容。なお、「local$」はローカルのコマンドラインで、「sakura%」はさくらのサーバでのコマンドライン。#で始まる行は注釈で、コマンドラインの内容ではありません。

local$ ssh <アカウントID>@<ドメイン名>
# パスワードを入力して、ログインできることを確認。
# 接続先サーバを登録するかどうか、とか聞かれるのでYesと答えたりする。

sakura% logout
# 一通りコマンドを試して環境を確認したりしたら、いったんログアウト

なお、sshの引数に指定する<アカウントID>はFTPアカウント、<ドメイン名>はFTPサーバ名と同じ。

鍵認証でログインするための準備

次に、暗号鍵のファイルを作って、公開鍵のファイルをさくらのサーバに配置。

local$ ssh-keygen -t dsa
# passphraseなしで鍵作成

local$ scp .ssh/id_dsa.pub <アカウントID>@<ドメイン名>:id_dsa.pub
# 公開鍵のファイルをさくらのサーバに転送。ファイル id_dsa は秘密鍵なので転送しないように注意。

local$ ssh <アカウントID>@<ドメイン名>
# さくらのサーバで作業をするため、パスワード入力認証でログイン。

sakura% mv id_dsa.pub ~/.ssh/authorized_keys2
sakura% chmod 600 ~/.ssh/authorized_keys2
# sshの規定の場所にファイルを配置

sakura% logout

鍵認証でログイン

鍵認証でログインするための準備が終われば、パスワード(パスフレーズ)なしで、ログインできる。

local$ ssh <アカウントID>@<ドメイン名>
# パスワード入力なしでログインできる
sakura%