レンタルサーバにSSH接続をする方法(エックスサーバー、さくらのレンタルサーバ)
サーバとSSH接続する方法はいくつかありますが、ソフトを使わずにコマンドライン上での接続について書いています。また、サーバはエックスサーバーとさくらのレンタルサーバを対象にしています。
事前準備
エックスサーバーは、デフォルトではSSH接続が無効になっているので、コントロールパネルでSSH接続を有効にしておきます。
パスワード認証の場合
エックスサーバーは、パスワード認証を許可していませんが、さくらのレンタルサーバは可能なようです。
$ ssh [アカウント名]@[アカウント名].sakura.ne.jp
上記コマンドを打つと、パスワードを聞いてくるので、入力するとログインできます。
※ [ ](かっこ)は不要で、直接アカウント名を書きます。
鍵認証の場合(こちらがおすすめ)
こちらは、毎回パスワードを入力しなくてもいいように、ローカル側とサーバ側にそれぞれ鍵(暗号化された文字列が書かれたファイル)を置いて、それを使って認証する方法です。
鍵の作成
過去記事を参考に作成してみてください。
作った鍵をサーバに設置
エックスサーバーは、コントロールパネルで設置可能ですが、さくらのレンタルサーバはコマンドで設置します。
さくらのレンタルサーバ
$ scp ~/.ssh/id_rsa.pub [アカウント名]@[アカウント名].sakura.ne.jp:/home/[アカウント名]/.ssh/authorized_keys
作った鍵の公開鍵側のファイルを、サーバのルートディレクトリに「.ssh」というディレクトリを作って「authorized_keys」という名前で保存しています。
「scp」コマンドは、ファイルをコピーして転送するコマンド。転送元の場所の後に、転送先を書く。
エックスサーバー
コントロールパネルの「SSHの設定」の「公開鍵の登録」に、ローカルで作った公開鍵ファイル「id_rsa.pub」の中身をコピーしてペーストします。(エックスサーバーでは、鍵の作成もここでできるようです。)
接続
#さくらのレンタルサーバ(先ほどと同様) $ ssh [アカウント名]@[アカウント名].sakura.ne.jp #エックスサーバー $ ssh -l [サーバーID] -i .ssh/id_rsa [サーバーID].xsrv.jp -p 10022
エックスサーバーでは、秘密鍵「id_rsa」の場所とポートを指定する必要があるようです。秘密鍵「id_rsa」の場所は、適切な場所に置いてあれば省略可能。
パスフレーズを設定していれば、聞かれるので入力します。
※[アカウント名]、[サーバーID]は、それぞれのサーバでの名称が異なるだけで、ユーザー名的なものを指しています。
パーミッションの変更
さくらのレンタルサーバの場合は、設置した公開鍵ファイルのパーミッションを変更しておきます。
$ chmod 600 .ssh/authorized_keys
サーバ側でのコマンド
接続コマンドの簡略化(おまけ)
configファイルを設置することで、接続コマンドを簡略化することができます。
ローカルの「.ssh」フォルダの中に、「config」という名前のファイルを作成して、以下の内容を書きます。
#さくらのレンタルサーバ Host sakura HostName [アカウント名].sakura.ne.jp Port 22 User [アカウント名] IdentityFile ~/.ssh/id_rsa #エックスサーバー Host xsrv HostName [サーバーID].xsrv.jp Port 10022 User [サーバーID] IdentityFile ~/.ssh/id_rsa
「Host」の部分は、自分の好きな文字を入れます。この文字を使って簡単に接続できるようになります。
上記のように複数のサーバを設定する事ができます。
設置後に、以下のようなコマンドで接続が可能になります。
$ ssh sakura または $ ssh xsrv
ついでの設定
さくらのレンタルサーバの接続後のシェルが、デフォルトでは「csh」なので、使いやすい「bash」に変更する方法
$ chsh -s /usr/local/bin/bash
パスワードを聞かれるので、サーバ接続のパスワードを入力。
一度「exit」して、再度接続すると、「bash」に変わっているはずです。
補足
エックスサーバで、最初に接続する時に、以下のような事を言われるかもしれません。
The authenticity of host ‘[サーバーID]:10022 ([サーバーID]:10022)’ can’t be established.
ECDSA key fingerprint is SHA256:V0GmZVuUlP6tQw5MYbGelfcq+IQwq/6+HnH1OPAcaLo.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
「yes」と入力すると、
Warning: Permanently added ‘[サーバーID]:10022,[サーバーID]:10022’ (ECDSA) to the list of known hosts.
Connection closed by [サーバーID] port 10022
と言われて、接続が切れますが、次回からは、接続コマンドで普通に接続できるようになります。
-
前の記事
記事がありません
-
次の記事
Xserverで「www.サブドメイン」でアクセスする方法 2020.09.01
コメントを書く