クラウドとネットワーク
発表日: 2016年6月18日 高橋 概
自己紹介
• 名前 : 高橋 概 (たかはし がい)
• 現場 : みなとみらい (某クラウドサービス開発)
• 好きな言語 : Java / HTML5+CSS3+JS / C# (Unityで勉強中)
• 趣味 : 車・バイク / HIP HOP / アニメ / 業務効率化ツール開発 etc..
• 自己PR : ★ とりあえず人と話すのが好き!
★ 動物大好き!(フェレット飼ってます) ★ 車で遠征大好き!(山が好きです) ★ めっちゃ可愛い彼女ができた!
• 様々なデータを自分のデバイスではなく、インターネット上で保存・使用するサービスのこと。 Cloud = “雲” という言葉の通り、使用者が中身を意識せずともサービスを利用できる。
クラウド とは
メール / 音楽 / 映画 / サーバー / ネットワークなど 何でも気にせず使える!【代表例】
メール -- Gmail / Yahoo!メール SNS -- Twitter / Facebook 動画 -- Youtube / ニコニコ動画
音楽 -- Apple Music / Google Play Music
クラウド 種類と代表例
SaaS (サース、サーズ) Software as a Serviceの略称 インターネット経由でソフトウェアパッケージを提供しているサービスのこと。 パッケージのインストールをせずともアプリケーションを利用することができる。 一般の方に一番なじみ深い、クラウドサービスと言えます。【代表例】
Amazon Web Services (AWS),
Google App Engine (Google Cloud Platform), Microsoft Azure, Monaca
クラウド 種類と代表例
PaaS (パース、パーズ) Platform as a Serviceの略称 インターネット経由で様々なアプリケーションの 開発・運用の場を提供しているサービスのこと。 システム開発者・管理者などに利用されるクラウドサービスです。【代表例】
ニフティクラウド, さくらのクラウド,
Amazon Web Services (AWS)
クラウド 種類と代表例
IaaS(イアース、アイアス) Infrastructure as a Serviceの略称 インターネット経由でハードウェアやネットワークなど いわゆる「インフラ」を提供しているサービスのこと。 今回はIaaSに関係する内容が主となっています。 ※IaaS=HaaS(Hardware as a Service)という呼ばれ方もあるそうです。上記のメリットは極一例ですが、 コスト削減と利用者の負荷軽減に大きく貢献します。
クラウド メリット
• クラウドサービスの導入によるメリット サーバー・ソフトウェアなどの購入が必要ない (コスト削減) システム構築期間の短縮になる 効率的なIT投資の実現 メンテナンスの必要性が減る IT部門の負荷軽減に繋がる ※IT投資 = 生産性、導入などによる費用や業務効率のこと(TCO) ※TCO = Total Cost of Ownershipクラウドサービス事業者はウィルス対策や障害の監視、 脆弱性の確認やログの取得など、様々な対策を講じることになります。 (利用者はあまり意識しなくてもいいが)
クラウド デメリット
• クラウドサービスの導入によるデメリット カスタマイズ性が悪い サービスの安定稼働に対するリスク (通信障害等) セキュリティー面でのリスク (他ユーザに影響を及ぼすこともある)それぞれ特徴があり、それらを理解することで クラウドサービスの導入をするべきか否かを判断することも可能です。
クラウド サービス分類
• クラウドには大きく分けて2つのサービスがあります。 プライベート型 クラウドサービス パブリック型 クラウドサービス プライベート型? パブリック型?企業がサーバーを専有し現在のコンピュータリソースを最適化するオンプレミス型、 企業がシステムの一部分を占有し利用するホスティング型が主流です。
クラウド プライベート型
• プライベートクラウドとは、一つの企業のためだけに構築する コンピューティング環境を提供するサービスのことです。 プライベート型クラウドでは、 利用者が環境を占有できるので高度なセキュリティを維持することが可能です。 しかし、パブリック型クラウドに比べコストが割高になります。 顧客データベースや基幹業務システムなど、高度なガバナンスを求められるシステムでも設置が可能 ※ガバナンス = 情報管理体制を強固に構築するための企業統治性ユーザーはハードウェアや通信回線などを自分では所有せず、 パッケージされたクラウド環境を共有しながら使用します。
クラウド パブリック型
• パブリッククラウドとは、コンピューティング環境を 不特定多数のユーザーに提供するサービスのことです。 パブリック型クラウドでは、 プライベート型クラウドよりもコストが安価でシステム管理が不要ですが、 障害発生時のコントロールが不可でプライベート型よりセキュリティが低いです。 即時利用可能なサービスが多く、初期費用も抑えられるVyOS とは
• ソフトウェアルータ”Vyatta”から派生したオープンソースのOSで、 ソフトウェアベースのルーティング・FW・VPNなどの機能を提供。 Vyattaとは、Vyatta社によりオープンソースで開発されていたソフトウェアルーターのこと。 2012年 Vyatta買収後は開発を中止している。 Vyatta 買収 Vyatta ・公開・サポートは継続 ・開発は終了 派生 VyOS ・Vyatta 6.6 R1をベースにフォーク ・現在もリリースされている ・最新の安定板はv1.1.7(Helium)VyOS でできること
• Routing (パケットの転送先を決定する機能)
• Network Interfaces (LAN接続するための設定。NICが主) • Firewall and NAT (簡単にいうとセキュリティのための機能)
• VPN (セキュリティ性を高めた仮想的なPVLAN機能)
• Network Services (DHCP / DNS / WebProxy / SSH etc..) • High availability (VRRP / ロードバランサー)
• IPv6 support (IPv4に代わるものとして設計された次世代のプロトコル) このように、ハードウェアルーターと遜色ないほどに様々な機能に対応しています。
VyOS メリット
• 1.ハードウェアルーターのようなCLI (Command Line Interface)
ルーターディストリビューション: ルーターとして必要なソフトウェアや
統一的な設定ツールを含むLinuxディストリビューションのこと。Linuxの配布形態の一つ。
vyos@vyos:~$ configure [edit]
vyos@vyos# show interfaces ethernet eth2 hw-id 00:50:56:9a:00:32
[edit]
vyos@vyos# set interfaces ethernet eth2 description 'TEST‘ vyos@vyos# show interfaces ethernet eth2
+description TEST hw-id 00:50:56:9a:00:32 [edit] vyos@vyos# commit [edit] vyos@vyos# save
Saving configuration to '/config/config.boot'... Done
[edit]
vyos@vyos# exit
VyOS メリット
• 物理的でも仮想的でも同様な使い方ができる。 物理環境 / 仮想環境,32bit / 64bit 全て同様な挙動をします。 VyOS 32bit 物理マシン 64bit 物理マシン 64bit 仮想マシン 32bit 仮想マシン 問題なく使える!VyOS メリット
• 完全にフリーでオープンソース、内部APIやビルド方法もドキュメント化されている。
VyOS ネットワーク種別
• グローバルネットワーク 外部公開されているインターネットのこと (外部ネットワーク)。 Webで閲覧できる世界中のサーバーがグローバルネットワーク。 世界中からルーターを経由してアクセスできるため、セキュリティ設定が重要。 • プライベートネットワーク グローバルネットワークからルーターを介して割り当てられる プライベートなネットワーク (内部ネットワーク)。 外部との通信はルーターを介して行われるためセキュリティ性は高い。 グローバル ネットワーク プライベートネットワーク VyOS (ルーター)VyOS 役割
• VyOSは下記のとおり、グローバルネットワークと プライベートネットワーク間の制御部分を担当します。 グローバル ネットワーク VyOS (ルーター) プライベート ネットワーク サーバー1 サーバー2 サーバー3 10.2.0.0/24 0.0.0.0/0 10.2.0.10/24 10.2.0.20/24 10.2.0.30/24 IPアドレスの割当や 攻撃者からの保護など 様々な事をやっている!VyOS 基本操作
• configure / exit コマンド VyOSの設定を変更したい場合に使用するコマンド。 configureモードにすることで、VyOSの全ての設定変更が可能です。 configureモードを終了する場合はexitコマンドを使用します。 通常のモードとconfigureモードでは、コンソールの表示が異なります。 vyos@vyos:~$ vyos@vyos:~$ vyos@vyos:~$ vyos@vyos:~$ vyos@vyos:~$ vyos@vyos:~$ vyos@vyos:~$ configure [edit] vyos@vyos# vyos@vyos# exit vyos@vyos:~$ 通常モードの表示 showコマンドなど参照系しか使えない configureモードの表示 setやdeleteなど設定変更系のコマンドが使えるVyOS 基本操作
• commit コマンド 設定した変更を反映したい場合、commitコマンドを実行します。 再起動の必要なしに、変更は反映されます。 設定の保存にはsaveコマンドを実行する必要があります。 vyos@vyos:~$ configure [edit]vyos@vyos# set system host-name myvyos [edit]
vyos@vyos# commit
[ system host-name myvyos ]
Stopping enchanced syslogd: rsyslogd. Starting enchanced syslogd: rsyslogd. [edit]
VyOS 基本操作
• save コマンド
commit した変更を保存するためのコマンド。
saveをしないと再起動された場合、設定は保存されません。
基本的にcommit~saveコマンドはセットとして考えるとよいでしょう。
vyos@vyos# set system host-name myvyos [edit]
vyos@vyos# commit
[ system host-name myvyos ]
Stopping enchanced syslogd: rsyslogd. Starting enchanced syslogd: rsyslogd. [edit]
vyos@vyos# save
Saving configuration to ‘/config/config.boot’ . . . Done
[edit]
vyos@vyos# exit vyos@vyos:~$
VyOS 基本操作
• show コマンド
現在の設定内容を確認するためのコマンド。 show configuration で全設定の表示、
show interfaces ethernet でネットワーク設定の表示など 確認したい情報によって使用方法が変わります。
vyos@vyos:~$ show configuration firewall { all-ping enable broadcast-ping disable config-trap disable ipv6-receive-redirects disable ipv6-src-route disable ip-src-route enable log-martians enable receive-redirects disable } interfaces { :
vyos@vyos:~$ show interfaces ethernet Interface IP Address S/L Description --- --- --- ---eth0 10.0.2.15/24 u/u OUTSIDE eth1 192.168.0.1/24 u/u INSIDE vyos@vyos:~$
VyOSでルーター作成
• VyOSは実際にどのように使用することができるのか説明します。 今回は仮想マシンへのインストール~簡単なルーター作成までを実践します。 ルーターに関しては、仮想マシン内でDHCPサーバーを立て、 IPアドレス割当、外部通信の確認までを目標にしたいと思います。 グローバル ネットワーク VyOS (ルーター) ・DHCPサーバーを建て、プライベートネットワーク のIPアドレスを自動割当 ・その他必要な最低限の設定仮想マシン 作成(1/6)
仮想マシンの設定。 名前 : 任意の名称 タイプ : Linux バージョン : UbuntuベースなのでUbuntu メモリサイズ :1024MB (最低524MB) ハードディスク: 作成する タイプ・バージョンに関してはその他でもOKですが、 LinuxOSなので合わせておきます。仮想マシン 作成(2/6)
仮想ハードディスクの設定 ファイルの場所 : そのままでOK ファイルサイズ : 10GB (最低2GB) ファイルタイプ : VMDK ストレージタイプ : 固定サイズ仮想マシン 作成(3/6)
ハードディスクの作成が完了すると 仮想マシンの完成!
仮想マシン 作成(4/6)
右クリック→設定→システム→プロセッサータブ を表示、 “PAE/NXを有効化” にチェックを入れる
仮想マシン 作成(5/6)
ストレージ→光学ドライブ にVyOSのイメージ(.iso)をセット
仮想マシン 作成(6/6)
ネットワーク→アダプター2 タブを選択、
VyOS インストール(1/4)
VyOS インストール(2/4)
ユーザー名に”vyos”, パスワードに”vyos”と入力しEnter. (VyOSの初期ユーザーです)
VyOS インストール(3/4)
• まずは、rootユーザーのパスワード変更をします。
VyOS インストール(4/4)
• ハードディスクにVyOSの焼きこみを行います。 “install image” と入力することで焼きこむ事ができます。 インストールが完了したら下記画面のように”Done!”と表示されるので、 光学ドライブにセットしたイメージの割り当てを解除してrebootします。 インストールが完了し、HDDから起動した画面VyOS 実践
• VyOSの基本設定が完了したので、次はルーターとしての設定を行います。
ルーターの設定はすべてVyOSのconfigureモードで行います。 1. ネットワーク インターフェースの設定
VyOS 実践
• set interfaces ethernet eth0 address dhcp
→ eth0にDHCPでIPアドレスを割り当てる
• set interfaces ethernet eth0 description OUTSIDE
→ eth0の備考を書き換えている
• set interfaces ethernet eth1 address 192.168.0.1/24 → eth1に固定IPアドレス ”192.168.0.1” を割り当てる
• set interfaces ethernet eth0 description OUTSIDE → eth1の備考を書き換えている
VyOS 実践
VyOS 実践
• NAT (Network Address Translation)は、IPアドレスを変換する技術です。 一般的にはプライベートIPアドレスをグローバルIPアドレス に変換する技術とされています。 NATでは送信元IPアドレスを別のIPアドレスに変換します。 送信元IPアドレスがプライベートIPアドレスの場合、 NATによってグローバルIPアドレスに変換されるため、セキュリティ性が向上します。 N A T 10.0.0.20/24 0.0.0.0/0 IPアドレスを変換 グローバル ネットワーク 10.0.0.10/24 10.0.0.30/24
VyOS 実践
• set nat source rule 100 outbound-interface eth0
→ 送信元NAT:ルール番号100 にeth0に対する設定を作成
• set nat source rule 100 source address 192.168.0.0/24
→ 送信元NAT:ルール番号100 にIPアドレス帯192.168.0.0/24を設定
• set nat source rule 100 translation address masquerade → 送信元NAT:ルール番号100 のIPアドレス変換先をIPマスカレードする
IPアドレス帯: 192.168.0.0/24の場合、192.168.0.0~192.168.0.255を意味する。 IPマスカレード: 一つのグローバルIPアドレスに対し、複数のプライベートアドレスを割り当てる事
VyOS 実践
VyOS 実践
• DHCP (Dynamic Host Configuration Protocol)は、
接続するコンピューターにIPアドレスを自動的に割り当てるプロトコル。 ネットワーク設定を手動で行わなくてもすぐにコンピューターを接続することができ、 ネットワークの設定に詳しくないユーザーでも簡単に接続することができる。 DHCPで設定情報を提供する機能を持ったネットワーク機器をDHCPサーバーという。 D H C P サ | バ 0.0.0.0/0 Start 192.168.0.100 Stop 192.168.0.254 192.168.0.100 192.168.0.101 192.168.0.102 サーバー1 サーバー2 サーバー3
VyOS 実践
• set service dhcp-server disabled false
→ DHCPサーバーを有効化する
• set service dhcp-server shared-network-name LAN subnet
192.168.0.0/24 default-router 192.168.0.1
→ IPアドレス帯 “192.168.0.0/24” のデフォルトルーターを設定する
• set service dhcp-server shared-network-name LAN subnet
192.168.0.0/24 dns-server 192.168.0.1
→ IPアドレス帯 “192.168.0.0/24” のDNSサーバーを設定する
デフォルトルーター: ルーターのIPアドレスのこと
VyOS 実践
• set service dhcp-server shared-network-name LAN subnet
192.168.0.0/24 domain-name interval-network → IPアドレス帯 “192.168.0.0/24” のドメイン名を設定する
• set service dhcp-server shared-network-name LAN subnet
192.168.0.0/24 lease 86400
→ IPアドレス帯 “192.168.0.0/24” のIPアドレス割当期限を設定(86400は1日) • set service dhcp-server shared-network-name LAN subnet
192.168.0.0/24 start 192.168.0.9 stop 192.168.0.254
VyOS 実践
VyOS 実践
• ファイアウォール(FW)は、内外部の通信を中継・監視し、 外部の攻撃から内部を保護するための機能です。 一般的な構成ではファイアウォールに内部ネットワークの回線と外部ネットワークの回線を 両方つなぎ、内部と外部の通信が必ずファイアウォールを通過するようにして、 ファイアウォールが一定の基準に従って不正と判断した通信を遮断。 F W サーバー1 FWに設定している許可ルールをもとに 通信の可否選別が行われる!VyOS 実践
• set firewall name OUTSIDE-IN rule 10 action accept
set firewall name OUTSIDE-IN rule 10 state established enable set firewall name OUTSIDE-IN rule 10 state related enable
→ ファイアウォール OUTSIDE-INにすべてを許容する設定
• set firewall name OUTSIDE-IN rule 10 action accept
set firewall name OUTSIDE-IN rule 10 state established enable set firewall name OUTSIDE-IN rule 10 state related enable
→ ファイアウォール OUTSIDE-LOCALにすべてを許容する設定
• set interfaces ethernet eth0 firewall in name OUTSIDE-IN
set interfaces ethernet eth0 firewall local name OUTSIDE-LOCAL → eth0 にファイアウォールを設定する
※この設定は接続者すべてを受け入れる設定になっているので、 公開されたネットワーク上でこの指定をすると非常に危険です。
VyOS 実践
VyOS 実践
VyOS 実践
DHCPサーバーによるIPアドレス自動割当機能で、
VyOS 実践
• 実際に外部とのやり取りが可能になったか確認してみます。
今回はpingコマンドを使用して外部との疎通ができるか検証します。