自分だけのクイズを作成しよう - Quipha
スポンサーリンク

【Mac】秘密鍵でSSH接続しリモート操作

【Mac】秘密鍵でSSH接続しリモート操作 Mac

当サイトではアフィリエイト広告を利用しています。

スポンサーリンク

はじめに

今回はMacのターミナルを使用して、秘密鍵でSSH接続する手順をまとめました。

一例として、エックスサーバーへリモート接続します。
手順は基本的に同じですので、サーバーへリモート接続する場合に参考にしてみてください。

エックスサーバーへの申し込みは以下からできます。

エックスサーバーへの新規申し込みは、無料期間がありますので満足いくかどうか事前に確認できます。
まずは申し込んで試してみましょう。


エックスサーバーの新規の申込方法は、以下の記事にまとめました。

WindowsでSSH接続する場合は、以下の記事を参考にしてください。

Macでサーバへのファイル転送については、以下の記事を参考にしてください。

使用するバージョンなど
  • macOS Monterey (M1)
  • エックスサーバー

他にも私のブログで、色々と解説している記事がありますのでご覧ください。

スポンサーリンク

【紹介】個人開発

Mac向けの、定型文の挿入も可能なクリップボード履歴管理アプリです。
Windows版は以前からありましたが、基本的な使い方はMac版も同じですので、もしよかったらダウンロードしてみてください。

  • Xcode
  • Swift 5
  • SwiftUI
  • Realm Database
  • Appleによる公証済み

SSHとは

SSHは、安全な通信チャンネルを確立するためのプロトコルです。元々はリモートのマシンやサーバーに安全に接続するためのツールとして開発されました。

ファイルの転送やリモートコマンドの実行など、さまざまなタスクで使用されています。

  • リモートアクセス: SSHを使用して、リモートのマシンやサーバーにログインして操作
  • ファイル転送: SCPやSFTPというプロトコルを使用して、ファイルを安全に転送

コマンドなどの知識は必要です。

エックスサーバーの設定

エックスサーバーはレンタルサーバーですが、SSH(Secure Shell)で接続しリモートでコマンドを実行したりすることができます。

MacからSSH接続の方法は、基本的にはどのサーバーへでも同じになりますが、例として実際にエックスサーバーに秘密鍵を使用して接続します。

SSHを有効にする

サーバーパネルを開きましょう。

エックスサーバー サーバーパネル

SSH設定を開きます。

エックスサーバー SSH設定

「ONにする」を選択し、「設定する」ボタンをクリックします。

エックスサーバー SSH設定 有効

SSHでの接続ポートは【10022】となります。
一般的なポート【22】とは異なりますのでご注意ください。

公開鍵認証用鍵ペアの生成

エックスサーバーでSSHを利用するには、「公開鍵認証」が必要です。
(パスワード認証は不可)

「公開鍵認証用鍵ペアの生成」タブを開き、任意のパスフレーズを入力します。

エックスサーバー SSH設定 公開鍵認証用鍵ペアの生成

「生成する」ボタンをクリックし、公開鍵認証用鍵ペアを生成します。

エックスサーバー SSH設定 公開鍵認証用鍵ペアの生成

自動的に秘密鍵がダウンロードされます。([サーバーID].key)

生成処理を実行すると、サーバー上の公開鍵情報が更新されます。
これまでに発行した秘密鍵ではSSH接続が行えなくなりますのでご注意ください。

スポンサーリンク

SSH接続

接続

SSHでリモート接続できるクライアントソフトはいくつかありますが、今回はMacのターミナルを使用しました。

ユーザホームに、.sshディレクトリを作成します。

% mkdir ~/.ssh

ダウンロードした秘密鍵([サーバーID].key)を、.sshディレクトリに移動します。
ファイル名は、id_rsaでも良いですが、複数の秘密鍵を保存したい場合は、任意のファイル名を指定します。

% mv ~/Downloads/[サーバーID].key ~/.ssh/id_rsa_xserver

パーミッションを変更します。

% chmod 700 ~/.ssh
% chmod 600 ~/.ssh/id_rsa_xserver

xserverにSSHで接続します。

% ssh -l [サーバーID] -p 10022 -i ~/.ssh/id_rsa_xserver [ホスト名]
引数説明
-l接続するユーザー名を指定します。
(エックスサーバーの場合はサーバーID)
-p接続するポートを指定します。
(エックスサーバーの場合は10022)
-i秘密鍵のファイルパスを指定します。
ホスト名ホスト名は「サーバーID.xsrv.jp」か、サーバー番号を指定し「sv***.xserver.jp」でも可能です。

初回接続時は、finger printの確認が表示されますので、「yes」を入力します。

This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])?

一度接続すると以下のファイルが生成され、次回以降の接続時には確認が不要になります。

~/.ssh/known_hosts

パスフレーズが聞かれますが、入力後サーバーへ接続できます。

Enter passphrase for key '/Users/xxx/.ssh/id_rsa_xserver': 

設定

毎回、先ほどのsshコマンドを指定するのは面倒ですので、configファイルを作成します。
サーバにSSH接続している場合は一度ログアウトし、クライアント側でコマンドを実行します。

% vi ~/.ssh/config

以下の内容を記述し、保存して閉じます。

Host xserver
    HostName [ホスト名]
    Port 10022
    User [サーバーID]
    IdentityFile ~/.ssh/id_rsa_xserver

以降は、以下のコマンドだけで接続できるようになります。

% ssh xserver

さいごに

今回は、MacからSSH接続の方法を解説しました。
是非、参考にしてみてください。

エックスサーバーへの申し込みは以下からできます。

エックスサーバーへの新規申し込みは、無料期間がありますので満足いくかどうか事前に確認できます。
まずは申し込んで試してみましょう。


他にも私のブログで、色々と解説している記事がありますのでご覧ください。

\オススメ/

MacOSツールツール他
スポンサーリンク
この記事を共有
千草をフォローする
管理人

現役のITエンジニア。
気ままにコードや技術情報をまとめています。
Webアプリ/Windows・Macアプリ/モバイルアプリ/機械学習やIoT他。
(Java, PHP, Javascript, Swift, Python, C#, 他)
個人開発:Clibor, Quipha, TXT-Crypter
Kindle本: Laravel9 実践入門, 他

千草をフォローする

個人開発

Cliborはシンプルで高機能なクリップボード履歴ソフトです。
Mac版も公開しています。

自分だけの問題集や問題を作成し、クイズを行い学習に活用しましょう。

簡単にテキストを暗号・復号でき、秘密情報を守ります。

便利なツールを公開しています。
是非、活用してください!

コメント

  1. ysugie より:

    ありがとうございました。
    ターミナルで、公開鍵、秘密鍵を使ったSSH接続が、シン・サーバーでもできることが確認できました。このサイトは永久保存ですね。

    ただ、/.ssh/ がサーバ上にもあり、手元のMacにもあるので、混乱を生じました。
    この記事通りに、サーバーにログインした状態で、viでconfigを作成すると、サーバー側の/.ssh/にconfigが作成されてしまいます。
    ひとこと、サーバーからはログアウトして、ホームのディレクトリでconfigを作るんだよ、と教えていただければ、初心者には優しいかと思い僭越ながら、コメントさせていただきました。

タイトルとURLをコピーしました