<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Routing &#38; Security</title>
	<atom:link href="http://www.routsec.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.routsec.com</link>
	<description>IT Infrastructure, Routing, Switching, and Security</description>
	<lastBuildDate>Fri, 09 Jul 2010 03:22:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Cut Through Authentication on the ASA</title>
		<link>http://www.routsec.com/?p=140</link>
		<comments>http://www.routsec.com/?p=140#comments</comments>
		<pubDate>Fri, 09 Jul 2010 02:39:52 +0000</pubDate>
		<dc:creator>ryanschuett</dc:creator>
				<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.routsec.com/?p=140</guid>
		<description><![CDATA[Cut-Through Authentication proxy on the ASA is an excellent way to track and authorize users when they access resources on the network that you may not want them to access to originally. I have used it to track user activities, authorize users to different network devices from time to time that they really should not [...]]]></description>
			<content:encoded><![CDATA[<p>Cut-Through Authentication proxy on the ASA is an excellent way to track and authorize users when they access resources on the network that you may not want them to access to originally. I have used it to track user activities, authorize users to different network devices from time to time that they really should not be accessing whenever they feel, and to provide a user a way to override the firewall policies that have been defined for a given subnet. In other words, it is a very useful function and I believe it’s function is vital for users as well as the network administrator. Just so you know, this feature is just like the Auth-Proxy or Network Admission technologies on an IOS router.</p>
<p>Here is the topology we will be working with.  I have setup a PC so we can simulate a typical user experience.</p>
<p>﻿﻿﻿﻿﻿﻿﻿﻿﻿﻿﻿<img src="http://www.routsec.com/Pictures/CTAP%20Diagram.jpg" alt="" width="600" height="175" /><span id="more-140"></span></p>
<p><span style="text-decoration: underline;">Guidelines</span></p>
<ul>
<li>Any user on the 192.0.2.0/24 subnet (Inside) will have to authenticate through to the ASA when accessing the IOS Firewall Router.</li>
<li>This user authentication through the ASA will be of the most secure form.</li>
<li>The ASA will use local authentication for the users for the time being</li>
</ul>
<p><span style="text-decoration: underline;">Setup Cut-Through Proxy</span></p>
<p>So the first step would be to define IP addressing and initialize interfaces as well as routing. The HTTP services have been enabled on the IOS router as well as local authentication/authorization of users to this service. We will focus our efforts on the ASA for our cut through authentication.</p>
<p>So step one is going to make sure we have connectivity to the devices first. So let us make sure we can ping 198.18.0.2 from our PC (PC is 192.0.2.100 in my environment)</p>
<div class='stb-grey_box' >C:\ &gt;ping 198.18.0.2<br />
Pinging 198.18.0.2 with 32 bytes of data:<br />
Request timed out.<br />
Request timed out.<br />
Request timed out.<br />
Request timed out.<br />
Ping statistics for 198.18.0.2:<br />
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),</div>
<p>Ok, already not a good start. From the ASA I can ping the PC as well as the IOS router. The default gateway of each of these devices points to the ASA. Hmmm. Don’t forget about icmp inspection or allowing icmp echo-replies back through the firewall on the outside interface. Here we will inspect icmp.</p>
<div class='stb-grey_box' >ciscoasa(config)# fixup protocol icmp<br />
INFO: converting &#8216;fixup protocol icmp &#8216; to MPF commands</div>
<p>Ok, now lets try our ping again</p>
<div class='stb-grey_box' >C:\ &gt;ping 198.18.0.2<br />
Pinging 198.18.0.2 with 32 bytes of data:<br />
Reply from 198.18.0.2: bytes=32 time&lt;1ms TTL=63<br />
Reply from 198.18.0.2: bytes=32 time&lt;1ms TTL=63<br />
Reply from 198.18.0.2: bytes=32 time&lt;1ms TTL=63<br />
Reply from 198.18.0.2: bytes=32 time&lt;1ms TTL=63<br />
Ping statistics for 198.18.0.2:<br />
Packets: Sent = 2, Received = 2, Lost = 0 (0% loss),<br />
oximate round trip times in milli-seconds:<br />
Minimum = 0ms, Maximum = 0ms, Average = 0ms</div>
<p>Ok, that looks better. The other test I like to do is access the http server on the IOS Router to make sure that we are able to get the default web page from the router so we know that this worked before we started our configuration. This will make it so there is one less thing to check if it doesn’t work. So let’s define an access-list to classify the interesting traffic for cut-through proxy:</p>
<div class='stb-grey_box' >ciscoasa(config)# access-list ctap permit ip any host 198.18.0.2</div>
<p>And let’s configure our local username and password as our guidelines say to use the local database:</p>
<div class='stb-grey_box' >ciscoasa(config)# username cisco password cisco</div>
<p>Now we will enable cut-through proxy with our interesting traffic and local database authentication :</p>
<div class='stb-grey_box' >ciscoasa(config)# aaa authentication match ctap inside LOCAL</div>
<p>So what should we see at this point is a web authentication box popup that is asking us for credentials. This is the cut through authentication service requesting user credentials before allowing the connection onto the IOS router. So we will enter our credentials of cisco/cisco. Then click on “OK” for the web authentication and we should be allowed to the IOS Router now.</p>
<p>Let’s verify the user on the ASA</p>
<div class='stb-grey_box' >ciscoasa(config)# sh uauth<br />
Current    Most Seen<br />
Authenticated Users       1          1<br />
Authen In Progress        1          1<br />
user &#8216;cisco&#8217; at 192.0.2.100, authenticated<br />
absolute   timeout: 0:05:00<br />
inactivity timeout: 0:00:00</div>
<p>With the ASA we have another option in which the user authentication experience occurs. Instead of the popup, we can have a webpage display the authentication prompt. It is a little more user friendly this way and is more like the auth-proxy http web page from an IOS router, only better. To do this we enter the following command.</p>
<div class='stb-grey_box' >ciscoasa(config)# aaa authentication listener http inside redirect</div>
<p>Using the above option, we could also redirect the authentication to another port if needed using the argument “port ‘#’” in the command shown above.</p>
<p>So in our guidelines we actually wanted the most secure mode of communications. Well, using http in this fashion  is not secure at all. So we will want to change our configuration so that we request the user credentials using https.</p>
<p>To do this, we will install 2 commands.</p>
<div class='stb-grey_box' >ciscoasa(config)# aaa authentication listener https inside redirect<br />
ciscoasa(config)# aaa authentication secure-http-client</div>
<p>Now depending on how the ASA is configured for PKI support, you will either come to a page with a certificate warning or you will go right the authentication page. This is now a secure login screen for the user.</p>
<p>This concludes our quick introduction into Cut-Through Authentication on the ASA. There are several more features than can become involved such as including an ACS server for authentication/authorization, virtual telnet/http, and even downloadable access-lists that can override an interface access-list. Join me in feature posts where we will discuss these enhancements. I hope this is useful to you and thank you for visiting this post.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.routsec.com/?feed=rss2&amp;p=140</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Interview with Vybhav Ramachandran (aka TacAck)</title>
		<link>http://www.routsec.com/?p=112</link>
		<comments>http://www.routsec.com/?p=112#comments</comments>
		<pubDate>Wed, 07 Jul 2010 02:49:58 +0000</pubDate>
		<dc:creator>ryanschuett</dc:creator>
				<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.routsec.com/?p=112</guid>
		<description><![CDATA[Well, I felt like my good friend Vybhav needed to have an interview done after interviewing a bunch of people including myself the past few months. He is a great study partner and I converse with him on a regular basis &#8211; almost daily in fact. I am not sure where he gets the time [...]]]></description>
			<content:encoded><![CDATA[<p>Well, I felt like my good friend Vybhav needed to have an interview done after interviewing a bunch of people including myself the past few months. He is a great study partner and I converse with him on a regular basis &#8211; almost daily in fact. I am not sure where he gets the time to do everything he does (blog, lab, study, play flight simulators) but he must have a great girlfriend. Vybhav and I are taking our labs on the same day and I know he will ace it first attempt. As I am sure all of you know, he has a great blog site @ <a href="http://tacack.com" target="_blank">tacack.com</a> where he has a wealth of information in regards to the CCIE Security exam. So without further adieu, please read on to find out things you may not have known about our good friend!</p>
<p style="text-align: center;"><img class="aligncenter" src="http://www.routsec.com/wp-content/uploads/2010/07/Vybhav1-150x150.jpg" alt="" /></p>
<p><span id="more-112"></span></p>
<p><span style="color: #800080;"><strong>Ryan :</strong></span><span style="color: #800080;"><strong> </strong></span><strong>Welcome Vybhav, great to have you here, how are you today</strong></p>
<blockquote><p>I&#8217;m doing great , my friend! I hope you&#8217;re doing well too!</p></blockquote>
<p><span style="color: #800080;"><strong>Ryan :</strong></span><strong> Can you please tell us where you are from?</strong></p>
<blockquote><p>I&#8217;m from Bangalore, India. It&#8217;s a gorgeous city, with a great weather and real simple and peaceful crowd!</p></blockquote>
<p><strong><span style="color: #800080;">Ryan : </span>What do you do in your current career?</strong></p>
<blockquote><p>I code in ADA for a living . I know. It sucks. ADA is not in much use these days except in space/defence. The company I work for deals with marine applications.</p></blockquote>
<p><strong><span style="color: #800080;">Ryan : </span>Well, I hope you company  doesn&#8217;t follow my blog! What first sparked your interest in networking, especially the security field?</strong></p>
<blockquote><p>It started in the 12th grade when I wondered  &#8220;How does the internet work?!&#8221;. That was what sparked my interest in networking. I did a lot of self-study and slowly started figuring out stuff like what TCP/IP meant, how is a router different from a switch , etc. I was slowly gaining interest in this vast and AWESOME field of networks. Then something happened. I ran into www.packetlife.net! <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  I was just fascinated by the world of cisco routers, switches and firewalls and I just wanted to know it all. Plus, I&#8217;ve always been in network security and someday I wanted to setup secure networks on my own. Hence the pursuit of the elusive CCIE-sec!</p></blockquote>
<p><strong><span style="color: #800080;">Ryan :</span> Interesting! When and where did you first start dealing with Cisco equipment and technologies?</strong></p>
<blockquote><p>Where?  At home , when I discovered GNS3! When? During my 1st year of B.E ( Equivalent to B.S ). I had attempted by CCNA once by then( and failed miserably ) and i started practicing on GNS3. I took another shot at CCNA soon and I failed again ( by a couple of points ). After a lot of practice, I cleared the CCNA on my third attempt <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . I&#8217;m happy I failed twice because, when i cleared it in my 3rd attempt, I knew I deserved it .</p></blockquote>
<p><span style="color: #800080;"><strong>Ryan : </strong><span style="color: #000000;"><strong>Good for you for not giving up! </strong></span></span><strong>Why are you pursueing the CCIE Security designation?</strong></p>
<blockquote><p>3 reasons. Firstly, Network security is just so fascinating and interesting! And CCIE Security is one of the best (if not the best) network security certifications in the market. Secondly, the Recognition. To be honest , I&#8217;ve never been really good at anything, so it was a challenge for me to master a topic and not be a hack of all trades ( get the geek pun? <img src='http://www.routsec.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  ) . Thirdly, the money. Lots of it! <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p></blockquote>
<p><strong><span style="color: #800080;">Ryan :</span> Haha, money is always nice. What study materials do you currently own?</strong></p>
<blockquote><p>I own the following material<br />
INE<br />
Vol 1 WB and solutions<br />
Vol 2 WB and solutions<br />
Bootcamp VoD<br />
OEQ sim<br />
IPX<br />
Vol 1 WB and DSG<br />
Vol 2 WB and DSG<br />
Video walkthrough of Vol 1 and Vol 2 labs<br />
OEQ sim<br />
Yusuf&#8217;s labs<br />
Cisco OEQ sim</p>
<p>Hopefully with all of this material, I&#8217;ll clear the CCIE someday . If not, I&#8217;m starting an Indian fast-food chain in Canada <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p></blockquote>
<p><strong><span style="color: #800080;">Ryan :</span> Wow, you have all the materials! What does you daily study schedule consist of?</strong></p>
<blockquote><p>During the weekdays I work from 8:00 AM to 4:00 PM. I&#8217;m lucky my office has flexible timings so I take advantage of that. After 4.. I go get something to eat and drink( espresso ) and I sit down to study in my office till about 9 or 10. Of course , I take innumerable breaks/surf the web/ watch my favourite bands on youtube /talk on the phone during this time. If I&#8217;m doing Vol 1 labs, I schedule an INE rack-rental which is from 3:30 PM to 9:00 PM IST. If i have an IPX lab, I go home and the lab starts at 6:00 PM and goes into the wee hours of the morning. Also, I spend a lot of time flipping through the Doc-CD because I have a bad memory and it takes me many many many readings of the same topic to remember all the important stuff <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . Also every Thursday, I take a break . I don&#8217;t study at all. It&#8217;s my way of relaxing and trust me a mid-week break does wonders! You guys should try it once!</p></blockquote>
<p><strong><span style="color: #800080;">Ryan :</span> Thanks for the advice! Does your study schedule change on the weekends.</strong></p>
<blockquote><p>Yeah. Contrary to others, I take it relatively easy on weekends. I work on one day , like labs , doc-cd , gns3 ,etc . the other day, I just relax . I don&#8217;t do anything <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p></blockquote>
<p><strong><span style="color: #800080;">Ryan : </span>What are your strong points on the CCIE Security Blueprint?</strong></p>
<blockquote><p>I would like to think VPNs are my favourite ( I don&#8217;t know if i&#8217;m strong at it ) topic and I try and work hard at it. I still miss a lot of stuff but I&#8217;m slowly&#8230;slowly getting better at it.</p></blockquote>
<p><strong><span style="color: #800080;">Ryan :</span> What are your weak ones?</strong></p>
<blockquote><p>This is easy. It&#8217;s ID MGMT. I get nightmares about NAC and the ACS in general <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p></blockquote>
<p><strong><span style="color: #800080;">Ryan :</span> How do you find so much time to study, blog, create youtube videos, tweet, and keep up with your personal life?</strong></p>
<blockquote><p>I have a very understanding girlfriend <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Plus , I have almost no social life which gives me a lot of time for other stuff ! Although that would sound like a bad thing, i&#8217;m happy! Because for the first time in my life, I&#8217;m focussed and working towards a goal, which i might not get in the first try, but I&#8217;ll keep trying nonetheless.</p></blockquote>
<p><strong><span style="color: #800080;">Ryan :</span> Do you have any role-models?</strong></p>
<blockquote><p>I have many and here&#8217;s what I like/would like to learn from these people <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>Jeremy Stretch</strong> -&gt; Absolute confidence in his knowledge, which I totally respect and admire.<br />
<strong> Paul Stewart</strong> -&gt; Totally down to earth, helpful guy. One of the smartest dudes I&#8217;ve interacted with and a great CCIE.<br />
<strong> You ( Ryan Schuett ) </strong>-&gt; Humble and Knowledgeable. The ability to jump into your basement and lab for hours after a hard-days work, is something I admire and try and emulate all the time. Thanks buddy! <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
<strong> Tolulope</strong> -&gt; Absolutely no attitude , whatsoever. This dude is a double CCIE at 21. Probably the youngest in the world! And yet he&#8217;s so humble and willing to learn something everyday. I&#8217;ve tons of respect for him.<br />
<strong> Neetha ( the girlfriend )</strong> -&gt; An awesome girl , who&#8217;s taught me patience and listens to me , everytime Iwhine about why i&#8217;m too dumb to be a CCIE <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p></blockquote>
<p><strong><span style="color: #800080;">Ryan :</span> Well thank you Vybhav<span style="color: #000000;">. </span>Where do you plan to see yourself in 3 years?</strong></p>
<blockquote><p>Hopefully with a CCIE-security certification and pursuing the CCIE-wireless cert. I also am interested in vendor neutral wireless certs (CWNE) and I hope to be one someday <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p></blockquote>
<p><strong><span style="color: #800080;">Ryan :</span> <span style="color: #000000;">I am sure you will have those in the next year! With that in mind, do you have 5 tips for a CCIE security candidate?</span></strong></p>
<blockquote>
<div id="_mcePaste">1) Lab everything</div>
<div id="_mcePaste">2) Find a study partner , keeps you motivated</div>
<div id="_mcePaste">3) If you don&#8217;t have an excellent memory, make up for it by revising the same topic many times</div>
<div id="_mcePaste">4) Plan ahead. Always think of what you&#8217;re going to achieve in the next week or atleast the day</div>
<div id="_mcePaste">5) When you&#8217;re tired and want to quit, think about attending cisco live someday</div>
<div id="_mcePaste">and keep studying</div>
</blockquote>
<p><strong><span style="color: #000000;">Ryan : </span>How do you plan to celebrate once you have your number?</strong></p>
<blockquote><p>Hit the gym <img src='http://www.routsec.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Meet friends! Go on vacations&#8230;. and most importantly , study more.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.routsec.com/?feed=rss2&amp;p=112</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How To Pick 1 VPN Peer Out Of Many For Troubleshooting</title>
		<link>http://www.routsec.com/?p=96</link>
		<comments>http://www.routsec.com/?p=96#comments</comments>
		<pubDate>Thu, 24 Jun 2010 13:20:58 +0000</pubDate>
		<dc:creator>ryanschuett</dc:creator>
				<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.routsec.com/?p=96</guid>
		<description><![CDATA[I manage several Cisco IOS devices with alot of VPN connections on them, one device has 100+. So what happens when 1 of the 100 peers is failing to establish. Well, I can tell you, whatever you do, don&#8217;t do a debug crypto isakmp or ipsec without any conditions&#8230; you will definately give a big tug [...]]]></description>
			<content:encoded><![CDATA[<p>I manage several Cisco IOS devices with alot of VPN connections on them, one device has 100+. So what happens when 1 of the 100 peers is failing to establish. Well, I can tell you, whatever you do, don&#8217;t do a <em><strong>debug crypto isakmp</strong></em> or <em><strong>ipsec </strong><span style="font-style: normal;">without any conditions</span></em>&#8230; you will definately give a big tug to the CPU on the device. This tug could be to the point that you can&#8217;t recover by issueing <em><strong>u all </strong><span style="font-style: normal;">command.</span></em> So to this end, a router reload would probably be the only option left which would probably trigger resume updating.</p>
<p>So how do you go about picking the needle out of the haystack? Well, Cisco has given us an excellent tool to solve this issue with VPN conditional debugging. With conditional filtering for VPN&#8217;s, we can filter based on several different attributes such as peer, getvpn group, username, spi, or connid to name a few. This has definately helped me out in a pinch and I am now in the habit of using this instead of just debugging everything crypto within the IOS device.</p>
<p>So how do we implement this great feature you may ask. Well, quite easily, but then again everything is easy once you know what you are doing. So let&#8217;s head over to command line and take a look&#8230;<span id="more-96"></span></p>
<div class='stb-grey_box' style="color:#000000; "></p>
<p>router#debug crypto condition ?<br />
connid                IKE/IPsec connection-id filter<br />
fvrf                       Front-door VRF filter<br />
gdoi-group       GDOI Group Name filter<br />
isakmp                Isakmp profile filter<br />
ivrf                       Inside VRF filter<br />
local                    IKE local address filter<br />
peer                     IKE peer filter<br />
reset                    Delete all debug filters and turn off conditional debug<br />
spi                         SPI (Security Policy Index) filter<br />
unmatched        Output debugs even if no context available<br />
username           Xauth or Pki-aaa username filter</p>
<p></div>
<p>So here is a list in which we can choose or option(s) and get our network straightened out quick and painlessly. So let&#8217;s do a basic peer filter. Take a look at peer &#8211; there are several more options we can narrow it down to. Isn&#8217;t this fantastic!</p>
<div class='stb-grey_box' >router#debug crypto condition peer ?<br />
group                IKE peer&#8217;s Unity group name filter<br />
hostname        IKE peer FQDN hostname filter<br />
ipv4                   IKE peer IP address filter<br />
subnet              Range of IKE peer IP address<br />
username        IKE peer FQDN username filter<br />
</div>
<p>Ok, so let&#8217;s go by our IPV4 address. We will want to debug a peer coming in from an IP address of 192.0.2.1. Let&#8217;s get this into the router.</p>
<div class='stb-grey_box' >router#debug crypto condition peer ipv4 192.0.2.1</div>
<p>And we will confirm that this is enabled.</p>
<div id="_mcePaste">
<div class='stb-grey_box' ></p>
<div id="_mcePaste">router#sh crypto debug peer</div>
<div id="_mcePaste">Crypto conditional debug currently is turned ON</div>
<div id="_mcePaste">IKE peer IP address filters:</div>
<div id="_mcePaste">192.0.2.1</div>
<p></div>
</div>
<p>Now, all that is left is to enable our regular crypto debugging utilities.</p>
<div class='stb-grey_box' >router#debug crypto isakmp<br />
Crypto ISAKMP debugging is on<br />
router#debug crypto ipsec<br />
Crypto IPSEC debugging is on<br />
router#debug crypto engine<br />
Crypto Engine debugging is on</div>
<p>Well, I hope that you found this useful. Of course this is only one example of filtering so I leave it up to you to experiment with the others. I know it has sure improved my troubleshooting skills when looking at information I only want to look at.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.routsec.com/?feed=rss2&amp;p=96</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>ASA &#8211; Regular Expression Matching</title>
		<link>http://www.routsec.com/?p=88</link>
		<comments>http://www.routsec.com/?p=88#comments</comments>
		<pubDate>Thu, 24 Jun 2010 03:31:26 +0000</pubDate>
		<dc:creator>ryanschuett</dc:creator>
				<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.routsec.com/?p=88</guid>
		<description><![CDATA[Regular expression matching is used for several different applications within the Modular Policy Framework (MPF). Regular expressions is basically text matching, either exact text or multiple variants of a text string. In most cases, whenever you run across named-based policies, you will more than likely need to configure regular expressions. The command &#8220;regex&#8221; is used to [...]]]></description>
			<content:encoded><![CDATA[<p>Regular expression matching is used for several different applications within the Modular Policy Framework (MPF). Regular expressions is basically text matching, either exact text or multiple variants of a text string. In most cases, whenever you run across named-based policies, you will more than likely need to configure regular expressions. The command &#8220;regex&#8221; is used to configure regular expressions within the security appliance. We will discuss some of the special characters called <em>metacharacters</em> used to create wildcard matching of text strings below. This is the majority of the metacharacters we will be dealing with.<img title="More..." src="http://www.routsec.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" /><span id="more-88"></span></p>
<table style="height: 765px;" border="1" cellspacing="0" cellpadding="0" width="712">
<tbody>
<tr>
<td valign="bottom"><strong>Character</strong></td>
<td valign="bottom"><strong>Description</strong></td>
<td valign="bottom"><strong>Notes</strong></td>
</tr>
<tr>
<td valign="top">^<strong> </strong></td>
<td valign="top">Caret</td>
<td valign="top">^block – “^” means the start of a string. So this pattern matches any string that starts with “block”. Eg: blocktraffic</td>
</tr>
<tr>
<td valign="top"><strong>|</strong></td>
<td valign="top">Alternation</td>
<td valign="top">This will match either string that it separates &#8211; eg: traffic|block &#8211; this will match both traffic and block.</td>
</tr>
<tr>
<td valign="top">*</td>
<td valign="top">Asterisk</td>
<td valign="top">This will match any number of the previous character including 0. eg: trafficblo*ck &#8211; this will match trafficblck, trafficblock, trafficbloock, trafficblooock, etc.</td>
</tr>
<tr>
<td valign="top">?<strong> </strong></td>
<td valign="top">Question Mark</td>
<td valign="top">This will match 0 or 1 of the previous character in an expression. eg: trafficblo?ck will match both trafficblock or trafficblck.</td>
</tr>
<tr>
<td valign="top"><strong>+</strong></td>
<td valign="top">Plus</td>
<td valign="top">Almost exactly the same as the Asterisk, except that the previous character will not match 0 &#8211; so one or more. eg: trafficblo+ck &#8211; this will match trafficblock, trafficbloock, trafficblooock, etc.</td>
</tr>
<tr>
<td valign="top">{x} or {x,}</td>
<td valign="top">Repeat Quantifier and Minimum Repeat Quantifier</td>
<td valign="top">For {x}, this will repeat exactly x times. eg: trafficblo{5}ck &#8211; this will match trafficblooooockFor {x,}, this will repeat at least x times. eg: trafficblo{5,}ck &#8211; this will match trafficblock, trafficbloock, trafficblooock, trafficbloooock, and trafficblooooock.</td>
</tr>
<tr>
<td valign="top">[a-d]</td>
<td valign="top">Character Range Class</td>
<td valign="top">This will match any character in the range. eg: [a-d] &#8211; this will match the lower case letters a, b, c, d. [A-DR-Z] &#8211; This will match upper case letters A,B,C,D,R,S,T,U,V,W,X,Y,Z.</td>
</tr>
<tr>
<td valign="top">[<strong>^</strong>abc]</td>
<td valign="top">Negated character class</td>
<td valign="top">Matches a single character that is not contained within the brackets. For example,<strong> [^abc]</strong> matches any character other than a, b, or c. <strong>[^A-Z] </strong>matches any single character that is not an uppercase letter.</td>
</tr>
<tr>
<td valign="top">[abc]</td>
<td valign="top">Character Class</td>
<td valign="top">Matches any character in the range. <strong>[a-z]</strong> matches any lowercase letter. You can mix characters and ranges: <strong>[abcq-z]</strong> matches a, b, c, q, r, s, t, u, v, w, x, y, z, and so does [<strong>a-cq-z]</strong>.The dash (-) character is literal only if it is the last or the first character within the brackets:<strong> [abc-]</strong> or <strong>[-abc]</strong>.</td>
</tr>
<tr>
<td valign="top"><strong>. </strong></td>
<td valign="top">Dot</td>
<td valign="top">This is probably the most dangerous wildcard since it matches anything. This can be 1, T , even a space. If you put in h..se it can match horse, house, he se, h1!se, etc.</td>
</tr>
<tr>
<td valign="top">(exp)</td>
<td valign="top">Subexpression</td>
<td valign="top">This metacharacter will use the characters being surrounded by these parenthesis. Eg – h(ou|or)se will match house or horse.</td>
</tr>
<tr>
<td valign="top"><strong>\</strong></td>
<td valign="top">Escape character</td>
<td valign="top">This is used to escape out any metacharacters so they can be matched in the regex as if it were a string – eg: say we wanted to use a parenthesis in our regex, we would need to use \( .</td>
</tr>
<tr>
<td valign="top"><em>char</em></td>
<td valign="top">Character</td>
<td valign="top">Any character that does not a metacharacter would be a char. Eg, “word” is a char</td>
</tr>
<tr>
<td valign="top"><strong>&#8220;&#8221;</strong></td>
<td valign="top">Quotation marks</td>
<td valign="top">This will keep any leading or trailing spaces with the character being matched. Eg – “ house “ will keep the leading space as well as the trailing space for matching.</td>
</tr>
</tbody>
</table>
<p> Just a side note, you can use different metacharacters together for matching as well. Some matching patterns maybe simple but others you can make more complex. If you wanted to match file names that start with &#8220;sdm&#8221;, you can use &#8220;^sdm.*&#8221; for a little more complex matching as this will match any word starting with sdm has any character after it at any given length.</p>
<p>So, for an example, we have the following scenario. We would like to prevent users from downloading files from our ftp site that  starts with any number and ends in either a .bin or exe. We would have to setup a regex and apply it into MPF. Let&#8217;s look at our commands to accomplish this.</p>
<div class='stb-grey_box' style="color:#000000; "><br />
regex regex_ftp &#8220;^[0-9].*.[bin|exe]&#8221;</p>
<p>class-map type regex match-any cmap_files_nodownload<br />
match regex regex_ftp</p>
<p>class-map cmap_ftp_traffic<br />
match port tcp eq 21</p>
<p>policy-map type-inspect ftp pmap_inspect_ftp<br />
match filename regex class cmap_files_nodownload<br />
reset</p>
<p>policy-map global_policy<br />
class cmap_ftp_traffic<br />
inspect ftp strict pmap_inspect_ftp<br />
</div>
<p>One last note in regards to regular expression matching. We need to be able to find this on the doc-cd quickly as possible. If we goto the doc-cd (<a href="http://www.cisco.com/cisco/web/psa/configure.html">http://www.cisco.com/cisco/web/psa/configure.html</a>), we can find several instances of this wildcard matching. A few ways are shown below:</p>
<p>1)  Click on Products &#8211;&gt; Security &#8211;&gt;Firewall &#8211;&gt; Firewall Appliances &#8211;&gt;Cisco ASA 5500 series adaptive security appliance &#8211;&gt;Reference Guides (on the left had side of sub links) &#8211;&gt; Cisco ASA 5500 Series Command Reference, 8.2 &#8211;&gt; look up the regex command with the command reference and you will see the table there. </p>
<p>2)  Click on Products &#8211;&gt; Security &#8211;&gt;Firewall &#8211;&gt; Firewall Appliances &#8211;&gt;Cisco ASA 5500 series adaptive security appliance &#8211;&gt; Configuration Guides and TechNotes amd selecting this link &#8211;&gt; ASA/PIX 8.x: Block Certain Websites (URLs) Using Regular Expressions With MPF Configuration Example</p>
<p>I hope this entry has been helpful for you and look forward to future entries in regards to the powerful MPF and its configuration. I will be coming up with future scenarios in regards to matching so stay tuned.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.routsec.com/?feed=rss2&amp;p=88</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IOS Access-List Functionality &amp; Management</title>
		<link>http://www.routsec.com/?p=85</link>
		<comments>http://www.routsec.com/?p=85#comments</comments>
		<pubDate>Thu, 24 Jun 2010 02:55:16 +0000</pubDate>
		<dc:creator>ryanschuett</dc:creator>
				<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.routsec.com/?p=85</guid>
		<description><![CDATA[Well, it appears that Cisco IOS is slowly gaining features that I love on the ASA. Although I find the ASA is far superior when it comes to access-list technology, Cisco IOS is starting to make life easier in terms of updating and managing access-lists. One issue I always ran into when working with IOS ACL&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Well, it appears that Cisco IOS is slowly gaining features that I love on the ASA. Although I find the ASA is far superior when it comes to access-list technology, Cisco IOS is starting to make life easier in terms of updating and managing access-lists. One issue I always ran into when working with IOS ACL&#8217;s is the addition or deletion of the entries that made up the ACL. So a basic extended access-list would start like this:</p>
<p><img title="More..." src="http://www.routsec.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" /><span id="more-85"></span></p>
<div class='stb-grey_box' style="color:#000000; ">R1(config)#ip access-list extend acl_resequenced<br />
R1(config-ext-nacl)#permit ip host 10.1.1.1 host 10.1.2.1<br />
R1(config-ext-nacl)#permit ip host 10.1.1.1 host 5.5.5.5<br />
R1(config-ext-nacl)#permit tcp 10.1.1.0 0.0.0.255 10.1.2.0 0.0.0.255</div>
<p>Now, lets show the access-list which should reveal our line numbers.</p>
<div class='stb-grey_box' style="color:#000000; ">R1(config-ext-nacl)#do sh ip access-list acl_resequenced<br />
Extended IP access list acl_resequenced<br />
    10 permit ip host 10.1.1.1 host 10.1.2.1<br />
    20 permit ip host 10.1.1.1 host 5.5.5.5<br />
    30 permit tcp 10.1.1.0 0.0.0.255 10.1.2.0 0.0.0.255</div>
<p>Ok, so now we have been asked to deny some things and these entries must be between previous entered entries. On the ASA, it is no problem; we specify our new entry with a line number and can add or remove entries this way. No problem. Well, we can do this on IOS as well as this feature has been around for a while. So, let&#8217;s add some entries:</p>
<div class='stb-grey_box' style="color:#000000; ">R1(config-ext-nacl)#15 deny udp host 10.1.1.1 host 5.5.5.5 eq ntp<br />
R1(config-ext-nacl)#17 deny icmp host 10.1.1.1 host 5.5.5.5<br />
R1(config-ext-nacl)#22 deny tcp host 10.1.1.2 host 10.1.2.3 eq 80<br />
R1(config-ext-nacl)#23 deny tcp host 10.1.1.2 host 10.1.2.4 eq 80</div>
<p>And lets view our new ACL again:</p>
<div class='stb-grey_box' style="color:#000000; ">R1(config-ext-nacl)#do sh ip access-list acl_resequenced<br />
Extended IP access list acl_resequenced<br />
    10 permit ip host 10.1.1.1 host 10.1.2.1<br />
    15 deny udp host 10.1.1.1 host 5.5.5.5 eq ntp<br />
    17 deny icmp host 10.1.1.1 host 5.5.5.5<br />
    20 permit ip host 10.1.1.1 host 5.5.5.5<br />
    22 deny tcp host 10.1.1.2 host 10.1.2.3 eq www<br />
    23 deny tcp host 10.1.1.2 host 10.1.2.4 eq www<br />
    30 permit tcp 10.1.1.0 0.0.0.255 10.1.2.0 0.0.0.255</div>
<p>So, the issue I have had is running out of lines between the default line numbers (multiples of 10) in the acl. What happens if we need 9 more lines between entries 10 and 20. Well, we wouldn&#8217;t be able to do this because we would be out of line numbers. Now this is an issue since we don&#8217;t want to take the ACL off the interface and install the new ACL since downtime will occur and security vulnerabilities may surface during that window, not to mention other issues.</p>
<p>Well, Cisco has given us a command called resequence. By implementing this, our line numbers can be resequenced and changed so we can add more entries if needed. The command syntax is shown below. There are two arguements that we can enter with this command. The first is &#8220;starting sequence number&#8221; and the second is &#8220;step to increment sequence number&#8221;. The first arguement determines where in the access-list we want to start the resequence. Most times a number of 1o will be used since this is our first line. The second number is the incremental value that is to be applied to the first line number in the list, resulting in new line numbers for the entry.</p>
<div class='stb-grey_box' style="color:#000000; ">R1(config)#ip access-list resequence acl_resequenced 10 20</div>
<p>So the above line is going to resort our access-list acl_resequenced starting at line 10 and will increment the line numbers by 20. Let&#8217;s verify the result</p>
<div class='stb-grey_box' style="color:#000000; ">R1(config)#do sh ip access-list acl_resequenced<br />
Extended IP access list acl_resequenced<br />
    10 permit ip host 10.1.1.1 host 10.1.2.1<br />
    30 deny udp host 10.1.1.1 host 5.5.5.5 eq ntp<br />
    50 deny icmp host 10.1.1.1 host 5.5.5.5<br />
    70 permit ip host 10.1.1.1 host 5.5.5.5<br />
    90 deny tcp host 10.1.1.2 host 10.1.2.3 eq www<br />
    110 deny tcp host 10.1.1.2 host 10.1.2.4 eq www<br />
    130 permit tcp 10.1.1.0 0.0.0.255 10.1.2.0 0.0.0.255</div>
<p>Well, that will work and will solve our issue for needing more than the 9 extra entries we needed between lines 10 and 20 earlier.</p>
<p>So now if only we could implement the addition of remark statements to the extended access-list using line numbers. Unfortunately, the functionality of IOS access-lists has been improved with the use of the resequence sub-command but making our own remarks for managment (ease of use) is still lacking. We can insert remarks, but they will always drop down to the bottom the acl. Look below:</p>
<div class='stb-grey_box' style="color:#000000; ">R1(config-ext-nacl)#remark Remark Functionality in Access-Lists Need Work<br />
R1(config-ext-nacl)#10 ?<br />
  deny      Specify packets to reject<br />
  dynamic   Specify a DYNAMIC list of PERMITs or DENYs<br />
  evaluate  Evaluate an access list<br />
  exit      Exit from access-list configuration mode<br />
  permit    Specify packets to forward</div>
<p>And if we show our access-list extend, we don&#8217;t even see the remark statement:</p>
<div class='stb-grey_box' style="color:#000000; ">R1(config-ext-nacl)#do sh ip access-list acl_resequenced<br />
Extended IP access list acl_resequenced<br />
    10 permit ip host 10.1.1.1 host 10.1.2.1<br />
    30 deny udp host 10.1.1.1 host 5.5.5.5 eq ntp<br />
    50 deny icmp host 10.1.1.1 host 5.5.5.5<br />
    70 permit ip host 10.1.1.1 host 5.5.5.5<br />
    90 deny tcp host 10.1.1.2 host 10.1.2.3 eq www<br />
    110 deny tcp host 10.1.1.2 host 10.1.2.4 eq www<br />
    130 permit tcp 10.1.1.0 0.0.0.255 10.1.2.0 0.0.0.255</div>
<p>However, it does sh up in our run command:</p>
<div class='stb-grey_box' style="color:#000000; ">R1(config-ext-nacl)#do sh run | beg access-list<br />
ip access-list extended acl_resequenced<br />
 permit ip host 10.1.1.1 host 10.1.2.1<br />
 deny   udp host 10.1.1.1 host 5.5.5.5 eq ntp<br />
 deny   icmp host 10.1.1.1 host 5.5.5.5<br />
 permit ip host 10.1.1.1 host 5.5.5.5<br />
 deny   tcp host 10.1.1.2 host 10.1.2.3 eq www<br />
 deny   tcp host 10.1.1.2 host 10.1.2.4 eq www<br />
 permit tcp 10.1.1.0 0.0.0.255 10.1.2.0 0.0.0.255<br />
 remark Remark Functionality in Access-Lists Need Work</div>
<p>So the access-list subcommand &#8220;resequence&#8221; can help us if we need to keep our access-list functional and organized better if many changes are needed in IOS. The ASA on the otherhand, is much more powerful and easier to use. I prefer the ASA in this regard.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.routsec.com/?feed=rss2&amp;p=85</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SVTI, DVTI, SSL VPN, and L2TP over IPSec On 1 Cisco Router</title>
		<link>http://www.routsec.com/?p=82</link>
		<comments>http://www.routsec.com/?p=82#comments</comments>
		<pubDate>Thu, 24 Jun 2010 02:47:22 +0000</pubDate>
		<dc:creator>ryanschuett</dc:creator>
				<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.routsec.com/?p=82</guid>
		<description><![CDATA[As per PacketU&#8217;s inquiry, static and dynamic VTI, L2TP over IPSec, and SSL VPN configurations work successfully within one router. I had one notebook running 3 different VPN clients at once; Cisco Anyconnect v2.4, Cisco VPN client v5, and Microsoft built-in client. It is interesting to note that with all 3 connected, the connection order in which [...]]]></description>
			<content:encoded><![CDATA[<p>As per PacketU&#8217;s inquiry, static and dynamic VTI, L2TP over IPSec, and SSL VPN configurations work successfully within one router. I had one notebook running 3 different VPN clients at once; Cisco Anyconnect v2.4, Cisco VPN client v5, and Microsoft built-in client. It is interesting to note that with all 3 connected, the connection order in which traffic was encrypted was the Cisco VPN Client first, AnyConnect second, and  Microsoft client third.<span id="more-82"></span></p>
<p>The topology consists of 1 &#8211; 1811 router (flash:c181x-adventerprisek9-mz.150-1.M.bin) and 1 &#8211; 881 router (flash:c880data-universalk9-mz.150-1.M1.bin) as well as a notebook running XP SP3. The 1811 is named R1-headoffice and is basically the &#8220;server&#8221; for the VPN clients. The 881 router is named R2-branch and is the peer for the static VTI. They are all connected together on a network of 136.1.0.0/24.<img title="More..." src="http://www.routsec.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" /></p>
<p>______________________________________________________</p>
<p><strong>Final Configuration for 1811 &#8211; R1-headoffice</strong></p>
<p>R1-headoffice#sh run<br />
Building configuration&#8230;</p>
<p>Current configuration : 6497 bytes<br />
!<br />
! Last configuration change at 20:29:34 UTC Tue Jan 5 2010<br />
!<br />
version 15.0<br />
service timestamps debug datetime msec<br />
service timestamps log datetime msec<br />
no service password-encryption<br />
!<br />
hostname R1-headoffice<br />
!<br />
boot-start-marker<br />
boot-end-marker<br />
!<br />
enable secret 5 $1$0GNS$Y9ewwhbVl76Qdp8WylEyw.<br />
!<br />
aaa new-model<br />
!<br />
!<br />
aaa authentication login aaa_vty_authen local<br />
aaa authentication login aaa_con0_authen none<br />
aaa authentication login aaa_ezvpn_authen local<br />
aaa authentication login aaa_sslvpn_authen local<br />
aaa authentication ppp default local<br />
aaa authorization console<br />
aaa authorization exec aaa_vty_author local<br />
aaa authorization network aaa_ezvpn_author local<br />
!<br />
!<br />
!<br />
!<br />
!<br />
aaa session-id common<br />
!<br />
!<br />
!<br />
!<br />
crypto pki trustpoint TP-self-signed-3691727871<br />
 enrollment selfsigned<br />
 subject-name cn=IOS-Self-Signed-Certificate-3691727871<br />
 revocation-check none<br />
 rsakeypair TP-self-signed-3691727871<br />
!<br />
!<br />
crypto pki certificate chain TP-self-signed-3691727871<br />
 certificate self-signed 01<br />
  30820245 308201AE A0030201 02020101 300D0609 2A864886 F70D0101 04050030<br />
  31312F30 2D060355 04031326 494F532D 53656C66 2D536967 6E65642D 43657274<br />
  69666963 6174652D 33363931 37323738 3731301E 170D3130 30313035 31393536<br />
  32355A17 0D323030 31303130 30303030 305A3031 312F302D 06035504 03132649<br />
  4F532D53 656C662D 5369676E 65642D43 65727469 66696361 74652D33 36393137<br />
  32373837 3130819F 300D0609 2A864886 F70D0101 01050003 818D0030 81890281<br />
  8100CB26 95A0DBAF CF21E25D B1884067 39F32C5F 699AA22C 83975826 AF1BB0AB<br />
  F6BC0DCB 3E4ABD2A 505BE044 EB293878 86D34A5F 8E22C068 5088CAE3 5CB406F0<br />
  4A0365B2 4638A962 5460475B AA443DB4 AC22E945 6D3B9F86 3E9A9D1E 447C094D<br />
  DA22B54E 14E10ABB 67F98C13 1E1692D2 A7FA061D F5F3B3AA 473CB675 9881C339<br />
  3CB10203 010001A3 6D306B30 0F060355 1D130101 FF040530 030101FF 30180603<br />
  551D1104 11300F82 0D52312D 68656164 6F666669 6365301F 0603551D 23041830<br />
  1680146C DF299BAA 99336F8B 70313498 011124A4 14FE9530 1D060355 1D0E0416<br />
  04146CDF 299BAA99 336F8B70 31349801 1124A414 FE95300D 06092A86 4886F70D<br />
  01010405 00038181 00647222 7082103C 51612844 9B7E3156 63DC0228 67A2EAEC<br />
  F08B1D48 5E9AC6B9 25DA65BB F4E07837 4D49286F 819E445A B72B6A5A 770DE2C0<br />
  EA9654A1 2BCD2B5F 589E9546 C3C93C50 C53C0D0C 28B3B92B 459C6D02 5E53AA39<br />
  676B4097 A447F614 DC1D704B D91F5004 F5332A98 24264C87 7FCE2464 3EF07E76<br />
  731FE1E0 29CDF2FC E0<br />
        quit<br />
dot11 syslog<br />
ip source-route<br />
!<br />
!<br />
!<br />
!<br />
ip cef<br />
no ipv6 cef<br />
!<br />
multilink bundle-name authenticated<br />
!<br />
vpdn enable<br />
!<br />
vpdn-group 10<br />
! Default L2TP VPDN group<br />
 accept-dialin<br />
  protocol l2tp<br />
  virtual-template 10<br />
 no l2tp tunnel authentication<br />
 l2tp tunnel timeout no-session 15<br />
!<br />
!<br />
!<br />
username ryan privilege 15 password 0 ryan<br />
username l2tpipsec password 0 l2tpipsec.key<br />
!<br />
!<br />
!<br />
!<br />
crypto isakmp policy 10<br />
 encr aes 256<br />
 authentication pre-share<br />
 group 5<br />
!<br />
crypto isakmp policy 20<br />
 encr aes 256<br />
 authentication pre-share<br />
 group 2<br />
!<br />
crypto isakmp policy 30<br />
 encr 3des<br />
 hash md5<br />
 authentication pre-share<br />
 group 2<br />
crypto isakmp key R1-headoffice_R2-br2 address 136.1.0.20<br />
crypto isakmp key l2tp_ipsec_key address 0.0.0.0 0.0.0.0<br />
!<br />
crypto isakmp client configuration group ezvpn_client<br />
 key ezvpn_key<br />
 pool ippool_ezvpn<br />
 acl acl_ezvpn_splittunnel<br />
crypto isakmp profile isakmp_prof_dvti<br />
   match identity group ezvpn_client<br />
   client authentication list aaa_ezvpn_authen<br />
   isakmp authorization list aaa_ezvpn_author<br />
   client configuration address respond<br />
   keepalive 20 retry 5<br />
   virtual-template 50<br />
!<br />
!<br />
crypto ipsec transform-set aes256sha esp-aes 256 esp-sha-hmac<br />
crypto ipsec transform-set l2tp_ipsec esp-3des esp-md5-hmac<br />
 mode transport<br />
!<br />
crypto ipsec profile ipsec_prof_dvti<br />
 set transform-set aes256sha<br />
 set reverse-route tag 50<br />
 set isakmp-profile isakmp_prof_dvti<br />
!<br />
crypto ipsec profile ipsec_prof_svti<br />
 set transform-set aes256sha<br />
!<br />
!<br />
crypto dynamic-map crypto_dynamic_l2tp-ipsec 10<br />
 set nat demux<br />
 set transform-set l2tp_ipsec<br />
!<br />
!<br />
crypto map crypto_map 10 ipsec-isakmp dynamic crypto_dynamic_l2tp-ipsec<br />
!<br />
!<br />
!<br />
!<br />
!<br />
interface Tunnel1<br />
 ip address 172.16.1.1 255.255.255.0<br />
 tunnel source FastEthernet0<br />
 tunnel mode ipsec ipv4<br />
 tunnel destination 136.1.0.20<br />
 tunnel key 1000<br />
 tunnel protection ipsec profile ipsec_prof_svti<br />
 !<br />
!<br />
interface FastEthernet0<br />
 ip address 136.1.0.10 255.255.255.0<br />
 ip nat outside<br />
 ip virtual-reassembly<br />
 duplex auto<br />
 speed auto<br />
 crypto map crypto_map<br />
 !<br />
!<br />
interface FastEthernet1<br />
 no ip address<br />
 shutdown<br />
 duplex auto<br />
 speed auto<br />
 !<br />
!<br />
interface FastEthernet2<br />
 !<br />
!<br />
interface FastEthernet3<br />
 !<br />
!<br />
interface FastEthernet4<br />
 !<br />
!<br />
interface FastEthernet5<br />
 !<br />
!<br />
interface FastEthernet6<br />
 !<br />
!<br />
interface FastEthernet7<br />
 !<br />
!<br />
interface FastEthernet8<br />
 !<br />
!<br />
interface FastEthernet9<br />
 !<br />
!<br />
interface Virtual-Template10<br />
 ip unnumbered FastEthernet0<br />
 peer default ip address pool ippool_l2tpipsec<br />
 ppp mtu adaptive<br />
 ppp authentication chap ms-chap ms-chap-v2<br />
 !<br />
!<br />
interface Virtual-Template50 type tunnel<br />
 ip unnumbered FastEthernet0<br />
 tunnel mode ipsec ipv4<br />
 tunnel protection ipsec profile ipsec_prof_dvti<br />
 !<br />
!<br />
interface Vlan1<br />
 ip address 10.1.1.1 255.255.255.0<br />
 ip nat inside<br />
 ip virtual-reassembly<br />
 !<br />
!<br />
interface Async1<br />
 no ip address<br />
 encapsulation slip<br />
 !<br />
!<br />
ip local pool ippool_ezvpn 10.1.50.100 10.1.50.110<br />
ip local pool ippool_l2tpipsec 10.1.60.100 10.1.60.110<br />
ip local pool ippool_sslvpn 10.1.70.100 10.1.70.110<br />
ip forward-protocol nd<br />
no ip http server<br />
no ip http secure-server<br />
!<br />
!<br />
ip nat inside source list acl_nat_control interface FastEthernet0 overload<br />
ip route 0.0.0.0 0.0.0.0 136.1.0.30<br />
ip route 10.2.1.0 255.255.255.0 Tunnel1<br />
!<br />
ip access-list extended acl_ezvpn_splittunnel<br />
 permit ip 10.1.1.0 0.0.0.255 10.1.50.0 0.0.0.255<br />
!<br />
ip access-list extended acl_nat_control<br />
 deny   ip 10.1.1.0 0.0.0.255 10.2.1.0 0.0.0.255<br />
 permit ip 10.1.1.0 0.0.0.255 any<br />
!<br />
!<br />
!<br />
!<br />
!<br />
control-plane<br />
 !<br />
!<br />
!<br />
line con 0<br />
 login authentication aaa_con0_authen<br />
line 1<br />
 modem InOut<br />
 stopbits 1<br />
 speed 115200<br />
 flowcontrol hardware<br />
line aux 0<br />
line vty 0 4<br />
 authorization exec aaa_vty_author<br />
 login authentication aaa_vty_authen<br />
line vty 5 193<br />
 authorization exec aaa_vty_author<br />
 login authentication aaa_vty_authen<br />
!<br />
!<br />
webvpn gateway ssl_vpn_gateway<br />
 ip interface FastEthernet0 port 443<br />
 http-redirect port 80<br />
 ssl trustpoint TP-self-signed-3691727871<br />
 inservice<br />
 !<br />
webvpn install svc flash:/webvpn/anyconnect-win-2.4.0202-k9.pkg sequence 1<br />
 !<br />
webvpn context ssl_vpn_context<br />
 ssl authenticate verify all<br />
 !<br />
 !<br />
 policy group ssl_vpn_group_policy1<br />
   functions svc-required<br />
   svc address-pool &#8220;ippool_sslvpn&#8221;<br />
   svc keep-client-installed<br />
   svc split include 10.1.1.0 255.255.255.0<br />
 default-group-policy ssl_vpn_group_policy1<br />
 aaa authentication list aaa_sslvpn_authen<br />
 gateway ssl_vpn_gateway<br />
 inservice<br />
!<br />
end_____________________________________________________</p>
<p>______________________________________________________</p>
<p><strong>Final Configuration for 881 &#8211; R2-branch</strong></p>
<p>R2-br2#sh run<br />
Building configuration&#8230;</p>
<p>Current configuration : 2196 bytes<br />
!<br />
! Last configuration change at 15:32:04 UTC Tue Jan 5 2010<br />
!<br />
version 15.0<br />
no service pad<br />
service timestamps debug datetime msec<br />
service timestamps log datetime msec<br />
no service password-encryption<br />
!<br />
hostname R2-br2<br />
!<br />
boot-start-marker<br />
boot-end-marker<br />
!<br />
enable secret 5 $1$6mVc$Cax/P/pcepCXsImiFAoBq0<br />
!<br />
aaa new-model<br />
!<br />
!<br />
aaa authentication login aaa_vty_authen local<br />
aaa authentication login aaa_con0_authen none<br />
aaa authorization console<br />
aaa authorization exec aaa_vty_author local<br />
!<br />
!<br />
!<br />
!<br />
!<br />
aaa session-id common<br />
!<br />
!<br />
!<br />
memory-size iomem 25<br />
!<br />
!<br />
ip source-route<br />
!<br />
!<br />
!<br />
!<br />
ip cef<br />
ip domain name test.com<br />
no ipv6 cef<br />
!<br />
!<br />
multilink bundle-name authenticated!<br />
!<br />
username ryan privilege 15 password 0 ryan<br />
!<br />
!<br />
!<br />
!<br />
crypto isakmp policy 10<br />
 encr aes 256<br />
 authentication pre-share<br />
 group 5<br />
crypto isakmp key R1-headoffice_R2-br2 address 136.1.0.10<br />
!<br />
!<br />
crypto ipsec transform-set aes256sha esp-aes 256 esp-sha-hmac<br />
!<br />
crypto ipsec profile ipsec_prof_svti<br />
 set transform-set aes256sha<br />
!<br />
!<br />
!<br />
!<br />
!<br />
!<br />
interface Tunnel1<br />
 ip address 172.16.1.20 255.255.255.0<br />
 tunnel source FastEthernet4<br />
 tunnel mode ipsec ipv4<br />
 tunnel destination 136.1.0.10<br />
 tunnel key 1000<br />
 tunnel protection ipsec profile ipsec_prof_svti<br />
 !<br />
!<br />
interface FastEthernet0<br />
 !<br />
!<br />
interface FastEthernet1<br />
 no cdp log mismatch duplex<br />
 !<br />
!<br />
interface FastEthernet2<br />
 !<br />
!<br />
interface FastEthernet3<br />
 !<br />
!<br />
interface FastEthernet4<br />
 ip address 136.1.0.20 255.255.255.0<br />
 ip nat outside<br />
 ip virtual-reassembly<br />
 duplex auto<br />
 speed auto<br />
 !<br />
!<br />
interface Vlan1<br />
 ip address 10.2.1.1 255.255.255.0<br />
 ip nat inside<br />
 ip virtual-reassembly<br />
 !<br />
!<br />
ip forward-protocol nd<br />
no ip http server<br />
no ip http secure-server<br />
!<br />
!<br />
ip nat inside source list acl_nat_control interface FastEthernet4 overload<br />
ip route 0.0.0.0 0.0.0.0 136.1.0.30<br />
ip route 10.1.1.0 255.255.255.0 Tunnel1<br />
!<br />
ip access-list extended acl_nat_control<br />
 deny   ip 10.2.1.0 0.0.0.255 10.1.1.0 0.0.0.255<br />
 permit ip 10.2.1.0 0.0.0.255 any<br />
!<br />
!<br />
!<br />
!<br />
!<br />
!<br />
control-plane<br />
 !<br />
!<br />
!<br />
line con 0<br />
 login authentication aaa_con0_authen<br />
 no modem enable<br />
line aux 0<br />
line vty 0 4<br />
 authorization exec aaa_vty_author<br />
 login authentication aaa_vty_authen<br />
!<br />
scheduler max-task-time 5000<br />
end___________________________________________________________</p>
<p>______________________________________________________</p>
<p><strong>Very Simple Instructions for Win XP client setup</strong></p>
<p>win XP client configuration</p>
<p>Create new connection</p>
<p>Connect to the network at my workplace</p>
<p>VPN Connection</p>
<p>Give a connection name</p>
<p>Give the IP address of the server &#8211; 136.1.0.10</p>
<p>Click finish</p>
<p>Connection window will pop up. Click on properties</p>
<p>Click on the &#8220;security&#8221; tab. Click the radio button for &#8220;Advanced (custom settings). Click on IPSec settings.</p>
<p>Check in &#8220;Use pre-shared key for authentication&#8221; and enter the same key that you configured the router with &#8211; in this case &#8211; l2tp_ipsec_key   Click OK</p>
<p>Now click on the &#8220;Networking&#8221; tab. For the option &#8220;Type of VPN&#8221;, use the frop down and select &#8220;L2TP IPSec VPN&#8221;. Click OK</p>
<p>Click OK to exit the Properties Page. You should be back to the connect screen</p>
<p>Log in with your username and password &#8211; in this case it can be ryan ryan . I used l2tpipsec and l2tpipsec.key</p>
<p>Click on connect and it should connect just fine.</p>
<p>To enable Split Tunnelling in Windows XP, do the following:</p>
<p>On a Windows XP Pro Computer, you&#8217;ll find it this way:</p>
<p>1) Right click the My Network Places icon on the desktop and click Properties.</p>
<p>2) Right click on your VPN client connections in the Network Connections window and click Properties.</p>
<p>3) Click the Networking tab, and then click on the Internet Protocol (TCP/IP) entry and click the Properties button.</p>
<p>4) On the General tab of the Internet Protocol (TCP/IP) Properties dialog box, click the Advanced button.</p>
<p>5) On the General tab of the Advanced TCP/IP Settings dialog box, note the &#8220;Use Default Gateway on Remote Network&#8221; option.</p>
<p>______________________________________________________</p>
<p><strong>Verification for l2tp, svti and dvti &#8211; Phase 1 and 2</strong></p>
<p>R1-headoffice#sh crypto isa sa det<br />
Codes: C &#8211; IKE configuration mode, D &#8211; Dead Peer Detection<br />
       K &#8211; Keepalives, N &#8211; NAT-traversal<br />
       T &#8211; cTCP encapsulation, X &#8211; IKE Extended Authentication<br />
       psk &#8211; Preshared key, rsig &#8211; RSA signature<br />
       renc &#8211; RSA encryption<br />
IPv4 Crypto ISAKMP SA</p>
<p>C-id  Local           Remote          I-VRF    Status Encr Hash Auth DH Lifetime<br />
 Cap.</p>
<p>2001  136.1.0.10      136.1.0.20               ACTIVE aes  sha  psk  5  19:35:36</p>
<p>       Engine-id:Conn-id =  SW:1</p>
<p>2011  136.1.0.10      136.1.0.100              ACTIVE aes  sha       2  23:59:37<br />
 CDX<br />
       Engine-id:Conn-id =  SW:11</p>
<p>2010  136.1.0.10      136.1.0.100              ACTIVE 3des md5  psk  2  06:34:12</p>
<p>       Engine-id:Conn-id =  SW:10</p>
<p>IPv6 Crypto ISAKMP SA</p>
<p>R1-headoffice#sh crypto ipsec sa</p>
<p>interface: Tunnel1<br />
    Crypto map tag: Tunnel1-head-0, local addr 136.1.0.10</p>
<p>   protected vrf: (none)<br />
   local  ident (addr/mask/prot/port): (0.0.0.0/0.0.0.0/0/0)<br />
   remote ident (addr/mask/prot/port): (0.0.0.0/0.0.0.0/0/0)<br />
   current_peer 136.1.0.20 port 500<br />
     PERMIT, flags={origin_is_acl,}<br />
    #pkts encaps: 10, #pkts encrypt: 10, #pkts digest: 10<br />
    #pkts decaps: 10, #pkts decrypt: 10, #pkts verify: 10<br />
    #pkts compressed: 0, #pkts decompressed: 0<br />
    #pkts not compressed: 0, #pkts compr. failed: 0<br />
    #pkts not decompressed: 0, #pkts decompress failed: 0<br />
    #send errors 0, #recv errors 0</p>
<p>     local crypto endpt.: 136.1.0.10, remote crypto endpt.: 136.1.0.20<br />
     path mtu 1500, ip mtu 1500, ip mtu idb FastEthernet0<br />
     current outbound spi: 0x7175754A(1903523146)<br />
     PFS (Y/N): N, DH group: none</p>
<p>     inbound esp sas:<br />
      spi: 0x25A1FCA(39460810)<br />
        transform: esp-256-aes esp-sha-hmac ,<br />
        in use settings ={Tunnel, }<br />
        conn id: 38, flow_id: Onboard VPN:38, sibling_flags 80000046, crypto map<br />
: Tunnel1-head-0<br />
        sa timing: remaining key lifetime (k/sec): (4579905/2097)<br />
        IV size: 16 bytes<br />
        replay detection support: Y<br />
        Status: ACTIVE</p>
<p>     inbound ah sas:</p>
<p>     inbound pcp sas:</p>
<p>     outbound esp sas:<br />
      spi: 0x7175754A(1903523146)<br />
        transform: esp-256-aes esp-sha-hmac ,<br />
        in use settings ={Tunnel, }<br />
        conn id: 39, flow_id: Onboard VPN:39, sibling_flags 80000046, crypto map<br />
: Tunnel1-head-0<br />
        sa timing: remaining key lifetime (k/sec): (4579905/2097)<br />
        IV size: 16 bytes<br />
        replay detection support: Y<br />
        Status: ACTIVE</p>
<p>     outbound ah sas:</p>
<p>     outbound pcp sas:</p>
<p>interface: FastEthernet0<br />
    Crypto map tag: crypto_map, local addr 136.1.0.10</p>
<p>   protected vrf: (none)<br />
   local  ident (addr/mask/prot/port): (136.1.0.10/255.255.255.255/17/1701)<br />
   remote ident (addr/mask/prot/port): (136.1.0.100/255.255.255.255/17/1701)<br />
   current_peer 136.1.0.100 port 500<br />
     PERMIT, flags={}<br />
    #pkts encaps: 1559, #pkts encrypt: 1559, #pkts digest: 1559<br />
    #pkts decaps: 2329, #pkts decrypt: 2329, #pkts verify: 2329<br />
    #pkts compressed: 0, #pkts decompressed: 0<br />
    #pkts not compressed: 0, #pkts compr. failed: 0<br />
    #pkts not decompressed: 0, #pkts decompress failed: 0<br />
    #send errors 0, #recv errors 0</p>
<p>     local crypto endpt.: 136.1.0.10, remote crypto endpt.: 136.1.0.100<br />
     path mtu 1500, ip mtu 1500, ip mtu idb FastEthernet0<br />
     current outbound spi: 0x883DFB78(2285763448)<br />
     PFS (Y/N): N, DH group: none</p>
<p>     inbound esp sas:<br />
      spi: 0x2BE310FB(736301307)<br />
        transform: esp-3des esp-md5-hmac ,<br />
        in use settings ={Transport, }<br />
        conn id: 40, flow_id: Onboard VPN:40, sibling_flags 80000006, crypto map<br />
: crypto_map<br />
        sa timing: remaining key lifetime (k/sec): (4489513/2336)<br />
        IV size: 8 bytes<br />
        replay detection support: Y<br />
        Status: ACTIVE</p>
<p>     inbound ah sas:</p>
<p>     inbound pcp sas:</p>
<p>     outbound esp sas:<br />
      spi: 0x883DFB78(2285763448)<br />
        transform: esp-3des esp-md5-hmac ,<br />
        in use settings ={Transport, }<br />
        conn id: 41, flow_id: Onboard VPN:41, sibling_flags 80000006, crypto map<br />
: crypto_map<br />
        sa timing: remaining key lifetime (k/sec): (4489520/2336)<br />
        IV size: 8 bytes<br />
        replay detection support: Y<br />
        Status: ACTIVE</p>
<p>     outbound ah sas:</p>
<p>     outbound pcp sas:</p>
<p>interface: Virtual-Access2<br />
    Crypto map tag: Virtual-Access2-head-0, local addr 136.1.0.10</p>
<p>   protected vrf: (none)<br />
   local  ident (addr/mask/prot/port): (0.0.0.0/0.0.0.0/0/0)<br />
   remote ident (addr/mask/prot/port): (10.1.50.103/255.255.255.255/0/0)<br />
   current_peer 136.1.0.100 port 1266<br />
     PERMIT, flags={origin_is_acl,}<br />
    #pkts encaps: 4, #pkts encrypt: 4, #pkts digest: 4<br />
    #pkts decaps: 4, #pkts decrypt: 4, #pkts verify: 4<br />
    #pkts compressed: 0, #pkts decompressed: 0<br />
    #pkts not compressed: 0, #pkts compr. failed: 0<br />
    #pkts not decompressed: 0, #pkts decompress failed: 0<br />
    #send errors 0, #recv errors 0</p>
<p>     local crypto endpt.: 136.1.0.10, remote crypto endpt.: 136.1.0.100<br />
     path mtu 1500, ip mtu 1500, ip mtu idb FastEthernet0<br />
     current outbound spi: 0x96A1A0F0(2527174896)<br />
     PFS (Y/N): N, DH group: none</p>
<p>     inbound esp sas:<br />
      spi: 0x8BBBE2B1(2344346289)<br />
        transform: esp-256-aes esp-sha-hmac ,<br />
        in use settings ={Tunnel, }<br />
        conn id: 42, flow_id: Onboard VPN:42, sibling_flags 80000046, crypto map<br />
: Virtual-Access2-head-0<br />
        sa timing: remaining key lifetime (k/sec): (4486606/3557)<br />
        IV size: 16 bytes<br />
        replay detection support: Y<br />
        Status: ACTIVE</p>
<p>     inbound ah sas:</p>
<p>     inbound pcp sas:</p>
<p>     outbound esp sas:<br />
      spi: 0x96A1A0F0(2527174896)<br />
        transform: esp-256-aes esp-sha-hmac ,<br />
        in use settings ={Tunnel, }<br />
        conn id: 43, flow_id: Onboard VPN:43, sibling_flags 80000046, crypto map<br />
: Virtual-Access2-head-0<br />
        sa timing: remaining key lifetime (k/sec): (4486606/3557)<br />
        IV size: 16 bytes<br />
        replay detection support: Y<br />
        Status: ACTIVE</p>
<p>     outbound ah sas:</p>
<p>     outbound pcp sas:</p>
<p>______________________________________________________</p>
<p><strong>Verification for SSL VPN Connection</strong></p>
<p>WebVPN user name = ryan ; IP address = 136.1.0.100 ; context = ssl_vpn_context<br />
    No of connections: 1<br />
    Created 00:01:26, Last-used 00:01:10<br />
    STC IP address 10.1.70.100 netmask 255.255.255.255<br />
    CSTP Started 00:00:55, Last-recieved 00:00:55<br />
    CSTP DPD-Request sent 0<br />
    Client Port: 1227<br />
    User Policy Parameters<br />
      Group name = ssl_vpn_group_policy1<br />
    Group Policy Parameters<br />
      idle timeout = 2100 sec<br />
      session timeout = Disabled<br />
      functions =<br />
                svc-required</p>
<p>      citrix disabled<br />
      address pool name = &#8220;ippool_sslvpn&#8221;<br />
      dpd client timeout = 300 sec<br />
      dpd gateway timeout = 300 sec<br />
      keepalive interval = 30 sec<br />
      SSLVPN Full Tunnel mtu size = 1406 bytes<br />
      keep sslvpn client installed = enabled<br />
      rekey interval = 3600 sec<br />
      rekey method =<br />
      lease duration = 43200 sec<br />
      split include = 10.1.1.0 255.255.255.0</p>
]]></content:encoded>
			<wfw:commentRss>http://www.routsec.com/?feed=rss2&amp;p=82</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASA DNS Doctoring with Alias &amp; Static. HairPinning Solution Also.</title>
		<link>http://www.routsec.com/?p=80</link>
		<comments>http://www.routsec.com/?p=80#comments</comments>
		<pubDate>Thu, 24 Jun 2010 02:42:45 +0000</pubDate>
		<dc:creator>ryanschuett</dc:creator>
				<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.routsec.com/?p=80</guid>
		<description><![CDATA[DNS Re-Write (DNS Doctoring) on the Cisco ASA Refer to the following topology   Scenario Host1 on the inside network and Host4 on the DMZ network use name-server 136.1.122.2 (Host2), which is located on the outside network, to resolve DNS queries. Both hosts are trying to reach DMZ Host3 by name. They send a DNS [...]]]></description>
			<content:encoded><![CDATA[<p>DNS Re-Write (DNS Doctoring) on the Cisco ASA</p>
<p>Refer to the following topology</p>
<p><a href="http://www.routsec.com/wp-content/uploads/2009/12/dnsdoctortopology3.jpg"></a><img title="dnsdoctortopology" src="http://www.routsec.com/wp-content/uploads/2009/12/dnsdoctortopology4.jpg" alt="" width="637" height="273" /> <a href="http://www.routsec.com/wp-content/uploads/2009/12/dnsdoctortopology2.jpg"></a><a href="http://www.routsec.com/wp-content/uploads/2009/12/dnsdoctortopology1.jpg"></a></p>
<p><span style="text-decoration: underline;">Scenario</span></p>
<p>Host1 on the inside network and Host4 on the DMZ network use name-server 136.1.122.2 (Host2), which is located on the outside network, to resolve DNS queries. Both hosts are trying to reach DMZ Host3 by name. They send a DNS resolution request to Host2 server for Host3. Host2 responds to the request with the IP address 136.1.122.50. They receive the response and try to connect to Host3 but are unsuccessful. What can be done so that the DNS record stays as is on Host2 and both Host1 and Host4 can reach Host3 by name.<img title="More..." src="http://www.routsec.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" /><span id="more-80"></span></p>
<p><span style="text-decoration: underline;">Discussion</span></p>
<p>Well, now that we know the problem, what can we do to fix it? In regards to the ASA, we have a few options. The ASA has two commands to rewrite the DNS record. These are the alias and static commands. The alias command is legacy compared to the static command. Another option we have that does not re-write the DNS record is hair-pinning along with dynamic NAT (DNAT). So we will setup this scenario and configure the devices without any of these mentioned solutions. We will then implement each of the 3 proposed solutions mentioned to see if they resolve the issue. We will then discuss different ways of securing these solutions. First, let’s discuss each solution in detail for better understanding.</p>
<p><span style="text-decoration: underline;">ASA Configuration</span></p>
<p>Ok, let’s configure the ASA so we can get connectivity to the devices within our lab. Let’s implement NAT, allow ICMP, and test connectivity. The ASA has a default configuration after the wr erase command was issued.</p>
<p>asa(config)#nat (inside) 1 0 0<br />
asa(config)#nat (dmz) 1 0 0<br />
asa(config)#global (outside) 1 interface<br />
asa(config)#global (dmz) 1 interface<br />
asa(config)#policy-map global_policy<br />
asa (config-pmap)# class inspection_default<br />
asa (config-pmap-c)# inspect icmp</p>
<p>Now let’s test connectivity<br />
Host1#ping 136.1.122.2<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 136.1.122.2, timeout is 2 seconds:<br />
!!!!!<br />
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms</p>
<p>Host1#ping 10.0.0.100<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 10.0.0.100, timeout is 2 seconds:<br />
!!!!!<br />
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms</p>
<p>Host4#ping 136.1.122.2<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 136.1.122.2, timeout is 2 seconds:<br />
!!!!!<br />
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms</p>
<p>Ok, it appears that we have reachability throughout the network.<br />
Now let’s try to ping host3 with the name of host3 from host4</p>
<p>host4#ping host3<br />
Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 136.1.122.50, timeout is 2 seconds:<br />
…..<br />
Success rate is 0 percent (0/5)</p>
<p>Now let’s try to ping host3 with the name of host3 from host1</p>
<p>host1#ping host3<br />
Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 136.1.122.50, timeout is 2 seconds:<br />
…..<br />
Success rate is 0 percent (0/5)</p>
<p>We now know that we need to implement one of the solutions mentioned earlier.</p>
<p><span style="text-decoration: underline;">Alias Command Solution</span></p>
<p><strong>1)      </strong><strong>Alias command (This command has 2 functions)</strong></p>
<p>First Function – DNS Doctoring – performs DNS re-writes<br />
Second Function – Destination NAT – changes destination IP address to another address</p>
<p>First, let’s fix Host4 so it can access Host3. Let’s use the alias command:</p>
<p>asa(config)#alias (dmz) 10.0.0.100 136.1.122.50 255.255.255.255</p>
<p>This alias command also creates a proxyarp entry in the ASA. We should disable this for DNS Doctoring purposes using the following command</p>
<p>asa(config)#sysopt noproxyarp dmz</p>
<p>Now let’s try our same ping test as earlier; host4 will try and ping host3 by name</p>
<p>host4#ping host3<br />
Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 10.0.0.100 timeout is 2 seconds:<br />
!!!!!<br />
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms</p>
<p>We can see that the alias performed the DNS re-write as host3 is now resolved to 10.0.0.100. We can successfully ping host3 from host4 now. This is great.</p>
<p>Now, what about host1? Lets implement the same alias command but this time apply it to the inside interface and turn off the proxyarp.</p>
<p>asa(config)#alias (inside) 10.0.0.100 136.1.122.50 255.255.255.255<br />
asa(config)#sysopt noproxyarp inside</p>
<p>And let’s try our ping from host1 to the name host3</p>
<p>Host1#ping host3<br />
Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 10.0.0.100 timeout is 2 seconds:<br />
…..<br />
Success rate is 0 percent (0/5)</p>
<p>Well, we can see that host3 resolves to 10.0.0.100 but we don’t have reachability to the device. Hmmm… that is strange. Many people I have run across say that it is because we don’t allow ICMP from DMZ. But how can this be as we are inspecting ICMP globally within the ASA and we had reachability before implementing the alias command. Well, we have actually implemented DNS Doctoring on an interface that the host we are trying to reach is not located on. That is the only difference between the dmz and inside, right? The DNS changes but we have no reachability. Mission failed….</p>
<p>Well, believe it or not, if you want reachability, we cannot use DNS Doctoring with the alias command. Instead, we have to use destination NAT with the alias command. We need to swap around the addresses within the alias command. Let’s try it out and see what happens.</p>
<p>asa(config)#alias (inside) 136.1.122.50 10.0.0.100 255.255.255.255</p>
<p>Let’s see how this works.</p>
<p>Host1#ping host3<br />
Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 136.1.122.50 timeout is 2 seconds:<br />
!!!!!<br />
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms</p>
<p>Success, mission accomplished. Even though we don’t doctor the DNS as we see that host3 resolves to 136.1.122.50. It may not be the record that we expect but we do have full reachability to the device.</p>
<p>Although, the alias command is deprecated since version 7 code to the static command, it can still be used as a solution if desired.  It just has to be correctly implemented. The alias command acts like a half functioning static command.</p>
<p>Let’s remove the alias and sysopt commands we issued earlier before proceeding to the next solution, using the static command</p>
<p>asa(config)#no alias (dmz) 10.0.0.100 136.1.122.50 255.255.255.255<br />
asa(config)#no alias (inside) 136.1.122.50 10.0.0.100 255.255.255.255<br />
asa(config)#no sysopt noproxyarp dmz<br />
asa(config)#no sysopt noproxyarp inside</p>
<p><span style="text-decoration: underline;">Static with DNS Command Solution</span></p>
<p><strong>2)      </strong><strong>DNS re-write using Static command.</strong></p>
<p>The static command with the DNS keyword performs DNS doctoring. This is by far the best method to make our configuration work. Please note that DNS inspection must be enabled within the Modular Policy Framework. So, using the same scenario earlier, let’s try the static command with the keyword DNS.</p>
<p>asa(config)#static (dmz,outside) 136.1.122.50 10.0.0.100 netmask 255.255.255.255 dns</p>
<p>Let’s perform our ping tests from host4 within the DMZ network.</p>
<p>host4#ping host3</p>
<p>Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 10.0.0.100 timeout is 2 seconds:<br />
!!!!!<br />
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms</p>
<p>The static command with DNS re-write works fine for the DMZ. Let’s try host1 on the inside network.</p>
<p>Host1#ping host3<br />
Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 10.0.0.100 timeout is 2 seconds:<br />
!!!!!<br />
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms</p>
<p>Looking at the result above, the static command works for the host1 dns re-write resolution as well. The MPF re-writes the DNS entry with relation to the static command entry used. This one line command is the recommended solution to this DNS issue.</p>
<p>Let’s remove the alias and sysopt commands we issued earlier before proceeding to the next solution</p>
<p>asa(config)#no static (dmz,outside) 136.1.122.50 10.0.0.100 netmask 255.255.255.255 dns</p>
<p><span style="text-decoration: underline;">ASA HairPinning  Solution</span></p>
<p><strong>3)      </strong><strong>Hairpinning traffic with DNAT.</strong></p>
<p>So to start off with, this solution actually does no DNS re-writes. Basically what this solution does is use NAT technology for the traffic flow from querieng host to the host in the DNS reply message (so from host1 to host3)</p>
<p>Prior to code that introduced hairpinning using the same-security-traffic permit intra-interface command, the firewall could not send out traffic on the same interface that it originally came from. The traffic had to flow through the PIX from one interface to another. The same-security-traffic permit intra-interface allows traffic to flow out the same interface in which it was received. So let’s setup the configuration on the ASA to determine what happens.</p>
<p>First, we will configure the ASA to fix the reachability in the inside network. Note that since our traffic should still be flowing through the firewall interfaces, we should not need the same-security-traffic permit intra-interface command as of yet. So we will have change the source and destination addresses via NAT to accomplish this task. Remember, the source IP address is changed with the nat and global command. The destination IP will be changed by the static command.</p>
<p>Let’s start off this test by trying to ping host3 from host1</p>
<p>Host1#ping host3<br />
Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 136.1.122.50 timeout is 2 seconds:<br />
…..</p>
<p>Now let’s add configuration using NAT solutions only to see if we can make this work</p>
<p>asa(config)#static (dmz,inside) 136.1.122.50 10.0.0.100</p>
<p>And let’s try to ping host3 again from host1</p>
<p>Host1#ping host3<br />
Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 136.1.122.50 timeout is 2 seconds:<br />
!!!!!<br />
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms</p>
<p>Ok, we now have reachability there. You can see that the host is still at 136.1.122.50 and that DNS re-write is not performed here.</p>
<p>Let’s try to ping the host directly and see what happens</p>
<p>Host1#ping 10.0.0.100<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 10.0.0.100 timeout is 2 seconds:<br />
…..</p>
<p>Due to the static NAT translation, if we want to access the device, we will have to use 136.1.122.50 now.</p>
<p>Now let’s try to reach host3 from host4 in the dmz network by name</p>
<p>Host4#ping host3<br />
Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 136.1.122.50 timeout is 2 seconds:<br />
…..</p>
<p>As we can see, we will need to implement a solution here for host4 to reach host3 by name. Let’s configure the ASA a little more.</p>
<p>asa(config)#static (dmz,dmz) 136.1.122.50 10.0.0.100</p>
<p>Let’s try our reachability test.</p>
<p>Host4#ping host3<br />
Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 136.1.122.50 timeout is 2 seconds:<br />
…..</p>
<p>Still the same issue. We will install the hairpinning feature now.</p>
<p>asa(config)# same-security-traffic permit intra-interface</p>
<p>Host4#ping host3<br />
Translating &#8220;host3&#8243;&#8230;domain server (136.1.122.2) [OK]<br />
Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 136.1.122.50 timeout is 2 seconds:<br />
!!!!!<br />
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms</p>
<p>We can see that by permitting traffic back out the same interface in which it was learned that we can solve the issue with NAT only.</p>
<p>So we have 2 solutions utilizing DNS re-write and one by using NAT along with hairpinning the traffic. So what if we want to turn off DNS re-write. Well, one way we can disable it for both the alias and static commands is to use MPF. We can choose not to inspect dns within the global policy, or we can create our own policy-map with dns inspection with the dns inspection not doing re-write.</p>
<p>If we are using the alias command we also have the command “sysopt nodnsalias (inbound|outbound)”. The inbound flag means that the direction is from a lower security level to a higher security level. The outbound flag is the opposite of the inbound flag, from a higher security level to a lower security level.</p>
<p>Conclusion</p>
<p>Within a topology that is comparable to the one being dissected in this paper, we can see that there are several options to fix DNS infrastructure that is disjoint from hosts around our network domain. Two of these fixes utilize the ASA’s modular policy framework to re-write DNS records. The other solution uses the ASA’s hairpinning feature along with NAT technologies. We also discussed ways to secure the alias command and how to disable DNS re-writes using the MPF functionality. I hope this provides useful to your lab preparation or in real world scenarios.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.routsec.com/?feed=rss2&amp;p=80</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Managing the ASA</title>
		<link>http://www.routsec.com/?p=77</link>
		<comments>http://www.routsec.com/?p=77#comments</comments>
		<pubDate>Thu, 24 Jun 2010 02:30:01 +0000</pubDate>
		<dc:creator>ryanschuett</dc:creator>
				<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.routsec.com/?p=77</guid>
		<description><![CDATA[Enabling Telnet on the lowest security interface of the appliance has been one of things that many people just don&#8217;t do, but it is nice to know if it can be done and what is needed to do this in case you do need to utlilize it in your infrastructure. Cisco documentation states that telnet [...]]]></description>
			<content:encoded><![CDATA[<p>Enabling Telnet on the lowest security interface of the appliance has been one of things that many people just don&#8217;t do, but it is nice to know if it can be done and what is needed to do this in case you do need to utlilize it in your infrastructure. Cisco documentation states that telnet can only be enabled on the lowest security interface as long as IPSec is terminated on that same interface. Hmmm. Keith over at INE posted a blog entry that can be found here &#8211; <a title="Bob's Challenge from INE" href="http://http//blog.internetworkexpert.com/2009/09/25/accessing-the-firewall/#more-2162" target="_blank">Bob&#8217;s Challenge</a> . In one of Keiths solutions (number 4), he does mention to enable IPSec on the tunnel interface, and one of the solutions shows how to do this.</p>
<p>This blog will discuss and show the ways that we can manage the device when connecting to the lowest security interface. Let&#8217;s observe the following, simple topology:<img title="More..." src="http://www.routsec.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" /></p>
<p><a href="http://www.routsec.com/wp-content/uploads/2010/01/ASA-Management-Diagram.jpg"><img title="ASA Management Diagram" src="http://www.routsec.com/wp-content/uploads/2010/01/ASA-Management-Diagram.jpg" alt="" width="456" height="137" /></a></p>
<p>Interface F0/0 has been named outside and does have a default security-level of 0. The IP addresses have been configured on the devices as shown in the above diagram<span id="more-77"></span></p>
<p>So most of us will go ahead and enable ssh on the outside interface, and some others who like the GUI will also enable  http (usually a port other than 80 or 443 since we all love to use SSL VPN). So let&#8217;s start by using the ssh and http commands to manage these two management protocols before moving onto telnet. These commands will enable R1 to manage the ASA (Although ASDM is not on the router for obvious reasons, we can test to make sure the ASA allows traffic to it&#8217;s port)</p>
<div class='stb-grey_box' style="color:#000000; "><br />
ciscoasa(config)#ssh 192.168.1.1 255.255.255.255 outside<br />
ciscoasa(config)#http 192.168.1.1 255.255.255.255 outside<br />
ciscoasa(config)#http server enable<br />
ciscoasa(config)#asdm image flash:asdm-621.bin<br />
</div>
<p>Let&#8217;s make sure that our http port is open to accept ASDM connections:</p>
<div class='stb-grey_box' style="color:#000000; "><br />
Router#telnet 192.168.1.2 80<br />
Trying 192.168.1.2, 80 &#8230; Open</p>
<p>[Connection to 192.168.1.2 closed by foreign host]<br />
</div>
<p>Everything looks ok with ASDM acces to port 80. So for ssh access, we need to specify a username. The default username is &#8220;pix&#8221; and password is &#8220;cisco&#8221;. Let&#8217;s make sure this works:</p>
<div class='stb-grey_box' style="color:#000000; "><br />
Router#ssh -l pix 192.168.1.2</p>
<p>Password:<br />
Type help or &#8216;?&#8217; for a list of available commands.<br />
ciscoasa&gt; en<br />
Password:<br />
ciscoasa#<br />
</div>
<p>Everything looks fine. Now, for some reason somebody loves telnet and needs it enabled on the outside interface (or an interface with the lowest security level). Let&#8217;s setup telnet and try to access the ASA via the outside interface&#8221;</p>
<div class='stb-grey_box' style="color:#000000; "><br />
ciscoasa(config)#telnet 192.168.1.1 255.255.255.255 outside<br />
</div>
<p>So let&#8217;s try and access the ASA from the router:</p>
<div class='stb-grey_box' style="color:#000000; "><br />
Router#telnet 192.168.1.2</p>
<p>[Connection to 192.168.1.2 closed by foreign host]<br />
</div>
<p>Ok, so we can see that we will have to implement a solution for this. We will terminate an IPSec tunnel between the ASA&#8217;s outside interface and the router. Here is the final configurations of both devices. Note that the configurations were cleared before this setup. I have made bold all required commands for the IPSec configuration.</p>
<div class='stb-grey_box' style="color:#000000; "><br />
<strong>Router Configuration</strong><br />
Router#sh run<br />
Building configuration&#8230;</p>
<p>Current configuration : 1523 bytes<br />
!<br />
version 12.4<br />
service timestamps debug datetime msec<br />
service timestamps log datetime msec<br />
no service password-encryption<br />
!<br />
hostname Router<br />
!<br />
boot-start-marker<br />
boot-end-marker<br />
!<br />
logging message-counter syslog<br />
!<br />
no aaa new-model<br />
!<br />
dot11 syslog<br />
ip source-route<br />
!<br />
!<br />
ip cef<br />
no ipv6 cef<br />
!<br />
multilink bundle-name authenticated<br />
!<br />
!<br />
<strong>crypto isakmp policy 10</strong><br />
 <strong>encr aes 256</strong><br />
 <strong>authentication pre-share</strong><br />
 <strong>group 5</strong><br />
<strong>crypto isakmp key manage address 192.168.1.2</strong><br />
!<br />
<strong>crypto ipsec transform-set aes256sha esp-aes 256 esp-sha-hmac</strong><br />
!<br />
<strong>crypto map crypto_map 10 ipsec-isakmp</strong><br />
 <strong>set peer 192.168.1.2</strong><br />
 <strong>set transform-set aes256sha</strong><br />
<strong>match address acl_crypto_traffic</strong><br />
!<br />
archive<br />
 log config<br />
  hidekeys<br />
!<br />
interface FastEthernet0<br />
 ip address 192.168.1.1 255.255.255.0<br />
 duplex auto<br />
 speed auto<br />
<strong>crypto map crypto_map</strong><br />
!<br />
interface FastEthernet1<br />
 ip address dhcp<br />
 shutdown<br />
 duplex auto<br />
 speed auto<br />
!<br />
interface FastEthernet2<br />
!<br />
interface FastEthernet3<br />
!<br />
interface FastEthernet4<br />
!<br />
interface FastEthernet5<br />
!<br />
interface FastEthernet6<br />
!<br />
interface FastEthernet7<br />
!<br />
interface FastEthernet8<br />
!<br />
interface FastEthernet9<br />
!<br />
interface Vlan1<br />
 no ip address<br />
!<br />
interface Async1<br />
 no ip address<br />
 encapsulation slip<br />
!<br />
ip forward-protocol nd<br />
<strong>ip route 0.0.0.0 0.0.0.0 192.168.1.2</strong><br />
no ip http server<br />
no ip http secure-server<br />
!<br />
!<br />
<strong>ip access-list extended acl_crypto_traffic</strong><br />
<strong>permit ip host 192.168.1.1 host 192.168.1.2</strong><br />
!<br />
!<br />
control-plane<br />
!<br />
!<br />
line con 0<br />
line 1<br />
 modem InOut<br />
 stopbits 1<br />
 speed 115200<br />
 flowcontrol hardware<br />
line aux 0<br />
line vty 0 4<br />
 login<br />
!<br />
end<br />
</div>
<div class='stb-grey_box' style="color:#000000; "><br />
<strong>ASA Configuration</strong></p>
<p>ciscoasa# sh run<br />
: Saved<br />
:<br />
ASA Version 8.2(1)<br />
!<br />
hostname ciscoasa<br />
enable password 8Ry2YjIyt7RRXU24 encrypted<br />
passwd 2KFQnbNIdI.2KYOU encrypted<br />
names<br />
!<br />
interface Vlan1<br />
no nameif<br />
no security-level<br />
no ip address<br />
!<br />
interface Vlan2<br />
nameif outside<br />
security-level 0<br />
ip address 192.168.1.2 255.255.255.0<br />
!<br />
interface Ethernet0/0<br />
switchport access vlan 2<br />
!<br />
interface Ethernet0/1<br />
shutdown<br />
!<br />
interface Ethernet0/2<br />
shutdown<br />
!<br />
interface Ethernet0/3<br />
shutdown<br />
!<br />
interface Ethernet0/4<br />
shutdown<br />
!<br />
interface Ethernet0/5<br />
shutdown<br />
!<br />
interface Ethernet0/6<br />
shutdown<br />
!<br />
interface Ethernet0/7<br />
shutdown<br />
!<br />
ftp mode passive<br />
<strong>access-list acl_crypto_traffic extended permit ip host 192.168.1.2 host 192.168.1.1</strong><br />
pager lines 24<br />
mtu outside 1500<br />
icmp unreachable rate-limit 1 burst-size 1<br />
<strong>asdm image disk0:/asdm-621.bin</strong><br />
no asdm history enable<br />
arp timeout 14400<br />
<strong>route outside 0.0.0.0 0.0.0.0 192.168.1.1 1</strong><br />
timeout xlate 3:00:00<br />
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 icmp 0:00:02<br />
timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp-pat 0:05:00<br />
timeout sip 0:30:00 sip_media 0:02:00 sip-invite 0:03:00 sip-disconnect 0:02:00<br />
timeout sip-provisional-media 0:02:00 uauth 0:05:00 absolute<br />
timeout tcp-proxy-reassembly 0:01:00<br />
dynamic-access-policy-record DfltAccessPolicy<br />
<strong>http server enable</strong><br />
<strong>http 192.168.1.1 255.255.255.255 outside</strong><br />
no snmp-server location<br />
no snmp-server contact<br />
snmp-server enable traps snmp authentication linkup linkdown coldstart<br />
<strong>crypto ipsec transform-set aes256sha esp-aes-256 esp-sha-hmac</strong><br />
crypto ipsec security-association lifetime seconds 28800<br />
crypto ipsec security-association lifetime kilobytes 4608000<br />
<strong>crypto map crypto_map 10 match address acl_crypto_traffic</strong><br />
<strong>crypto map crypto_map 10 set peer 192.168.1.1</strong><br />
<strong>crypto map crypto_map 10 set transform-set aes256sha</strong><br />
<strong>crypto map crypto_map interface outside</strong><br />
<strong>crypto isakmp enable outside</strong><br />
<strong>crypto isakmp policy 10</strong><br />
<strong>authentication pre-share</strong><br />
<strong>encryption aes-256</strong><br />
<strong>hash sha</strong><br />
<strong>group 5</strong><br />
lifetime 86400<br />
<strong>telnet 192.168.1.1 255.255.255.255 outside</strong><br />
telnet timeout 5<br />
<strong>ssh 192.168.1.1 255.255.255.255 outside</strong><br />
ssh timeout 5<br />
console timeout 0</p>
<p>threat-detection basic-threat<br />
threat-detection statistics access-list<br />
no threat-detection statistics tcp-intercept<br />
<strong>tunnel-group 192.168.1.1 type ipsec-l2l</strong><br />
<strong>tunnel-group 192.168.1.1 ipsec-attributes</strong><br />
<strong>pre-shared-key *</strong><br />
!<br />
class-map inspection_default<br />
match default-inspection-traffic<br />
!<br />
!<br />
policy-map type inspect dns preset_dns_map<br />
parameters<br />
message-length maximum 512<br />
policy-map global_policy<br />
class inspection_default<br />
inspect dns preset_dns_map<br />
inspect ftp<br />
inspect h323 h225<br />
inspect h323 ras<br />
inspect netbios<br />
inspect rsh<br />
inspect rtsp<br />
inspect skinny<br />
inspect esmtp<br />
inspect sqlnet<br />
inspect sunrpc<br />
inspect tftp<br />
inspect sip<br />
inspect xdmcp<br />
!<br />
service-policy global_policy global<br />
prompt hostname context<br />
Cryptochecksum:d41d8cd98f00b204e9800998ecf8427e<br />
: end<br />
</div>
<p>Ok, let&#8217;s bring up the IPSec tunnel between the two devices by using ping:</p>
<div class='stb-grey_box' style="color:#000000; "><br />
Router#ping 192.168.1.2</p>
<p>Type escape sequence to abort.<br />
Sending 5, 100-byte ICMP Echos to 192.168.1.2, timeout is 2 seconds:<br />
.!!!!<br />
Success rate is 80 percent (4/5), round-trip min/avg/max = 1/1/4 ms<br />
Router#sh crypto isa sa<br />
IPv4 Crypto ISAKMP SA<br />
dst             src             state          conn-id status<br />
<strong>192.168.1.2     192.168.1.1     QM_IDLE           2011 ACTIVE</strong></p>
<p>IPv6 Crypto ISAKMP SA</p>
<p>Router#sh crypto ipsec sa</p>
<p>interface: FastEthernet0<br />
    Crypto map tag: crypto_map, local addr 192.168.1.1</p>
<p>   protected vrf: (none)<br />
   local  ident (addr/mask/prot/port): (192.168.1.1/255.255.255.255/0/0)<br />
   remote ident (addr/mask/prot/port): (192.168.1.2/255.255.255.255/0/0)<br />
   <strong>current_peer 192.168.1.2 port 500<br />
</strong>     PERMIT, flags={origin_is_acl,ipsec_sa_request_sent}<br />
   <strong> #pkts encaps: 4, #pkts encrypt: 4, #pkts digest: 4</strong><br />
    <strong>#pkts decaps: 4, #pkts decrypt: 4, #pkts verify: 4</strong><br />
    #pkts compressed: 0, #pkts decompressed: 0<br />
    #pkts not compressed: 0, #pkts compr. failed: 0<br />
    #pkts not decompressed: 0, #pkts decompress failed: 0<br />
    #send errors 1, #recv errors 0<br />
</div>
<p>The IPSec tunnel is now up and we are passing encrypted traffic. Let us see if we can telnet to the outside interface now. By default the line password for the ASA is &#8220;cisco&#8221;:</p>
<div class='stb-grey_box' style="color:#000000; "><br />
Router#telnet 192.168.1.2<br />
Trying 192.168.1.2 &#8230; Open<br />
User Access Verification</p>
<p>Password: <em>(use the password of &#8220;cisco&#8221; here)</em><br />
Type help or &#8216;?&#8217; for a list of available commands.<br />
ciscoasa&gt; en<br />
Password: <em>(until you enable a password on the ASA (enable), this is blank)</em><br />
</div>
<p>We see that we can telnet to the lowest security interface on the ASA. I hope this has been helpful!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.routsec.com/?feed=rss2&amp;p=77</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Studies Update</title>
		<link>http://www.routsec.com/?p=74</link>
		<comments>http://www.routsec.com/?p=74#comments</comments>
		<pubDate>Fri, 16 Apr 2010 14:42:22 +0000</pubDate>
		<dc:creator>ryanschuett</dc:creator>
				<category><![CDATA[CCIE Security Studies]]></category>

		<guid isPermaLink="false">http://www.routsec.com/?p=74</guid>
		<description><![CDATA[Well, it has been busy these past few weeks but fun and challenging at the same time. My good friend Vybhav (tacack.com) is a great study buddy but I haven&#8217;t had time to really get on-line with him too much these past few weeks so I apologize to him for that. Hopefully I can get [...]]]></description>
			<content:encoded><![CDATA[<p>Well, it has been busy these past few weeks but fun and challenging at the same time. My good friend Vybhav (tacack.com) is a great study buddy but I haven&#8217;t had time to really get on-line with him too much these past few weeks so I apologize to him for that. Hopefully I can get back on-track with him in the coming days (it really has been one heck of a week&#8230;).</p>
<p>So I focused largely on the IPS the past few weeks but feel that I still need more time with it. The only hands on I get is when I am going through my lab session which is only 8 hours a week for the next few weeks. I am still reading through the documentation though. I have a bunch of notes that I need to go through and make blog posts out of now. All in due time&#8230;</p>
<p>It is definitely a little overwhelming with the study process. I will be posting a new journal section quite soon that will be logging how many hours I am spending for study in the various technologies both labbing and theory.  I would also like to Congratulate Paul Stewart, the latest CCIE Security guru, on completing his journey. He has been a great help/mentor and I enjoy his blog posts and work on the Cisco Learning Network. Please find his blog in regards to his recent success here &#8211; <a href="http://packetu.com/content/view/57/1/" target="_blank">Paul Stewart, CCIE 26009</a></p>
<p>Onto troubleshooting RTBH with Vybhav now&#8230; still working on that fun and challenging technology&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.routsec.com/?feed=rss2&amp;p=74</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Cisco 64Bit VPN Client</title>
		<link>http://www.routsec.com/?p=72</link>
		<comments>http://www.routsec.com/?p=72#comments</comments>
		<pubDate>Fri, 16 Apr 2010 13:18:49 +0000</pubDate>
		<dc:creator>ryanschuett</dc:creator>
				<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.routsec.com/?p=72</guid>
		<description><![CDATA[Well, it appears that Cisco has officially released its 64 bit IPSec VPNClient. The package is also half the size as to earlier versions, although the 32bit package is 3MB larger than this 64bit package. Even though this is a very needed tool for remote access, I still prefer the AnyConnect package which rides over [...]]]></description>
			<content:encoded><![CDATA[<p>Well, it appears that Cisco has officially released its 64 bit IPSec VPNClient. The package is also half the size as to earlier versions, although the 32bit package is 3MB larger than this 64bit package. Even though this is a very needed tool for remote access, I still prefer the AnyConnect package which rides over SSL.</p>
<p>I ran into another big benefit of using Anyconnect yesterday&#8230; I had a business with several users that I had setup remote access for mention that their IPSec VPNCLient wasn&#8217;t working. Doing some investigating, I found they had switched their method of connecting to the Internet now by using wireless air cards. The VPN client would connect just fine over this connection but we were unable to pass any encrypted traffic. It was narrowed down to the ISP  blocking these encrypted packets over that aircard connection. However, we tested with Anyconnect which rides over SSL and it worked just fine.</p>
<p>Just remember that you need a CCO account to download this latest software.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.routsec.com/?feed=rss2&amp;p=72</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
