{"id":2094,"date":"2016-02-29T20:26:30","date_gmt":"2016-02-29T20:26:30","guid":{"rendered":"http:\/\/emtunc.org\/blog\/?p=2094"},"modified":"2016-02-29T20:26:30","modified_gmt":"2016-02-29T20:26:30","slug":"palo-alto-radius-authentication-windows-nps","status":"publish","type":"post","link":"https:\/\/emtunc.org\/blog\/02\/2016\/palo-alto-radius-authentication-windows-nps\/","title":{"rendered":"Palo Alto RADIUS Authentication with Windows NPS"},"content":{"rendered":"<p>In this article I will go through the steps required to implement RADIUS authentication using Windows NPS (Network Policy Server) so that firewall administrators can log-on using domain credentials.<\/p>\n<p><!--more--><\/p>\n<h3>My Setup<\/h3>\n<ul>\n<li>Palo Alto running PAN-OS 7.0.X<\/li>\n<li>Windows Server 2012 R2 with the NPS Role &#8211; should be very similar if not the same on Server 2008 and 2008 R2 though<\/li>\n<li>I will be creating two roles &#8211; one for firewall administrators and the other for read-only service desk users.<\/li>\n<\/ul>\n<h3>NPS Configuration<\/h3>\n<p>First we will configure the NPS server.<\/p>\n<ol>\n<li>Create the RADIUS clients first. The clients being the Palo Alto(s). If you have multiple or a cluster of Palo&#8217;s then make sure you add all of them. You don&#8217;t want to end up in a scenario where\u00a0you can&#8217;t log-in to your secondary Palo because you forgot to add it as a RADIUS client. <strong>Make a note of the generated secret key as you will need it later on.<\/strong><\/li>\n<li>Next create a connection request policy if you don&#8217;t already have one. A connection request is essentially a set of conditions that define which RADIUS server will deal with the requests. In my case the requests will come in to the NPS and be dealt with locally.<\/li>\n<li>Now we create the network policies &#8211; this is where the logic takes place.<\/li>\n<\/ol>\n<figure id=\"attachment_2098\" aria-describedby=\"caption-attachment-2098\" style=\"width: 735px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_54_57.png\" rel=\"attachment wp-att-2098\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2098 size-full\" src=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_54_57.png\" alt=\"Network Policies - Conditions\" width=\"735\" height=\"609\" srcset=\"https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_54_57.png 735w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_54_57-300x249.png 300w\" sizes=\"auto, (max-width: 735px) 100vw, 735px\" \/><\/a><figcaption id=\"caption-attachment-2098\" class=\"wp-caption-text\">In the Conditions tab simply put the security group that you want to access the firewall. I created two network policies for firewall admins and read-only admins.<\/figcaption><\/figure>\n<figure id=\"attachment_2100\" aria-describedby=\"caption-attachment-2100\" style=\"width: 736px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_55_23.png\" rel=\"attachment wp-att-2100\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2100 size-full\" src=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_55_23.png\" alt=\"Network Policies - Constraints\" width=\"736\" height=\"610\" srcset=\"https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_55_23.png 736w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_55_23-300x249.png 300w\" sizes=\"auto, (max-width: 736px) 100vw, 736px\" \/><\/a><figcaption id=\"caption-attachment-2100\" class=\"wp-caption-text\">You need to check the &#8220;Unencrypted authentication (PAP, SPAP)&#8221; option in the Constraints tab. Authentication with the Palo won&#8217;t work if you don&#8217;t check this box.<\/figcaption><\/figure>\n<figure id=\"attachment_2101\" aria-describedby=\"caption-attachment-2101\" style=\"width: 736px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_57_30.png\" rel=\"attachment wp-att-2101\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2101 size-full\" src=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_57_30.png\" alt=\"Network Policies - Settings\" width=\"736\" height=\"609\" srcset=\"https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_57_30.png 736w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_57_30-300x248.png 300w\" sizes=\"auto, (max-width: 736px) 100vw, 736px\" \/><\/a><figcaption id=\"caption-attachment-2101\" class=\"wp-caption-text\">In the Settings tab click &#8216;Vendor Specific&#8217; then &#8216;Add&#8217;. Here you want to select a custom vendor and create a vendor-specific attribute.<\/figcaption><\/figure>\n<figure id=\"attachment_2102\" aria-describedby=\"caption-attachment-2102\" style=\"width: 738px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-23_02_24.png\" rel=\"attachment wp-att-2102\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2102 size-full\" src=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-23_02_24.png\" alt=\"Network Policies - Settings\" width=\"738\" height=\"611\" srcset=\"https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-23_02_24.png 738w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-23_02_24-300x248.png 300w\" sizes=\"auto, (max-width: 738px) 100vw, 738px\" \/><\/a><figcaption id=\"caption-attachment-2102\" class=\"wp-caption-text\">Here you want to add Palo&#8217;s vendor code which is 25461. Next you want to configure the attribute and select &#8216;1&#8217; as the attribute number. The format will be a string and the value will be the new admin group we will create later on in the Palo. The name of my group is called firewalladmin and the name of my other read-only admins group is called firewalladminreadonly.<\/figcaption><\/figure>\n<figure id=\"attachment_2103\" aria-describedby=\"caption-attachment-2103\" style=\"width: 736px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_56_31.png\" rel=\"attachment wp-att-2103\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2103 size-full\" src=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_56_31.png\" alt=\"Network Policies - Settings\" width=\"736\" height=\"610\" srcset=\"https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_56_31.png 736w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_56_31-300x249.png 300w\" sizes=\"auto, (max-width: 736px) 100vw, 736px\" \/><\/a><figcaption id=\"caption-attachment-2103\" class=\"wp-caption-text\">The &#8216;Vendor Specific&#8217; page should now look like this.<\/figcaption><\/figure>\n<figure id=\"attachment_2113\" aria-describedby=\"caption-attachment-2113\" style=\"width: 846px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_54_11.png\" rel=\"attachment wp-att-2113\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2113 size-full\" src=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_54_11.png\" alt=\"Network Policies - Overview\" width=\"846\" height=\"234\" srcset=\"https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_54_11.png 846w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_54_11-300x83.png 300w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_54_11-768x212.png 768w\" sizes=\"auto, (max-width: 846px) 100vw, 846px\" \/><\/a><figcaption id=\"caption-attachment-2113\" class=\"wp-caption-text\">Your network policies may look similar to this. I have two for the Palo. One for admins and the other for read-only admins.<\/figcaption><\/figure>\n<p>Now\u00a0let&#8217;s configure the Palo&#8230;<\/p>\n<h3>Palo Configuration<\/h3>\n<p>First we will configure the Palo for RADIUS authentication. This involves creating the RADIUS server settings, a new admin role (or roles in my case) and setting RADIUS as the authentication method for the device.<\/p>\n<figure id=\"attachment_2105\" aria-describedby=\"caption-attachment-2105\" style=\"width: 917px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_39_31-PA-3020-177.png\" rel=\"attachment wp-att-2105\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2105 size-full\" src=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_39_31-PA-3020-177.png\" alt=\"RADIUS Server Profile\" width=\"917\" height=\"561\" srcset=\"https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_39_31-PA-3020-177.png 917w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_39_31-PA-3020-177-300x184.png 300w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_39_31-PA-3020-177-768x470.png 768w\" sizes=\"auto, (max-width: 917px) 100vw, 917px\" \/><\/a><figcaption id=\"caption-attachment-2105\" class=\"wp-caption-text\">Click Device &#8211;&gt; Server Profiles &#8211;&gt; RADIUS &#8211;&gt; Add. Here you want to add the details of your RADIUS server. Don&#8217;t forget to use the same secret key you generated in the RADIUS configuration above!<\/figcaption><\/figure>\n<figure id=\"attachment_2106\" aria-describedby=\"caption-attachment-2106\" style=\"width: 925px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_42_09-PA-3020-177.png\" rel=\"attachment wp-att-2106\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2106 size-full\" src=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_42_09-PA-3020-177.png\" alt=\"Authentication Profile\" width=\"925\" height=\"554\" srcset=\"https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_42_09-PA-3020-177.png 925w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_42_09-PA-3020-177-300x180.png 300w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_42_09-PA-3020-177-768x460.png 768w\" sizes=\"auto, (max-width: 925px) 100vw, 925px\" \/><\/a><figcaption id=\"caption-attachment-2106\" class=\"wp-caption-text\">Click Device &#8211;&gt; Authentication Profile &#8211;&gt; Add. Here you want to make the type &#8216;RADIUS&#8217; and choose the profile you created earlier. Make sure you put your domain in the &#8216;User Domain&#8217; field otherwise you will have to type domain\\username to log-in instead of just the username which is more convenient. Of course if you have a multi-domain environment then you might want to leave that out.<\/figcaption><\/figure>\n<figure id=\"attachment_2107\" aria-describedby=\"caption-attachment-2107\" style=\"width: 927px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_42_56-PA-3020-177.png\" rel=\"attachment wp-att-2107\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2107 size-full\" src=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_42_56-PA-3020-177.png\" alt=\"Authentication Profile\" width=\"927\" height=\"670\" srcset=\"https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_42_56-PA-3020-177.png 927w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_42_56-PA-3020-177-300x217.png 300w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_42_56-PA-3020-177-768x555.png 768w\" sizes=\"auto, (max-width: 927px) 100vw, 927px\" \/><\/a><figcaption id=\"caption-attachment-2107\" class=\"wp-caption-text\">Some articles will say that the allow list is optional and that you can just choose the &#8216;all&#8217; group as you will define the AD groups allowed using your RADIUS server. However I strongly recommend adding your permitted AD groups in here too just in case of a configuration error on the RADIUS server. Defense in depth and all that good stuff \ud83d\ude42 Note the failed attempts and lockout time options. Change these as appropriate for your environment.<\/figcaption><\/figure>\n<figure id=\"attachment_2108\" aria-describedby=\"caption-attachment-2108\" style=\"width: 1231px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_44_46-PA-3020-177.png\" rel=\"attachment wp-att-2108\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2108 size-full\" src=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_44_46-PA-3020-177.png\" alt=\"Admin Roles\" width=\"1231\" height=\"243\" srcset=\"https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_44_46-PA-3020-177.png 1231w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_44_46-PA-3020-177-300x59.png 300w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_44_46-PA-3020-177-768x152.png 768w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_44_46-PA-3020-177-1024x202.png 1024w\" sizes=\"auto, (max-width: 1231px) 100vw, 1231px\" \/><\/a><figcaption id=\"caption-attachment-2108\" class=\"wp-caption-text\">Click Device &#8211;&gt; Admin Roles &#8211;&gt; Add. Here you want to create one or more admin groups. As you can see in the example, I created a firewalladmin and firewalladminreadonly group. The read only group is intended to be used by the service desk so only shows the most useful pages. Important: Don&#8217;t forget these names are the ones we used in the network policy in the section above! If you name your groups something else then don&#8217;t forget to change your network policies as appropriate.<\/figcaption><\/figure>\n<figure id=\"attachment_2109\" aria-describedby=\"caption-attachment-2109\" style=\"width: 878px\" class=\"wp-caption alignnone\"><a href=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_52_28-PA-3020-177.png\" rel=\"attachment wp-att-2109\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-2109 size-full\" src=\"http:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_52_28-PA-3020-177.png\" alt=\"Device Authentication Settings\" width=\"878\" height=\"464\" srcset=\"https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_52_28-PA-3020-177.png 878w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_52_28-PA-3020-177-300x159.png 300w, https:\/\/emtunc.org\/blog\/wp-content\/uploads\/2016\/02\/2016-02-26-22_52_28-PA-3020-177-768x406.png 768w\" sizes=\"auto, (max-width: 878px) 100vw, 878px\" \/><\/a><figcaption id=\"caption-attachment-2109\" class=\"wp-caption-text\">Click Device &#8211;&gt; Setup &#8211;&gt; Authentication Settings. Here you want to select the Authentication Profile you created earlier. Note the failed attempts and lockout time options. Change these as appropriate for your environment.<\/figcaption><\/figure>\n<p><strong>Note:<\/strong> Don&#8217;t forget to set the <strong>Device &#8211;&gt; Authentication Settings &#8211;&gt; Authentication Profile<\/strong> on all your Palo&#8217;s as the settings on these pages don&#8217;t sync across to peer devices.<\/p>\n<h3>Other tips<\/h3>\n<ul>\n<li>It is good idea to configure RADIUS accounting to monitor all access attempts<\/li>\n<li>Change your local admin password to a strong, complex one<\/li>\n<li>Monitor your Palo system logs if you&#8217;re having problems using this filter:\n<p>[code]( eventid eq auth-success ) or ( eventid eq auth-fail )[\/code]<\/p>\n<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>In this article I will go through the steps required to implement RADIUS authentication using Windows NPS (Network Policy Server) so that firewall administrators can log-on using domain credentials.<\/p>\n","protected":false},"author":32,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"footnotes":""},"categories":[1],"tags":[229,220,230],"class_list":["post-2094","post","type-post","status-publish","format-standard","hentry","category-tech","tag-nps","tag-palo-alto","tag-radius"],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p1trTO-xM","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/emtunc.org\/blog\/wp-json\/wp\/v2\/posts\/2094","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/emtunc.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/emtunc.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/emtunc.org\/blog\/wp-json\/wp\/v2\/users\/32"}],"replies":[{"embeddable":true,"href":"https:\/\/emtunc.org\/blog\/wp-json\/wp\/v2\/comments?post=2094"}],"version-history":[{"count":12,"href":"https:\/\/emtunc.org\/blog\/wp-json\/wp\/v2\/posts\/2094\/revisions"}],"predecessor-version":[{"id":2120,"href":"https:\/\/emtunc.org\/blog\/wp-json\/wp\/v2\/posts\/2094\/revisions\/2120"}],"wp:attachment":[{"href":"https:\/\/emtunc.org\/blog\/wp-json\/wp\/v2\/media?parent=2094"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/emtunc.org\/blog\/wp-json\/wp\/v2\/categories?post=2094"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/emtunc.org\/blog\/wp-json\/wp\/v2\/tags?post=2094"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}