Vyatta技術詳細 株式会社まほろば工房 谷津 航 1 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 目次 Vyattaとは 使用例 その他 まとめ 2 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 Vyattaとは 3 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 Linuxをルータっぽく使ったことありますか? ルータ製品を使いたかったけど、ルータ製品で頑張れない場合 予算と機能のかねあい サーバマシンに、ルータとして頑張ってもらう。 たぶん、こういう機能を使ったと思います。 4 iptables openvpn tcpdump named (DNSキャッシュ) dhcpd quagga vrrpd/keepalived etc... Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 こんなかんじ? ファイアーウォール/NAT (iptables) インターネット VPN終端 (openvpn他) Linuxでルータ DMZ 外部向け サーバ DNSキャッシュ (named) DHCPサーバ (dhcpd) OSPF/BGP (quagga) 5 社内サーバ クライアントPC Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 こんなかんじ? (debianの場合のファイル名) ファイアーウォール/NAT (iptables) VPN終端 (openvpn他) インターネット /etc/iptables/rules /etc /openvpn/* Linuxでルータ DNSキャッシュ (named) DHCPサーバ (dhcpd) OSPF/BGP (quagga) 6 DMZ named.conf dhcpd.conf クライアントPC 社内サーバ /etc /quagga/* Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 全 部 外部向け 別 サーバ 個 に 管 理 たいへん Vyattaの場合こんなかんじ ファイアーウォール/NAT (iptables) VPN終端 (openvpn他) インターネット iptables/rules /etc /openvpn/* DMZ VYATTA DNSキャッシュ (named) DHCPサーバ (dhcpd) OSPF/BGP (quagga) 7 このファイルだけ管理 外部向け サーバ Vyattaの設定 ファイル (config.boot) named.conf dhcpd.conf クライアントPC 社内サーバ /etc /quagga/* Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 らくちん Vyattaとは Vyatta このへん ソフトウェアルータ Vyatta自身がルータ機能の全 てを提供してるわけではありま せん。 いろいろなOSSを、Debian パッケージとして搭載すること で、各機能を実現しています。 UI(設定管理/状態表示) 各ソフトウェアの設定ファイル をとりまとめてくれる。 各ソフトウェアのバージョン管 理もしている。(APTで) 8 openvpn named 一部のOSSはVyattaカスタム Vyattaの役割 iptables tcpdump vrrpd Debian 各ソフトウェアを パッケージとして管理 dhcpd quagga Linux kernel APTを使って独自にソフトウェア追 加/更新できちゃう。 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 Vyatta使用例 9 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 使用例1 拠点/オフィスに設置の ルータ IPSec NAT VLAN 別の拠点 インターネット NAT I P S e c Vyatta 802.1q LAN1 LAN2 LAN3 10 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 使用例1 vyatta設定(IPSec部分) /etc/ipsec.conf vpn { # generated by ipsec { /opt/vyatta/sbin/vpn-config.pl (snip) (snip) ipsec-interfaces { conn peer-10.0.100.1-tunnel-10 interface eth1 left=10.0.100.2 } right=10.0.100.1 site-to-site { ike=aes128-sha1! peer 10.0.100.1 { ikelifetime=28800s authentication { keyingtries=%forever mode pre-shared-secret esp=aes128-sha1! pre-shared-secret vyatta keylife=3600s } rekeymargin=540s ike-group ike1 type=tunnel local-ip 10.0.100.2 pfs=yes tunnel 10 { compress=no allow-nat-networks disable authby=secret esp-group esp1 auto=start } #conn peer-10.0.100.1-tunnel-10 } } } } Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 11 使用例1 vyatta設定(NAT) service { nat { rule 100 { outbound-interface eth1 type masquerade } } (snip) } vyatta設定(VLAN) interfaces { ethernet eth0 { (snip) vif 1000 { address 10.0.0.2/24 } } } 12 commitすると (vyatta独自の保存形式) iptablesを実行 # /sbin/iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE (vyatta独自の保存形式) vconfigを実行 # /sbin/vconfig add eth0 1000 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 使用例2 ISP網内のAS境界ルータ OSPF BGP インターネット B G P Vyatta O S P F 内部ルータ コアルータ 13 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 使用例2 vyatta設定(BGP&OSPF) protocols { bgp 65001 { neighbor 10.1.1.2 { remote-as 65004 soft-reconfiguration { inbound } } parameters { log-neighbor-changes } } ospf { area 0.0.0.0 { network 10.1.0.0/16 } } } 14 commitすると (vyatta独自の保存形式) vtysh実行 /usr/bin/vtysh –c configure terminal ¥ -c router bgp 65001 ¥ -c neighbor 10.1.1.2 remote-as 65004 ¥ -c neighbor 10.1.1.2 soft-reconfiguration inbound ¥ -c bgp log-neighbor-changes /usr/bin/vtysh –c configure terminal ¥ -c router ospf ¥ -c network 10.1.0.0/16 area 0.0.0.0 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 その他の使用例(SNMP) vyatta設定(SNMP) service { snmp { community vyatta { authorization ro network 192.168.0.0/24 } contact someone@example.jp description VC6.1 location somewhere trap-target 192.168.0.4 { community vyatta port 162 } } (snip) } 15 /etc/snmp/snmpd.conf # autogenerated by vyatta-snmp.pl (snip) rocommunity vyatta 192.168.0.0/24 syscontact "someone@example.jp" sysdescr "VC6.1" syslocation "somewhere" (snip) trap2sink 192.168.0.4:162 vyatta Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 その他 16 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 保守性 故障時の筺体交換 交換用の機器でvyattaを起動する。 ログインする。 事前にバックアップしておいたvyatta 設定ファイル(config.boot)を、交換 用の機器の /opt/vyatta/etc/config/ に置く。 バージョンアップ scpなど load config.boot コマンドを実行す る。 ログインする。 サービスを停止させる。 sudo full-upgrade –k コマンドを実 行する。 (再起動される) ログインする。 サービスを再開する。 アプライアンス機みたいな使用感 17 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 インストール Live CDで起動して、 install-systemコマンドを実行したら、 7つの質問に答えて、 ログインパスワードを入れて、 reboot。 こ れ だ け 7つの質問: Would you like to continue? (Yes/No) [Yes]: (ENTER) Partition (Auto/Union/Parted/Skip) [Auto]: (ENTER) Install the image on? [sda]: (ENTER) Continue? (Yes/No) [No]: Yes How big of a root partition should I create? (1000MB - 8590MB) [8590]MB: (ENTER) Which one should I copy to sda? [/opt/vyatta/etc/config/config.boot]: (ENTER) Which drive should GRUB modify the boot partition on? [sda]: (ENTER) 18 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 まとめ 19 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 Vyattaとは - まとめ 実体は、 Debianをベースにして、 OSSやVyatta社独自のソフトウェアを追加して、 さらに独自のUI(CLI、GUI、、、)を追加した、 ソフトウェアルータ Debianパッケージの形式で追加 本質は、 IA機を、ルータのアプライアンス機に変えるおまじない 20 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30 http://www.ate-mahoroba.jp/ 21 Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved. 2010-09-30
© Copyright 2024 Paperzz