Database Support Blog

  • Oracle Cloud
2020.06.23

Computeインスタンスに繋がらない時の3つのチェックポイント

弊社サポートへのお問い合わせとして、「インスタンスを作ったが接続ができない」「ネットワークの設定変更をしたら接続ができなくなった」というご質問を多く頂きます。
以前の記事 では、OCI(Oracle Cloud Infrastructure)上の設定は正しいということでコンソール接続を行いトラブルシュートを実施しましたが、今回は接続ができない場合にOCIの設定でチェックするべきポイントをいくつかご紹介します。


ポイント①ファイアウォールルールの見直し

一番初めにチェックするべきポイントとして、ファイアウォールルールの見直しがあります。

特に「SSHやRDPでの接続はできるが、オンプレミスからのアプリケーション接続ができない」という場合は、該当のポートがファイアウォールのルール設定上で疎通可能となっていない場合が多いです。

OCIではファイアウォールのルールを指定する方法として、以下の2つが存在します。

上記したようにセキュリティリストとネットワーク・セキュリティ・グループは or条件 でルールが適用されるのもポイントの一つです。AWSのアクセス・コントロール・リストとセキュリティグループはand条件のため、考え方が違う点は注意が必要です。

また、実際のルール設定画面では通信の向きや通信を許可するCIDR範囲・ポート番号等を指定しますので、それぞれ正しい値を入力し通信許可設定を実施してください。

ポイント②ルーティング設定の見直し

続いて見直すべきポイントがルーティングルールです。特にVPN接続(専用線接続)を実施している場合に見直しが多く発生します。

弊社へのお問い合わせとしては以下のようなケースにて問い合わせを頂く場合があります。

 1.最初にVPN接続を構築したタイミングでは正常に接続ができていた。
 2.別拠点からの接続を追加する必要があり、オンプレミス環境の設定と
  OCIのF/Wルールの見直しを実施した。
 3.「ルーティングルールの追加漏れが発生」し、正常に繋がらない。

VPN接続におけるルーティングルール(VPN/専用線)の接続に関する基本的な考え方は以下です。

上記の考え方を押さえておくことで、修正漏れを防ぐことが可能です。

また、VPN接続でStatic Route(静的ルート)を利用している場合、ルーティングルールの設定に加えて IPSec接続の静的ルート変更 を実施する必要がありますので、こちらも合わせて押さえておいてください。

【マニュアル】
Oracle Cloud Infrastructureドキュメント - VPN接続の使用 - 静的ルートの変更
https://docs.oracle.com/cd/E97706_01/Content/Network/Tasks/workingwithIPsec.htm#static-routes

【小ネタ】静的ルートの宛先の個数について

IPSecの静的ルート数の最大数としては「最大10個の静的ルートが指定可能」と上記マニュアルに記載されています。

しかしながら、11個以上の静的ルート数を指定したいという要件ももちろん存在します。
その場合ですが、「OCI CLIコマンドを用いることで、11個以上の静的ルートを指定可能」です。もし上記のような要件が発生した場合はOCI CLIコマンドを用いた更新を実施ください。


ポイント③OS上の設定を見直す(iptables/firewalld)

最後のポイントはOS上の設定。意外と修正漏れの発生しやすいポイントで、お客様からも「OCI上の設定は間違っていないはずなのに繋がらない」というご質問を頂きます。

AWSのAmazon Linuxはデフォルトではiptablesにルールが記載されていませんが、OCIのOracle Linuxでは デフォルトでルールが記載 されています。

OCI-DBではStandard EditionライセンスでOracle Advanced Securityオプションの暗号化機能 Transparent Data Encryption(TDE)が利用できたり、昨年のOracle OpenWorldでセキュリティに関する新たなソリューションが発表されるなど、高セキュリティを実現する様々な施策が展開されています。

個人的な意見ですが、OCIのOS上のファイアウォール設定についても以下のような意味合いがあると考えています。

【小ネタ】ファイアウォール設定の意味合い

