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へのアクセスがどのように可能になるかを確認していきましょう。
- Cloud Dashboardにログオンします。
- Networking > Virtual Cloud Network へ移動します。
- ソース側のコンパートメントを選択します。
- Local Peering Gateways をクリックし、続けて Create Local Peering Gateways をクリックします。
- ピアリング・ゲートウェイの名前を入力し、コンパートメントを選択して Create をクリックします。
- ソース・ホストが属するサブネットを選択します。
- そのサブネットに割り当てられている Route table(ルート表)をクリックします。
- Add Route Rules をクリックします。
- 以下の項目を入力します。
- Target type: Local Peering Gateway
- Destination CIDR Block: 接続先VCNのCIDRブロック
- Compartment: ソース側コンパートメント
- Target Local Peering Gateway: 手順4で作成したゲートウェイの名前
- 設定完了後、ホスト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を安全に連携させることができます。これにより、ホストだけでなく、ロードバランサーやデータベースなどの各種リソースも、インターネットやオンプレミスネットワークを経由せずにプライベートネットワーク経由で通信可能となります。結果として、トラフィックの輻輳を抑えながら、セキュリティリスクの低減にもつながります。
ご意見やご質問がある場合は、フィードバックタブからお気軽にお寄せください。私たちとの対話も歓迎します。
-
Oracle CloudでDBaaSデータベースを作成する方法:コンパートメント作成からDBシステム構築まで完全解説
この記事では、Oracle® Cloud上にDatabase-as-a-Service(DBaaS)データベースを作成するために必要なすべての手順を、画像付きでわかりやすく解説します。 はじめに このサービスを利用すれば、物理ハードウェアの調達やOSのインストール、Oracle Databaseのインストール前提条件への対応などを一切行うことなく、データベースを構築できます。作成にかかる時間も短く、必要な権限も最小限のシステム管理者レベルで十分です。 本記事では、Oracle CloudでDBaaSをセットアップするための以下のステップについて学びます。 コンパートメントの作成 仮想クラウド
-
Windows 10で仮想マシンを作成する方法|VirtualBoxを使った手順を徹底解説
この記事では、Windows 10が動作しているパソコン上に仮想マシン(Virtual Machine)を作成する具体的な手順を、初心者の方にもわかりやすく解説します。 仮想マシンとは、1台のPCの中にもうひとつのOS環境を構築できる便利な仕組みです。既存のOSを再インストールしたり、別のPCを用意したりすることなく、新しいOSを安全に試せるため、検証やテスト用途に最適です。 Windows 10で仮想マシンを作成する手順 ここからは、無料で利用できる定番の仮想化ソフトウェア「Oracle VirtualBox」を使って、Windows 10上に仮想マシンを作成していきます。全体の流れは以下