クラウドのシステムを利用する際はWEBサイトに公表されていない内部仕様があります。例えばロードバランサのIPなど。機器のIPを知ることが出来れば主にセキュリティの制御に利用出来ます。また、サービス仕様の露出度はサービスによりけり。今回はGMOクラウドのロードバランサのIPを知る方法のご紹介です。
結論からいうと、ロードバランサから振り分けられるサーバのiptablesのログから確認します。しかし、iptablesはそのままだとログをはきません。
iptablesがログを出すように設定しよう。
1 2 3 4 5 6 |
# vi /etc/sysconfig/iptables # LOG SETTINGS -A RH-Firewall-1-INPUT -d 255.255.255.255 -j DROP -A RH-Firewall-1-INPUT -d 224.0.0.1 -j DROP -A RH-Firewall-1-INPUT -m limit --limit 1/s -j LOG --log-prefix "[iptables firewall] : " --log-level=info |
1 |
# service iptables restart |
さらにrsyslogの設定
1 2 3 |
# vi /etc/rsyslog.conf kern.info /var/log/iptables.log |
1 |
# service rsyslog restart |
通信を行っている状態でtailコマンドで観察しよう。
1 2 3 4 5 6 |
# tail -f /var/log/iptables.log Jan 20 18:19:40 DB-slave2 kernel: [iptables firewall] : IN=eth0 OUT= MAC=03:e8:06:5c:05:04:XX:0e:ce:e8:e8:bf:02:00 SRC=192.168.0.251 DST=172.xxx.0.215 LEN=40 TOS=0x00 PREC=0x00 TTL=254 ID=31950 DF PROTO=TCP SPT=41643 DPT=3306 WINDOW=8188 RES=0x00 ACK URGP=0 |
SRC=192.168.0.251
クラウド内からの接続であるプライベートIPがログに残りました。つまり、ロードバランサーのIPは192.168.0.251であることがわかりますね٩(๑❛ᴗ❛๑)۶