・Oracleとしては「OS上のセキュリティ等も含めて設定することがベストプラクティス」だと
考えており、それを考慮した上でOSレイヤーの設定を実装してお渡しをしている。

・その上で、iptablesやfirewalldといった機能を使わないのであれば、ユーザの運用として
無効化して貰うようにお願いをしている。


OCI - DBでのiptables設定(例)

 
 [root@test opc]# iptables -L
 Chain INPUT (policy ACCEPT)
 target     prot opt source               destination
 ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
 ACCEPT     icmp --  anywhere             anywhere
 ACCEPT     all  --  anywhere             anywhere
 ACCEPT     all  --  anywhere             anywhere
 ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh
 ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ncube-lm /* Required for access to Database Listener, Do not remove or modify.  */
 ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:lm-x /* This rule is recommended and enables the Oracle Notification Services (ONS) to communicate about Fast Application Notification (FAN) events.  */
 ACCEPT     tcp  --  link-local/16        anywhere             state NEW tcp dpt:arcp /* Required for instance management by the Database Service, Do not remove or modify.  */
 ACCEPT     tcp  --  link-local/16        anywhere             state NEW tcp dpt:7060 /* Required for instance management by the Database Service, Do not remove or modify.  */
 ACCEPT     tcp  --  link-local/16        anywhere             state NEW tcp dpt:ssh /* Required for instance management by the Database Service, Do not remove or modify.  */
 REJECT     all  --  anywhere             anywhere             reject-with icmp-host-prohibited
  
 (略)

 

もしiptablesやfirewalldの設定を変えずに利用しており、特定のアプリケーションで接続ができない場合は、ポイント①に記載したOCIでの設定に加えて、OS上の設定も見直す必要がありますのでご確認ください。


まとめ

今回はインスタンスに接続ができなくなった際のチェックポイントをご紹介しました。

ご紹介したポイントを押さえることで、設定を変更した場合等に接続ができなくなってしまっても、迅速にトラブルシュートを進めて事象を解決することができます。

また、接続ができなくなること自体を防ぐ意味でも、今回紹介したポイントを確認しながらの構築や設定変更をご実施下さい。


執筆者情報

はらだ たくろう プロフィール画像

2015年にアシストに入社後、Oracle DatabaseやOracle Cloudを中心としたフィールド技術を担当。
導入支援だけではなく、最新機能の技術検証も積極的に実施。社内外のイベントにて発表も行っている。


■本記事の内容について
 本記事に示した定義及び条件は変更される場合があります。あらかじめご了承ください。

■商標に関して
 OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。
 文中の社名、商品名等は各社の商標または登録商標である場合があります。


Oracle Databaseライセンスのご相談ならアシスト

関連している記事

  • Oracle Database
  • Oracle Cloud
  • PostgreSQL
  • AWS
  • Exadata
2022.05.24

入社2年目がレポート!Cloud Database Days 2022技術セッションの見どころ

2022年5月26日~6月3日に開催される「Cloud Database Days 2022」。その中でも10個に分かれた技術セッションについて、ポイントを押さえてそれぞれご紹介いたします!

  • Oracle Cloud
2022.04.14

【Oracle Cloud】opcユーザー以外のssh接続を許可する方法

Oracle Cloud上にComputeインスタンスやDBシステムを構築すると、システム管理者ユーザーであるopcユーザーが作成されますが、お客様の中にはopcユーザー以外からSSH接続を必要とするケースもあるかと思います。今回は、opcユーザー以外のユーザーからSSH接続を行う方法をご紹介します。

  • Oracle Cloud
2022.03.10

【Oracle Cloud】Cloud Shellで簡単にComputeへシリアルコンソール接続する方法!

Oracle Cloudで構築したComputeインスタンスは、ハードウェア等インフラ周りはオラクル社が管理しますが、OSやアプリケーションはお客様が管理する必要があります。今回は、事前準備不要で簡単に操作可能なCloud Shellによるコンソール接続をご紹介します。

ページの先頭へ戻る