Vyatta x Microsoft Azure
2014/04/04
Japan Azure User Group
@kamebuchi
自己紹介
2
KeijiKamebuchi buchizo@kamebuchiSenior Fellow
{
"name" : "Keiji Kamebuchi",
"corporation" : "pnop Inc.",
"mail" : "...
JAZって?
• Japan Azure User Groupの略
• Microsoft Azureを学び、楽しみ、活かす、
日本のユーザーグループ
• 2010/8/26に結成したコミュニティ
• ちょっと興味がある=ゆるふわな方 から
実...
JAZUGって?
 GROUP はFBで。
Japan Azure User Group
https://www.facebook.com/groups/jazug/
 大阪(関西Azure研究会)、福岡(ふくあず)、仙台、名古屋、札
幌
...
最近のJAZUG
5
大事なお知らせ
6
• このセッションは 2014/04/04
時点の情報を基にしています
• 最新情報はWebで❕
Vyattaの使いどころ
• Azureで提供しているSaaSと接続する
– 仮想ネットワーク
• VPNゲートウェイ
– Site to Site VPN
– Point to Site VPN
• Azure上のネットワークと接続
• Az...
CASE 1: VYATTA TO AZURE
8
Case 1: Vyatta to Azure
• Azure VPNゲートウェイとVyattaを接続
させる
9
Vyatta
参考: http://www.slideshare.net/kazumihirose/vyatta-user-me...
Step 1: Azure側の準備
• 仮想ネットワークを作成します
10
論理的に近くに配置
するためのグループです
Step 1: Azure側の準備
11
サイト間VPNにチェック
接続元のネットワーク
Step 1: Azure側の準備
12
Vyatta側のグローバルIPアドレス
接続元のネットワーク
Step 1: Azure側の準備
13
Azure側のネットワーク
ゲートウェイ用のサブネットを
追加しておきます(1つだけ)
Step 1: Azure側の準備
14
作成直後の状態
下部メニューからVPNゲートウェイを
作成します
Step 1: Azure側の準備
15
VPNゲートウェイ作成中
Step 1: Azure側の準備
16
VPNゲートウェイ作成中
Step 1: Azure側の準備
• VPNゲートウェイのIPアドレスと事前共
有キーを控える
17
Step 2: Vyattaの設定
• 詳細はこちらを参照
• http://www.slideshare.net/kazumihiro
se/vyatta-user-meeting-2013-spring
18
注意事項など
• プロトコルについてはこちら
• http://msdn.microsoft.com/library/az
ure/jj156075.aspx
19
プロパティ 静的ルーティング VPN ゲートウェイ
動的ルーティング VPN ...
注意事項など
• IKE フェーズ1 セットアップ
20
プロパティ
静的ルーティング VPN ゲート
ウェイ
動的ルーティング VPN ゲート
ウェイ [プレビュー]
IKE のバージョン IKEv1 IKEv2
Diffie-Hellman...
注意事項など
• IKE フェーズ2 セットアップ
21
プロパティ 静的ルーティング VPN ゲートウェイ
動的ルーティング VPN ゲートウェイ [プレ
ビュー]
IKE のバージョン IKEv1 IKEv2
ハッシュ アルゴリズム SHA...
注意事項など
• Vyatta側
– NATトラバーサルが可能である
– グローバルなIPv4アドレスを持っている
– 以下の通信が許可されていること
• UDP/500
• UDP/4500
• ESP
– VPNヘッダの付与とカプセル化以前...
CASE 2: VYATTA ON AZURE
23
Case 2: Vyatta on Azure
• Windows Azure上の仮想マシン(IaaS)
でVyattaを稼働させる
– 単に仮想マシンとしてVyattaを動かすだけ
24
Vyatta
Step 1: ローカルでVyatta作る
• Hyper-Vのイメージであれば動作できる
– レガシーデバイスは不可なので注意
– Vyattaは問題ない
• Hyper-V上にVyattaをインストール
– 世代1(Gen1)で作ること
–...
Step 2: Vyattaの設定
• IPアドレスはDHCPで
– set interfaces ethernet eth0 address dhcp
• SSHを有効に
– set service ssh
– Azureではコンソールは触れ...
Step 2: Vyattaの設定
• Azure用Agentのインストール
$ /usr/bin/curl -L -O https://codeload.github.com/WindowsAzure/WALinuxAgent/zip/mas...
よくある失敗
28
Step 2: Vyattaの設定
• MACアドレスを削除
del interfaces; commit;save;
もしくは
/opt/vyatta/etc/config/config.boot から
hw_id 行を削除
• Vyatta...
Step 3: Azure上へUpload
• 作成したVHDファイルをAzure上(BLOB
ストレージ)にアップロード
30
Add-AzureVhd
-Destination http://<Storage>.blob.core.wind...
Step 4: 仮想マシンの作成
• アップロードしたVHDを構成
31
Step 4: 仮想マシンの作成
• 仮想マシンを作成
32
結果
• ローカルで設定した通りで起動する
33
http://wp.me/pWENl-122
汎用イメージへのハードル
• Agentの問題
– Uploadするイメージを作る段階で汎用化する
– waagent -force –deprovision
– Azure上で起動した後の初期化で問題
• ユーザー情報などのプロビジョニング用...
Azure上での注意点
• デプロイしている間はMACアドレス固定
– 障害時などでホストが変わっても維持される
– VHDを保持しておいて削除後再作成などする
と変更される
• 静的IPアドレスは無理そう
– 汎用化できれば(構成時にIPアド...
Azure上での注意点
• /var/log/waagent.log
2014/01/31 16:36:56 ERROR:CalledProcessError. Error Code: 32
2014/01/31 16:36:56 ERROR:...
まとめ
• Azure上でVyattaは動く
– 動くのは動く
– 今のところは
• WAAgent
– オープンソースです
– https://github.com/Azure/WALinuxAgent
– Vyatta用のカスタマイズを!
...
CASE 3: VYATTA TO VYATTA
IN AZURE
38
Case 3: Vyatta to Vyatta in Azure
• Azure上のVyatta同士をVPNで接続
– Azure VPNゲートウェイに頼らない
– マルチSite to Site VPNを目指す
(1つ出来たらどうとでもなる...
やってみる
• OpenVPNを使用
40
firewall {
name FWv4 {
default-action accept
}
}
interfaces {
ethernet eth0 {
address dhcp
duplex au...
Azure側の設定
41
結果
• Vyatta間は疎通OK
• LAN to LANはNG
– Vyattaがルーティングしてくれない
– というよりはVyattaからパケットが転送され
ない → MAC Address Spoofingがオフ?
42
Vyatta ...
まとめ
43
Azure側の制限*
• Point to Site VPN は Preview GAした!
• Site to Site VPN は 1:1のみ
– 動的ルーティングゲートウェイは Preview
GAした!
• vNICアダプタは1つだけ
...
まとめ
• Azureで提供されるネットワークまわりは
まだ制限多い
– ほしい機能があったらリクエスト!
– http://feedback.windowsazure.com/forums/217313-networking-
dns-tra...
46
Upcoming SlideShare
Loading in …5
×

VYATTA USERS MEETING Spring 2014 - JAZUG

16,665 views
16,518 views

Published on

VYATTA USERS MEETING Spring 2014

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
16,665
On SlideShare
0
From Embeds
0
Number of Embeds
49
Actions
Shares
0
Downloads
4
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

VYATTA USERS MEETING Spring 2014 - JAZUG

  1. 1. Vyatta x Microsoft Azure 2014/04/04 Japan Azure User Group @kamebuchi
  2. 2. 自己紹介 2 KeijiKamebuchi buchizo@kamebuchiSenior Fellow { "name" : "Keiji Kamebuchi", "corporation" : "pnop Inc.", "mail" : "kamebuchi@pnop.co.jp", "web" : "http://buchizo.wordpress.com/", "twitter" : "@kamebuchi", "facebook" : "https://www.facebook.com/keijikamebuchi" }
  3. 3. JAZって? • Japan Azure User Groupの略 • Microsoft Azureを学び、楽しみ、活かす、 日本のユーザーグループ • 2010/8/26に結成したコミュニティ • ちょっと興味がある=ゆるふわな方 から 実ビジネスで使うんだよね な方まで歓迎 職種はなんでもござれ ※プログラマ~企画者、デザイナ歓迎 • ゆるふわなコミュニティ 3
  4. 4. JAZUGって?  GROUP はFBで。 Japan Azure User Group https://www.facebook.com/groups/jazug/  大阪(関西Azure研究会)、福岡(ふくあず)、仙台、名古屋、札 幌  Twitter: #jazug  一緒に楽しんだり、運営してくれるメンバーを 募集中です☆
  5. 5. 最近のJAZUG 5
  6. 6. 大事なお知らせ 6 • このセッションは 2014/04/04 時点の情報を基にしています • 最新情報はWebで❕
  7. 7. Vyattaの使いどころ • Azureで提供しているSaaSと接続する – 仮想ネットワーク • VPNゲートウェイ – Site to Site VPN – Point to Site VPN • Azure上のネットワークと接続 • Azure上でVyattaを使う – 仮想マシンとしてVyattaを起動 • 動作検証 / ホビー • Proxyや他のサービスの土台として 7
  8. 8. CASE 1: VYATTA TO AZURE 8
  9. 9. Case 1: Vyatta to Azure • Azure VPNゲートウェイとVyattaを接続 させる 9 Vyatta 参考: http://www.slideshare.net/kazumihirose/vyatta-user-meeting-2013-spring Azure VPNゲートウェイ 仮想ネットワーク VPN Tunnel
  10. 10. Step 1: Azure側の準備 • 仮想ネットワークを作成します 10 論理的に近くに配置 するためのグループです
  11. 11. Step 1: Azure側の準備 11 サイト間VPNにチェック 接続元のネットワーク
  12. 12. Step 1: Azure側の準備 12 Vyatta側のグローバルIPアドレス 接続元のネットワーク
  13. 13. Step 1: Azure側の準備 13 Azure側のネットワーク ゲートウェイ用のサブネットを 追加しておきます(1つだけ)
  14. 14. Step 1: Azure側の準備 14 作成直後の状態 下部メニューからVPNゲートウェイを 作成します
  15. 15. Step 1: Azure側の準備 15 VPNゲートウェイ作成中
  16. 16. Step 1: Azure側の準備 16 VPNゲートウェイ作成中
  17. 17. Step 1: Azure側の準備 • VPNゲートウェイのIPアドレスと事前共 有キーを控える 17
  18. 18. Step 2: Vyattaの設定 • 詳細はこちらを参照 • http://www.slideshare.net/kazumihiro se/vyatta-user-meeting-2013-spring 18
  19. 19. 注意事項など • プロトコルについてはこちら • http://msdn.microsoft.com/library/az ure/jj156075.aspx 19 プロパティ 静的ルーティング VPN ゲートウェイ 動的ルーティング VPN ゲートウェイ [プレ ビュー] サイト間接続 (S2S) ポリシー ベースの VPN 構成 ルート ベースの VPN 構成 コンピューター対サイト接続 (P2S) サポートされていません サポートされています (S2S 接続と共存 します) 認証方法 事前共有キー •サイト間接続用の事前共有キー •ポイント対サイト接続用の証明書 サイト間 (S2S) 接続の最大数 1 1 ポイント対サイト (P2S) 接続の最大数 サポートされていません 250 アクティブなルーティングのサポート (BGP) サポートされていません サポートされていません * 上記URLより抜粋
  20. 20. 注意事項など • IKE フェーズ1 セットアップ 20 プロパティ 静的ルーティング VPN ゲート ウェイ 動的ルーティング VPN ゲート ウェイ [プレビュー] IKE のバージョン IKEv1 IKEv2 Diffie-Hellman グループ グループ 2 (1024 ビット) グループ 2 (1024 ビット) [認証方法] 事前共有キー 事前共有キー 暗号化アルゴリズム AES256 AES128 3DES AES256 3DES ハッシュ アルゴリズム SHA1 (SHA128) SHA1 (SHA128) フェーズ 1 のセキュリティ アソシ エーション (SA) の有効期間 (時間) 28,800 秒 28,800 秒
  21. 21. 注意事項など • IKE フェーズ2 セットアップ 21 プロパティ 静的ルーティング VPN ゲートウェイ 動的ルーティング VPN ゲートウェイ [プレ ビュー] IKE のバージョン IKEv1 IKEv2 ハッシュ アルゴリズム SHA1 (SHA128) SHA1 (SHA128) フェーズ 2 のセキュリティ アソシエーション (SA) の有効期間 (時間) 3,600 秒 - フェーズ 2 のセキュリティ アソシエーション (SA) の有効期間 (スループット) 102,400,000 KB - IPsec SA 暗号化および認証プラン (優先 度順) 1.ESP-AES256 2.ESP-AES128 3.ESP-3DES 4.該当なし 「動的ルーティング ゲートウェイの IPsec セ キュリティ アソシエーション (SA) プラン」を参 照 PFS (Perfect Forward Secrecy) なし なし 停止しているピアの検出 サポートされていません サポートされています
  22. 22. 注意事項など • Vyatta側 – NATトラバーサルが可能である – グローバルなIPv4アドレスを持っている – 以下の通信が許可されていること • UDP/500 • UDP/4500 • ESP – VPNヘッダの付与とカプセル化以前にパケッ トのフラグメント修正処理が可能であること (MSS: 1350) 22
  23. 23. CASE 2: VYATTA ON AZURE 23
  24. 24. Case 2: Vyatta on Azure • Windows Azure上の仮想マシン(IaaS) でVyattaを稼働させる – 単に仮想マシンとしてVyattaを動かすだけ 24 Vyatta
  25. 25. Step 1: ローカルでVyatta作る • Hyper-Vのイメージであれば動作できる – レガシーデバイスは不可なので注意 – Vyattaは問題ない • Hyper-V上にVyattaをインストール – 世代1(Gen1)で作ること – 仮想ハードディスクはVHD形式 • ※今は可変長もOKらしい ※固定長でしておきましょうか(Max127GB) 25
  26. 26. Step 2: Vyattaの設定 • IPアドレスはDHCPで – set interfaces ethernet eth0 address dhcp • SSHを有効に – set service ssh – Azureではコンソールは触れない • Azure用Agentをインストール – 状態管理や初期構成などを行うAgent – ※但し初期構成は行えない模様(後述) 26
  27. 27. Step 2: Vyattaの設定 • Azure用Agentのインストール $ /usr/bin/curl -L -O https://codeload.github.com/WindowsAzure/WALinuxAgent/zip/master $ /usr/bin/unzip master $ sudo cp master/waagent /usr/sbin $ sudo chmod 755 /usr/sbin/waagent $ sudo /usr/sbin/waagent -install 27
  28. 28. よくある失敗 28
  29. 29. Step 2: Vyattaの設定 • MACアドレスを削除 del interfaces; commit;save; もしくは /opt/vyatta/etc/config/config.boot から hw_id 行を削除 • Vyattaをシャットダウン – ※Azureにあげる前に再度起動するとMACア ドレスついちゃうので注意 29
  30. 30. Step 3: Azure上へUpload • 作成したVHDファイルをAzure上(BLOB ストレージ)にアップロード 30 Add-AzureVhd -Destination http://<Storage>.blob.core.windows.net/vhds/xxx.vhd -localfilepath "xxx.vhd“ ※実際は一行です http://www.windowsazure.com/en-us/documentation/articles/virtual-machines-linux- create-upload-vhd/ http://www.windowsazure.com/en-us/documentation/articles/virtual-machines-create- upload-vhd-windows-server/
  31. 31. Step 4: 仮想マシンの作成 • アップロードしたVHDを構成 31
  32. 32. Step 4: 仮想マシンの作成 • 仮想マシンを作成 32
  33. 33. 結果 • ローカルで設定した通りで起動する 33 http://wp.me/pWENl-122
  34. 34. 汎用イメージへのハードル • Agentの問題 – Uploadするイメージを作る段階で汎用化する – waagent -force –deprovision – Azure上で起動した後の初期化で問題 • ユーザー情報などのプロビジョニング用ファイル (ovf-env.xml)がDVDとしてマウントされる • UDFフォーマットが使われるがVyattaには無い? • マウントできず初期化できない ※一応起動はする 34
  35. 35. Azure上での注意点 • デプロイしている間はMACアドレス固定 – 障害時などでホストが変わっても維持される – VHDを保持しておいて削除後再作成などする と変更される • 静的IPアドレスは無理そう – 汎用化できれば(構成時にIPアドレスを含め るため) 35
  36. 36. Azure上での注意点 • /var/log/waagent.log 2014/01/31 16:36:56 ERROR:CalledProcessError. Error Code: 32 2014/01/31 16:36:56 ERROR:CalledProcessError. Command string: "mount -v /dev/hdc /mnt/cdrom/secure" 2014/01/31 16:36:56 ERROR:CalledProcessError. Command result: "mount: you must specify the filesystem type 2014/01/31 16:36:56 ERROR:mount: you didn't specify a filesystem type for /dev/hdc 2014/01/31 16:36:56 ERROR: I will try all types mentioned in /etc/filesystems or /proc/filesystems" 2014/01/31 16:36:56 mount: you must specify the filesystem type 2014/01/31 16:36:56 mount: you didn't specify a filesystem type for /dev/hdc 2014/01/31 16:36:56 I will try all types mentioned in /etc/filesystems or /proc/filesystems 36
  37. 37. まとめ • Azure上でVyattaは動く – 動くのは動く – 今のところは • WAAgent – オープンソースです – https://github.com/Azure/WALinuxAgent – Vyatta用のカスタマイズを! – http://www.windowsazure.com/ja- jp/manage/linux/how-to-guides/linux- agent-guide/ 37
  38. 38. CASE 3: VYATTA TO VYATTA IN AZURE 38
  39. 39. Case 3: Vyatta to Vyatta in Azure • Azure上のVyatta同士をVPNで接続 – Azure VPNゲートウェイに頼らない – マルチSite to Site VPNを目指す (1つ出来たらどうとでもなるはず) 39 Vyatta Vyatta VPN Tunnel
  40. 40. やってみる • OpenVPNを使用 40 firewall { name FWv4 { default-action accept } } interfaces { ethernet eth0 { address dhcp duplex auto hw-id 00:15:5d:39:79:a6 smp_affinity auto speed auto } openvpn vtun1 { local-address 172.17.1.11 { subnet-mask 255.255.255.0 } mode site-to-site openvpn-option --float protocol udp remote-address 172.17.1.21 remote-host 137.116.162.125 shared-secret-key-file /config/auth/secret } } protocols { static { interface-route 10.1.1.0/24 { next-hop-interface vtun1 { } } } } : :
  41. 41. Azure側の設定 41
  42. 42. 結果 • Vyatta間は疎通OK • LAN to LANはNG – Vyattaがルーティングしてくれない – というよりはVyattaからパケットが転送され ない → MAC Address Spoofingがオフ? 42 Vyatta Vyatta OK NGNG
  43. 43. まとめ 43
  44. 44. Azure側の制限* • Point to Site VPN は Preview GAした! • Site to Site VPN は 1:1のみ – 動的ルーティングゲートウェイは Preview GAした! • vNICアダプタは1つだけ – IPアドレス複数設定は可能 • 但し障害があった場合、リセットされる可能性アリ – Hyper-VでいうところのMAC Address Spoofingがオフになってる? 44* 2014年4月4日現在
  45. 45. まとめ • Azureで提供されるネットワークまわりは まだ制限多い – ほしい機能があったらリクエスト! – http://feedback.windowsazure.com/forums/217313-networking- dns-traffic-manager-vpn-vnet • Azure用のVyattaイメージがあると 嬉しいですね – 是非VMDepotで公開を! – https://vmdepot.msopentech.com/List/Index 45
  46. 46. 46

×