SSHを使用すると、2台のコンピューターが通信し、共有データを暗号化できます。これは、リモートサーバー端末に安全にアクセスし、ファイルを転送するために一般的に使用される方法です。
SSH また、通常は暗号化されていない他のネットワーク接続を転送するために、コンピューター間に安全な通信トンネルを作成するために使用することもできます。これは、SSHトンネリング(またはポート転送)と呼ばれる手法です。
SSHを使用する一般的なシナリオを次に示します。 トンネリングまたはポートフォワーディング:
- アクセスしようとしているリモートサービスのポートがファイアウォールでブロックされている場合。
- 暗号化などを本質的に使用しないサービスに安全に接続したい。
たとえば、リモートの PostgreSQLに接続する場合 ポート5432で実行されているデータベースクラスター サーバーA 、ただし、そのポートへのトラフィックはサーバーBからのみ許可されます (SSHアクセスが可能です)。 サーバーBを介してSSH接続(トンネル)経由でトラフィックをルーティングできます データベースクラスターにアクセスします。
このガイドは、 pgadmin4を使用していることを前提としています およびDBeaver Linuxシステムにインストールされているデータベース管理ツール。それ以外の場合は、次のガイドを確認してください。
- CentOS8にPostgreSQLとpgAdminをインストールする方法
- RHEL8にPostgreSQLとpgAdminをインストールする方法
- PgAdmin 4Debian10/11をインストールする方法
- Ubuntu20.04にPostgreSQLとpgAdmin4をインストールする方法
- LinuxMint20にpgAdmin4を使用してPostgreSQLをインストールする方法
- LinuxにDBeaverユニバーサルデータベースツールをインストールする方法
pgadmin4でSSHトンネリングを構成する
pgadmin4を開きます アプリケーションを作成し、新しいサーバー接続を作成することから始めて、オブジェクトに移動します タブをクリックし、[作成]をクリックします サーバーをクリックします 。ポップアップウィンドウの一般の下 タブで、次のスクリーンショットで強調表示されているサーバー名を入力します。
次に、接続をクリックします タブをクリックして、データベース接続設定を入力します。データベースサーバーのIPアドレスまたはFQDNを入力します (完全修飾ドメイン名)。次に、ポート、データベース名、データベースユーザー名、およびユーザーのパスワードを設定します。
[パスワードの保存]をオンにすると、パスワードをローカルに保存して、データベースに接続しようとするたびにパスワードの入力を求められないようにすることができます。
次に、SSHトンネルをクリックします タブ。 「SSHトンネリングを使用する」をオンにします 」オプションで、トンネルホスト、トンネルポート、SSHユーザー名を入力します。次に、認証を選択します タイプ(パスワードまたはIDファイル)。
公開鍵認証を使用することをお勧めしますので、IDファイルを選択してください ローカルマシンから秘密鍵ファイルを選択します。次に、[保存]をクリックします 次のスクリーンショットで強調表示されているように。
データベース接続とSSHトンネルの両方に提供された設定と資格情報が正しく有効である場合、トンネルとデータベース接続は正常に確立されているはずです。
DBeaverでSSHトンネリングを構成する
DBeaverを起動した後 、データベースに移動します タブをクリックし、[新しいデータベース接続]をクリックします 次のスクリーンショットに示すように。
次のスクリーンショットで強調表示されているリストからデータベースドライバを選択し、[次へ]をクリックします。 。
次に、次のスクリーンショットで強調表示されているように、データベース接続設定、データベースホストのIPまたはFQDN、データベース名、データベースユーザー名、およびユーザーのパスワードを入力します。次に、 SSHをクリックします 次の手順で説明するように、タブをクリックしてトンネル接続設定を入力します。
SSHトンネルを使用をチェックしてSSHを有効にします オプション。トンネルホスト、トンネルポート、SSH接続のユーザー名を入力し、認証を選択します メソッド。
いつものように、パブリックを使用することをお勧めします キー認証。次に、秘密鍵へのパスを選択または入力します。次に、次のスクリーンショットで強調表示されているように[完了]をクリックします。
注 :秘密鍵にパスフレーズが含まれている場合は、それを提供する必要があります。
データベース接続とSSHトンネルの設定が正しく有効であれば、接続は成功するはずです。これで、リモートデータベースを安全に操作できます。
詳細については、pgadmin4のドキュメントまたはDBeaverSSH接続のドキュメントを確認してください。