mixhostにターミナルからSSH接続する方法

mixhostにターミナルからSSH接続する方法を画像付きで紹介していきます。

流れは以下

  • mixhostで秘密鍵と公開鍵を生成する
  • 秘密鍵をダウンロードする
  • ターミナルで.sshフォルダを作成して秘密鍵を入れる
  • configファイルを設定する
  • ssh-agentを設定する

mixhostでの作業

マイページにログイン

サービスを選択

アクションのとこからcPanelにログイン

セキュリティのとこの「SSHアクセス」をクリック

キーの管理」をクリック

新しいキーの生成」をクリック

Key Name:好き名前(デフォルトはid_rsa)
パスワード:お好きなパスワード(パスワード生成もできます)
キーの種類:そのまま
キーサイズ:そのまま

*パスワードは安全な場所に控えておいてください。

キーの生成」をクリックするとキーの生成が完了します。

下の「戻る」ボタンで戻ると「認証ステータス」は「not authorized」になっているかと思います。

右の「管理」をクリックします
すると以下の画面になるので「Authorize」をクリックします

するとキーが認可されます

再び「戻る」ボタンで戻ると公開キーが「authorized」になっているかと思います。

これで公開キーの準備は完了です。

ここから秘密鍵をダウンロードします。

キーのダウンロード」をクリック

これでmixhost側の作業は終わりです。

PC上での作業

ターミナルから、.sshのフォルダを作っていきます。

すでにお使いのPC上に.sshがあるかどうか以下のコマンドで確かめてください。

ls -a

なければ.sshフォルダを作る

mkdir ~/.ssh

ダウンロードした秘密鍵をファイルに移動させる

mv ダウンロードしたキーファイル名 ~/.ssh/
mvの使い方:
mv 移動するファイル 移動先

mv original-file .ssh/renamed-file
*この場合、ファイルの移動とリネームがされrenamed-fileというファイル名になる

.sshフォルダのパーミッションを700にします。

chmod 700 ~/.ssh

「キーファイル」のパーミッションを600にします。

chmod 600 ~/.ssh/キーファイル名

これでローカルには「秘密鍵」があり、サーバーには「公開鍵」がある状態になりました。

次にconfigファイルの設定をします。

configファイルにはホスト名・ユーザー名が必要なのでmixhostに契約時に送られてくるメールから確認してください。
マイメニューのメール履歴からも確認できます。

FTPSホスト名とユーザー名を使います

ターミナルの.sshフォルダ内に戻ります。

以下で.sshフォルダ内にconfigファイルを作っていきます。

vim ~/.ssh/config

vimのコマンドについてはこちらの記事(Qiita)にまとめてありました。

vimのエディタが開かれたら、iで編集開始(インサートモード)です。

Host わかりやすい名前
HostName FTPSホスト名
User ユーザー名
Port 22
IdentityFile ~/.ssh/キーファイルの名前

escで編集モード終了して:wqでvimを終了します。

configでつけた名前でssh接続できるか確認します。

ssh 先ほどのわかりやすい名前

すると、

Are you sure you want to continue connecting (yes/no)?

と聞かれるので「yes」と入力しエンター

パスフレーズを聞かれるので、キーを生成した時に設定したパスワードを入力

Authentification failedやエラーが出ないと接続成功です。

exitもしくはlogoutで接続を解除できます。

いちいちパスフレーズを入力したくない時

ssh-agentを使う
ssh-agentについて詳しくはこちらの記事を参考にしてみてください

やることは2つ

  • ssh-agentを起動
  • ssh-addでキーを追加

以上です。

ではやってみましょう〜

ssh-agent bash

すると、bash-3.2$と表示されます。

ssh-add -k ~/.ssh/キーファイル名

すると

Enter passphrase for キーファイルの場所

パスフレーズを入れろと言われるので入れます

入力しエンターすると

Identity added: キーファイルの場所

これが表示されてるとIDが追加が完了です

以下のコマンドで確認してみます。

ssh-add -l

パスフレーズなしで接続できるか確認してみてください

ssh configでつけたHOSTの名前

以上です。



Posted

in