image


■Cisco 841M/Jがやって来た

シスコのISRルータシリーズのエントリーモデルに「Cisco 841M J」シリーズがラインナップされました。
この機種は「Cisco Startシリーズ」としてこれまであまり対象にしていなかった小規模用途にも対応したモデルになります。2年保守付きモデルのオンライン販売もされており、その気になれば個人にも手が届く商品になっています。これまでCCNA取得のために中古の機械をオークションなどで入手していた人や、ヤマハのルータではちょっと物足りなさを感じる人にも絶好のモデルではないでしょうか。
特に、IPSecでの高速リモートアクセス環境を構築する向きにはたいへん最適なモデルと思います。
image
というのも、Cisco IOS搭載ルータは単にIPsecのVPNに対応しているだけでなく、他商品で一般的な「VPN接続数」の制限はなく、CPUやメモリの処理能力で推奨数が決められているだけなので、上位モデルのCisco 891FJ並みの処理能力をもつ841MJならかなりの高速リモートアクセス性能が期待できるはずなのです。



■インターネット接続はGUIでお手軽設定

もちろん、ふつうにCiscoルータをさわってる人からすれば、別に悩むところではないわけですし、CCNA取得を目指すような人はむしろそういうものぐさな手法は避けるべきですが、このルータが新たにターゲットにする大多数のユーザはお手軽なほうが良いに決まっているとおもいます。

というわけで、ルータの電源を投入し、LAN側にDHCPでPCを接続すると勝手に10.10.10.2/25とかのアドレスが割り当てられます。
あとはブラウザで「https://10.10.10.1」へアクセスすれば、設定画面にアクセスできます。
初期パスワードはユーザ名「cisco」、パスワード「cisco」。
こちらはワンタイムになっているため、ログイン後すぐに変更が必要です。あとは「クイックセットアップ・ウイザード」を起動し適当に設定していけば、インターネット接続は完了。
ラクチンですね。

5520

この辺の詳しくはCiscoのサイトを参照ください。→ Cisco Start ルータ 設定情報(cisco.com)
なお、ウイザードをすすめる際、FW設定はデフォルトのまま入れずに進んだ方がいいようです(必要なら後でもできますので)。


■Cisco VPN ClientによるIPSecリモートアクセス
Ciscoではリモートアクセス環境を「Any Connect」へ移行を促すため、直接のサポートは終了しているものの、IPSecのリモートアクセス環境「Cisco VPN Client」はいまだ最も利用されているリモートアクセス環境のひとつです。

特にiPhone/iPadなどのiOSデバイスでは最も初期の段階からIPSecのVPNクライアントとしてCiscoのクライアントを標準で内蔵しています。

またMacでもMac OS X Lion以降のバージョンでは同様に標準で搭載をしています。

残念ながら公式サポート終了にあわせてWindows版はすでにcisco.comサイトでのサポート契約者向けダウンロードは終了しています。以下に最終バージョンのWindows版クライアントのファイル名を記載します。
Windows 7 32bit  「 vpnclient-win-msi-5.0.07.0410-k9.exe
Windows 7 64bit  「 vpnclient-winx64-msi-5.0.07.0440-k9.exe

また、必要な方はWindows版クライアントのWindows 8/8.1/10へ対応させる方法について、および互換クライアントについての紹介については過去記事のほうを参照ください。


iPone/iPadでは、「設定」アプリの「一般」の「VPN」で「VPN構成を追加」をクリックし、「タイプ」を「IPSec」にします。
8e483930
この設定画面の①~⑤の内容をルータで設定すればいいわけですね。


■Ciscoルータのコマンド設定のキホン
ここから先はGUIではなくコンソールをつかいます。
ルータの「CONSOLE」ポートにシリアルケーブルを接続するか、Tera TermなどのターミナルソフトでTelnetで接続します。
1746

