質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

Q&A

2回答

1842閲覧

vagrantで設定した開発サーバーから外部へのアクセスを遮断するには?

kutu

総合スコア257

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Vagrant

Vagrantは、VirtualBox上の仮想マシンを コマンドラインから作成してくれるソフトウェアです。 ビルド環境など容易に構築が可能です。

0グッド

1クリップ

投稿2016/08/08 00:51

現在、下記の構成のサーバーで管理システムを運営しております

ユーザー --- Webサーバー --- DBサーバー

こちらの開発環境であるサーバーXをvagrantで、以下のように作成したいと考えております

開発者 --- 開発用Webサーバー(サーバーX) --- 開発用DBサーバー(サーバーX)

一番怖いのが開発用のWebサーバーから本番用のDBサーバーに繋がってしまい、DBを書き換えてしまうことです。

上記を防ぐには、本番用のDBサーバーで本番用Webサーバー以外からのアクセスを遮断するのが一番良いのですが、そちらのサーバーが顧客のものであり、簡単に設定変更が出来ません。

なので、開発用のWebサーバーから外部へのアクセスを防ぐのがベストかと思うのですが、vagrant、Linux(CentOS)の設定等でそのようなことは可能でしょうか?

ご存知のかたいらっしゃれば、よろしくお願い致します

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

iptablesで可能です。
次のファイルを記述してiptablesを再起動または設定のリロードしてください。

/etc/sysconfig/iptables

*filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT DROP [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -p tcp -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT

投稿2016/08/08 01:20

moonphase

総合スコア6621

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kutu

2016/08/08 01:51

vagrantではcentOSで実装しているのですが /etc/sysconfig/iptables というファイルではなく /etc/sysconfig/iptables-config ・/etc/sysconfig/iptables-configの最後にご提示いただいたコードをコピー&ペースト ・vagrant Halt==> vagrant upで再起動 ・MySQLで外部にアクセス確認==>アクセス可能 ・Lynxで外部にアクセス確認 ==> アクセス可能 となってしまいました。 どこか操作を間違っていますでしょうか? よろしくお願い致します
moonphase

2016/08/08 01:54

私の環境はcentos6ですが、/etc/sysconfig/iptables に記述してうまくできてます。 /etc/sysconfig/iptables-config は元々ありますが、そのファイルはサービス起動の為の設定ファイルでシェルからsourceされてるものかと思います。
over

2016/08/08 02:08

横から失礼します。 まずは環境を確認すべきではないでしょうか? CentOS7系であればfirewalld推奨です。 iptablesはCentOS6系以前となります。
guest

0

通常のアプローチですと、
開発用環境と本番環境を同じネットワークに置かないことで、
(出来れば物理的に別の場所に置く、それが難しければ、ルータやスイッチでVLANで切り分ける等)
仮に開発用環境から悪意を持って本番環境に接続しようとしても接続できないようにします。

こういったアプローチは難しい状況でしょうか?

投稿2016/08/08 02:59

tanat

総合スコア18713

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問