データベース
 Computer >> コンピューター >  >> プログラミング >> データベース

Oracle Cloudで異なる仮想クラウドネットワーク(VCN)間のホストにSFTPアクセスを設定する方法

Oracle® Cloudでは、アプリケーションやデータベースを環境ごとに別々の仮想クラウドネットワーク(VCN)へ配置できます。これにより、各環境に追加のセキュリティレイヤーが設けられ、異なる環境のユーザーからの不正アクセスを防ぐことができます。しかし一方で、必要な場面で環境間のファイルコピーが行えないという課題も生じます。

ここで多くの方が抱く疑問は、「なぜ他の環境のサーバーに接続する必要があるのか?」という点でしょう。その答えは、開発環境から本番環境へのデプロイや移行作業の際に、サーバー間でファイルをやり取りするケースが頻繁に発生するためです。

本記事では、異なるVCN内のホスト間でSFTPアクセスを有効化する具体的な手順を解説します。

はじめに

Oracleは、異なるVCN内のホスト間に接続を確立するためのローカル・ピアリング・ゲートウェイを提供しています。ただし重要な注意点として、ローカル・ピアリング・ゲートウェイで許可されるのは一方向のトラフィックのみです。つまり、VCN A内のホストからVCN B内のホストへの接続は可能ですが、その逆方向(BからA)の接続はできません。双方向のアクセスを実現したい場合は、相手側のVCNにも同様の設定を行う必要があります。

以下の例は、サーバーirbproddbs1から172.xx.xx.2(DEV APPSサーバー)へのアクセスが、デフォルト状態では拒否される様子を示しています。

[oracle@proddbs1 ~]$  sftp irb@172.xx.xx.2
ssh: connect to host 172.xx.xx.2 port 22: Connection refused
Couldn't read packet: Connection reset by peer
[oracle@irbproddbs1 ~]$

ローカル・ピアリングの設定手順

それでは、実際にローカル・ピアリングを作成し、proddbs1から172.xx.xx.2へのアクセスがどのように可能になるかを確認していきましょう。

  1. Cloud Dashboardにログオンします。
  2. Networking > Virtual Cloud Network へ移動します。
Oracle Cloudで異なる仮想クラウドネットワーク(VCN)間のホストにSFTPアクセスを設定する方法
  1. ソース側のコンパートメントを選択します。
Oracle Cloudで異なる仮想クラウドネットワーク(VCN)間のホストにSFTPアクセスを設定する方法
  1. Local Peering Gateways をクリックし、続けて Create Local Peering Gateways をクリックします。
Oracle Cloudで異なる仮想クラウドネットワーク(VCN)間のホストにSFTPアクセスを設定する方法
  1. ピアリング・ゲートウェイの名前を入力し、コンパートメントを選択して Create をクリックします。
Oracle Cloudで異なる仮想クラウドネットワーク(VCN)間のホストにSFTPアクセスを設定する方法
  1. ソース・ホストが属するサブネットを選択します。
Oracle Cloudで異なる仮想クラウドネットワーク(VCN)間のホストにSFTPアクセスを設定する方法
  1. そのサブネットに割り当てられている Route table(ルート表)をクリックします。
Oracle Cloudで異なる仮想クラウドネットワーク(VCN)間のホストにSFTPアクセスを設定する方法
  1. Add Route Rules をクリックします。
Oracle Cloudで異なる仮想クラウドネットワーク(VCN)間のホストにSFTPアクセスを設定する方法
  1. 以下の項目を入力します。
    • Target type: Local Peering Gateway
    • Destination CIDR Block: 接続先VCNのCIDRブロック
    • Compartment: ソース側コンパートメント
    • Target Local Peering Gateway: 手順4で作成したゲートウェイの名前
Oracle Cloudで異なる仮想クラウドネットワーク(VCN)間のホストにSFTPアクセスを設定する方法
  1. 設定完了後、ホストirbproddbs1から172.xx.xx.2へのアクセスを再度試みます。
[oracle@proddbs1 ~]$ sftp irb@172.xx.xx.2
Connecting to 172.xx.xx.2...
irb@172.xx.xx.2's password:
sftp> pwd
Remote working directory: /home/irb
sftp> cd /u02/IRB
sftp> ls
sftp> mput irbproddbs1.tfa_Wed_Oct_09_14_39_46_EDT_2019.zip
stat irbproddbs1.tfa_Wed_Oct_09_14_39_46_EDT_2019.zip: No such file or directory
sftp> pwd
Remote working directory: /u02/IRB
sftp> mput BillingEngine_CADFixes_04OCT2019.zip
Uploading BillingEngine_CADFixes_04OCT2019.zip to /u02/IRB/BillingEngine_CADFixes_04OCT2019.zip
BillingEngine_CADFixes_04OCT2019.zip
        100%  44KB 44.0KB/s  00:00
sftp>

この手順により、proddbs1(PROD DBサーバー)から172.xx.xx.2(DEV APPSサーバー)へのアクセスが開放され、proddbs1側からファイルをコピーできるようになりました。ただし、逆方向である172.xx.xx.2からproddbs1へのアクセスは引き続き制限されたままです。双方向のファイル転送が必要な場合は、相手側のVCNでも同じ設定を行ってください。

まとめ

本記事で紹介したローカルVCNピアリングの構成により、同一リージョン内に存在する2つの異なるVCNを安全に連携させることができます。これにより、ホストだけでなく、ロードバランサーやデータベースなどの各種リソースも、インターネットやオンプレミスネットワークを経由せずにプライベートネットワーク経由で通信可能となります。結果として、トラフィックの輻輳を抑えながら、セキュリティリスクの低減にもつながります。

ご意見やご質問がある場合は、フィードバックタブからお気軽にお寄せください。私たちとの対話も歓迎します。

  1. Oracle CloudでDBaaSデータベースを作成する方法:コンパートメント作成からDBシステム構築まで完全解説

    この記事では、Oracle® Cloud上にDatabase-as-a-Service(DBaaS)データベースを作成するために必要なすべての手順を、画像付きでわかりやすく解説します。 はじめに このサービスを利用すれば、物理ハードウェアの調達やOSのインストール、Oracle Databaseのインストール前提条件への対応などを一切行うことなく、データベースを構築できます。作成にかかる時間も短く、必要な権限も最小限のシステム管理者レベルで十分です。 本記事では、Oracle CloudでDBaaSをセットアップするための以下のステップについて学びます。 コンパートメントの作成 仮想クラウド

  2. Windows 10で仮想マシンを作成する方法|VirtualBoxを使った手順を徹底解説

    この記事では、Windows 10が動作しているパソコン上に仮想マシン(Virtual Machine)を作成する具体的な手順を、初心者の方にもわかりやすく解説します。 仮想マシンとは、1台のPCの中にもうひとつのOS環境を構築できる便利な仕組みです。既存のOSを再インストールしたり、別のPCを用意したりすることなく、新しいOSを安全に試せるため、検証やテスト用途に最適です。 Windows 10で仮想マシンを作成する手順 ここからは、無料で利用できる定番の仮想化ソフトウェア「Oracle VirtualBox」を使って、Windows 10上に仮想マシンを作成していきます。全体の流れは以下