コンソールの場合はユーザモードのため(プロンプトが「>」マーク)、「enable」コマンドで特権モード(プロンプトが「#」)に移行します。Telnet接続の場合、最初から特権ユーザでログインしているのでenableは不要です。

特権モードで現在の設定を確認するときは
show running-config」(省略形「sh run」)

設定を保存するときは
write memory」(省略形「 wr mem 」)

そして設定モード(設定を入力できるモード)へは
configure terminal」(省略形「 conf t 」)
設定モードの終了は
end
で特権モードに戻ります。

設定モードで、入力した設定を削除する場合は、削除した行の頭に「no」をつけて再度入力すことで削除できます(項目によっては行の内容すべてを入力しない場合もあり)。
これらは入力途中(単語単位)で「」をいれてEnterすれば以降入力可能なパラメータを教えてくれます。

だいたいこれくらい知っていれば最低限、設定はできますね。
とりあえず「 conf  t 」で設定モードに移行し、リモート設定を登録します。


■MyDNS.jpを利用したDDNS設定
WAN側のIPアドレスが固定IPの場合は、上記「①サーバ」アドレスはそれを入力ればいいわけですが、動的IPの場合はアドレスが変動するため、DDNS(DynamicDNS)を登録します。
ここではMyDNS.jpサービス(無償)を利用した場合の設定例です。
あらかじめ「MyDNS.jp」でアカウント登録をして「Master ID」と「Password」、あと登録した「ホスト名(DNS名)」を確認・設定しておいてください(MyDNS.jpの設定方法は割愛します)。
ルータ側での設定内容は以下を参考にしてください。
ip ddns update method mydns
 HTTP
  add http://MasterID:Password@ipv4.mydns.jp/login.html
  remove http://MasterID:Password@ipv4.mydns.jp/login.html
 interval maximum 7 0 0 0

interface Dialer1 ← PPPoEの場合
 ip ddns update hostname 登録ホスト名.登録サブドメイン名.mydns.jp
 ip ddns update mydns

これで「登録ホスト名.登録サブドメイン名.mydns.jp」が「①サーバ」アドレスになります。


■Cisco VPN Client用のリモートアクセス設定
設定は以下を参考にして入力してください。
この設定例ではLAN側が「192.168.1.0/24」、PPPoEでのインターネット接続の場合です。
※追記: 
当初登録箇所のみを表記していましたが、新たに「クイックセットアップウィザード」で初期設定後にリモートアクセスVPN設定を追加した設定全体に記載内容を変更し、リモートアクセスVPN用の登録部分を太字表記にしました。


!
hostname cisco841mj ←(初期設定)ホスト名
!
boot-start-marker
boot-end-marker
!
logging buffered 51200 warnings
!
aaa new-model
!
aaa authentication login default local
aaa authorization network VPNCLIENT local
!
!
aaa session-id common
ethernet lmi ce
clock timezone GMT 9 0
!
省略
ローカル証明書など
!

!--DHCPサーバ設定---
ip dhcp excluded-address 192.168.1.1 192.168.1.100
ip dhcp excluded-address 192.168.1.150 192.168.1.254
!
ip dhcp pool ccp-pool
 import all
 network 192.168.1.0 255.255.255.0
 default-router 192.168.1.1
 dns-server 192.168.1.1
 lease 0 7
!--
!
!
!
ip domain name domain.local ←(初期設定)ドメイン名
ip cef
no ipv6 cef
!
!
flow record nbar-appmon
 match ipv4 source address
 match ipv4 destination address
 match application name
 collect interface output
 collect counter bytes
 collect counter packets
 collect timestamp absolute first
 collect timestamp absolute last
!
!
flow monitor application-mon
 cache timeout active 60
 record nbar-appmon
!
parameter-map type inspect global
 max-incomplete low 18000
 max-incomplete high 20000
 nbar-classify
!
multilink bundle-name authenticated
!
license udi pid C841M-4X-JSEC/K9 sn シリアルナンバー
!
!
object-group network local_lan_subnets
 192.168.1.0 255.255.255.0
!
username admin privilege 15 secret 5 **** ←(初期設定)ログインパスワード
username ④アカウント名 secret ⑤パスワード
!
redundancy
!
!
!
!
no cdp run
!
!
crypto ctcp port 10000 ← 「Cisco VPN Client」でTCP接続を可能にするオプション
!
crypto isakmp client configuration group remote1 ←「remote1」が②グループ名
 key ③シークレット
 pool POOL1
 acl 100
 save-password ←パスワード保存を許可
 netmask 255.255.255.0

crypto isakmp profile IKE-VPNCLIENT
   match identity group remote1
   client authentication list default
   isakmp authorization list VPNCLIENT
   client configuration address respond
   virtual-template 1
!
!
crypto ipsec transform-set ESP-3DES-SHA1 esp-3des esp-sha-hmac
 mode tunnel
!
crypto ipsec profile IPSEC-VPNCLIENT
 set transform-set ESP-3DES-SHA1
 set isakmp-profile IKE-VPNCLIENT
!
!
!
!
interface GigabitEthernet0/0
 no ip address
!
interface GigabitEthernet0/1
 no ip address
!
interface GigabitEthernet0/2
 no ip address
!
interface GigabitEthernet0/3
 no ip address
!
interface Dialer1
no shutdown
description PrimaryWANDesc__GigabitEthernet0/4
ip mtu 1452
ip nat outside
ip virtual-reassembly in
encapsulation ppp
dialer pool 1
dialer-group 1
ppp mtu adaptive
ppp ipcp dns request
dialer idle-timeout 120
dialer fast-idle 20
no ip address
ip address negotiated
ppp ipcp dns request
ppp authentication pap callin
ppp pap sent-username プロバイダ接続アカウント password 0 パスワード
exit
!
interface GigabitEthernet0/5
 no ip address
 shutdown
 duplex auto
 speed auto
!
interface Virtual-Template1 type tunnel
 ip unnumbered Dialer1 ←回線I/F名(この設定の場合「Dialer1」を指定)
 tunnel mode ipsec ipv4
 tunnel protection ipsec profile IPSEC-VPNCLIENT
!
interface Vlan1
 description $ETH_LAN$
 ip address 192.168.1.1 255.255.255.0
 ip nbar protocol-discovery
 ip flow monitor application-mon input
 ip flow ingress
 ip flow egress
 ip nat inside
 ip virtual-reassembly in
 ip tcp adjust-mss 1314 ← MSS値の設定(フレッツなどのPPPoE回線の場合)
 load-interval 30
!
ip local pool POOL1 192.168.1.241 192.168.1.249 ←割り当てアドレス範囲を指定
ip forward-protocol nd
ip http server
ip http authentication local
ip http secure-server
ip http timeout-policy idle 60 life 86400 requests 10000
!
!
ip dns server
ip nat inside source list nat-list interface GigabitEthernet0/4 overload
ip route 0.0.0.0 0.0.0.0 GigabitEthernet0/4
!
ip access-list extended nat-list
 permit ip object-group local_lan_subnets any
 deny   ip any any
!
!
access-list 100 permit ip 192.168.1.0 0.0.0.255 any  ←「192.168.1.0/24」へのみVPNを経由
!
!
control-plane
!
!
banner exec ^C
省略(接続時バナー)
^C
banner login ^C
省略(ログイン時バナー)
^C
!
line con 0
 no modem enable
line vty 0 4
 privilege level 15
 transport input telnet ssh
line vty 5 15
 access-class 23 in
 privilege level 15
 transport input telnet ssh
!
scheduler allocate 20000 1000
!
end
上記回線設定の中では回線の種類によってはMTU値に合わせて特にMSS値について設定が必要です。
こちらについての詳しくは「MTU/MSS値の計測とCiscoルータでのVPN設定についての備忘録」を参照ください。

あとは「write memory」で設定を保存し、上記で設定した内容を①~⑤の内容をiOSデバイスなどのクライアントに登録することでリモートアクセスが可能になります。

Cisco 841Mの設定自体は上記の通り、製品情報の設定ページに説明がありますが、他にも個々の機能については検索してもらうと結構いろいろドキュメントがあります。

またうまくいかなくなったら、設定を初期化してやり直すのが手っ取り早いでしょう。
その場合、一般的な「write erase」だけだとGUI環境の初期設定も消えるため(余計な初期設定はむしろ邪魔、というCiscoエンジニアも多いので^^)、環境を戻したい場合は、上記設定ページの「リカバリ&初期化ガイド」を参照してください。ここのスライドの12ページ辺りから初期設定に戻す方法を説明しています。