Windows Server

Network Policy Server NPS – RADIUS Server VPN Uygulaması

Makalemin ilk bölümünde Windows Server işletim sistemi ile beraber gelen Network Policy and Access Services NPAS rolü içerisindeki Network Policy Server NPS, Network Access Protection NAP gibi özellikler ve bu özelliklerin bileşenlerinin tanımlarını yapmıştım. Yani bir hayli tanım ağırlıklı bir makale oldu. Ancak makalemin devamındaki konuların iyi anlaşılabilmesi için ilk makalemin okunmasını tavsiye ederim.

Makalemim bu bölümünde ise NPS rolü için 3 temel kullanımdan birisi olan RADIUS server kurulum ve konfigürasyonunu anlatacağım.

İlk olarak NPS kurulumunu gerçekleştirelim. Benim senaryomda sınırlı sayıda sanal makine açmak için Domain Controller üzerinde NPS rolünü aktif edeceğim, daha sonra bir Server üzerine VPN – RRAS rolünü kurup en son olarak ta bir istemci makineden RADIUS kimlik doğrulama ile VPN yapacağım. Özetle 3 sanal makine ile bu işi tamamlayacağım.

Gerçek hayat senaryolarında lütfen domain controller, CA, Exchange Server ve benzeri alt yapı sunucularına NPS ve benzeri ek rolleri yüklemeyin.

Windows Server Manager üzerinden aşağıdaki role yüklemesini yapıyoruz.

clip_image002

Daha sonra aşağıdaki ekrana kadar ileri tuşuna basabiliriz

clip_image004

Makalemin bu bölümünde NPS üzerinde anlatımlar olacağı için sadece NPS kurulumu ile devam ediyorum. Ancak ilerleyen bölümlerde diğer özellikleri de anlatıyor olacağım.

Yükleme adımı son derece basit. Yükleme bittikten sonra NPS sunucusunu aşağıdaki gibi 3 değişik sunucu rolü için konfigüre edebiliriz.

RADIUS server

NAP policy

RADIUS Proxy

NPS tarafında standart ve gelişmiş olmak üzere iki temel yapılandırma yöntemi vardır. RADIUS ve NAP Policy özelliği için standart veya gelişmiş yapılandırma kullanabilirsiniz ( NPS veya Server Manager konsolu üzerinden). Ancak RADIUS Proxy özelliği için gelişmiş yapılandırmayı kullanmanız gereklidir.

Standart yapılandırma, sihirbaz yardımı ile yapılmaktadır. Gelişmiş yapılandırma ise elle gerçekleştirilen yapılandırma ayarlardır. Standart yapılandırma ile aşağıdaki 3 başlığı sihirbaz yardımı ile yapabilirsiniz

·        NAP policy server

·        RADIUS server for dial-up or VPN connections

·        RADIUS server for 802.1X wireless or wired connections

clip_image006

 

Gelişmiş yapılandırma seçenekleri ise aşağıdaki gibidir

clip_image007

Şimdi bunları daha detaylı olarak inceleyelim.

Öncelikle kurduğumuz NPS rolü için server manager üzerinden araçlar bölümünden yönetim konsolunu açalım

clip_image009

 

Karşımıza aşağıdaki gibi bir ekran çıkacaktır.

clip_image010

İlk olarak NPS sunucumuzu bir RADIUS Server olarak nasıl yapılandıracağız bu adımları görelim.

Remote Authentication Dial-In User Service (RADIUS) Server,  temel olarak RADIUS Client olarak isimlendirdiğimiz Wireless Access Point, Akıllı Switchler, dial-up vpn server ve benzeri istemcilerden gelen kimlik doğrulama ve kimlik yetkilendirme isteklerine cevap vermektedir. NPS sunucusunu da bir RADIUS Server olarak yapılandırabiliriz. Bu bize temel olarak aşağıdaki gibi bir senaryo sağlar.

clip_image012

İstemci makineler Dial-in Server, VPN Server, Wireless Access Point veya 802.1x switch lere kimlik doğrulamak ve yetkilendirme için istekte bulunuyorlar, Access Server olarak ifade ettiğimiz bu sunucular ise RADIUS Server için RADIUS Client rolündedir ve RADIUS Client’ lar kimlik doğrulamak için RADIUS Server’ a yönlendirilmiş durumdadır. Bu senaryoda gelen istekleri NPS yani RADIUS server karşılar ve AD ile eşleştirdikten sonra yetkilendirmeyi gerçekleştirir. Ek olarak gelen tüm hesap bilgileri de veri tabanına kayıt edilmiş olur.

Bu senaryoda NPS Server aşağıdaki iki temel görevi üstlenir

RADIUS istemcilerinden gönderilen tüm kimlik doğrulama ve yetkilendirme hizmetlerini merkezi olarak sunar.

Merkezi olarak tüm bu kimlik doğrulama ve yetkilendirmelerde kullanılan kullanıcı istek bilgilerini kayıt eder.

Mimari tarafı tamamladıktan sonra yapılandırma tarafına geçelim.

NPS Server kurulum adımlarını makalemin başında sizler ile paylaşmıştım. Şimdi kurulu olan bu NPS için yetkilendirme işlemlerini yapalım.

clip_image013

Bunun için NPS sunucusu üzerine sağ tıklıyor ve “Register server in Active Directory” linkine tıklıyoruz.

clip_image014

Yukarıda da gördüğünüz gibi NPS’ in AD kullanıcılarının dial-in özelliğini okuyabilmeleri için yeki vermiş olduk.

Şimdi ise bu RADIUS sunucusu ile konuşacak RADIUS istemcileri ile güvenli bir iletişim kurmak için kullanacağımız ortak anahtarı belirleyelim.

clip_image015

Templates Management altında yer alan Shared Secrets üzerine sağ tıklayarak yeni bir tane shared secret oluşturuyoruz.

clip_image016

Hangi amaç veya cihazlar için kullanacağımıza dair bir isim veriyoruz ve sonrasında elle veya otomatik bir şifre tanımlanmasını sağlıyoruz. Ben kendi şifremi kendim tanımladım.

Şimdi ise VPN Sunucusunu RADIUS client olarak tanımlamak için bir şablon hazırlayalım. Siz isterseniz direkt olarak RADIUS client ekleyebilirsiniz. Ben önce bir şablon oluşturup daha sonra bunu VPN client olarak ekleyeceğim.

VPN sunucunuzu henüz hazırlamış olmanız gerekli değildir, ancak VPN sunucusu ip adresini biliyor olmanız bu aşamada yeterlidir.

clip_image017

Aynı bölümde bir alt seçenek olan RADIUS client bölümünde yeni bir istemci ekliyoruz.

clip_image018

VPN Server ip adresi, tanımlayıcı bir isim ve önceden tanımladığımız ortak anahtarı seçiyorum.

Şimdi ise sıra RADIUS sunucusuna gelen kimlik doğrulama ve yetkilendirme isteklerinin nasıl kayıt altına alınacağının ayarlanmasın geldi. Bunun için NPS ekranında Accounting bölümüne geliyoruz.

clip_image019

Configure Accounting linkine tıklıyoruz.

clip_image020

Eğer bir SQL sunucunuz var ise logları bunun üzerinde saklayabilirsiniz. Bende hazır bir sunucu olmadığı için local makine üzerinde text dosyası olarak saklayacağım.

clip_image021

Hangi tür isteklerin loglarının alacağımı, hangi dizine alacağımı seçiyorum. Ek olarak loglama yapılamazsa ise bu bağlantı isteğini kabul etmemek için varsayılan olarak gelen ayarı da aynen bırakıyorum. Ortamınız için eğer kararlı bir disk yazma durumu yok ise bu en alt bölümdeki kutucuğu kaldırabilirsiniz. Veya loglama için sql kullandığınız senaryolarda bazen sql server erişimi yapılamaz ve bu durumda aslında vpn de çalışmaz duruma düşer.

Şimdi ise sıra NPS sunucu için gerçekten bir RADIUS client tanımlamaya geldi. Ben önceden bir şablon hazırladığım için aşağıdaki menüden kolaylıkla bu işlemi tamamlayacağım.

clip_image022

 

clip_image023

NPS tarafı şimdilik hazır. Sıra VPN Server kurulumnda.

VPN Server kurulumu için Server Manager üzerinden aşağıdaki sunucu rolünü yüklüyoruz

clip_image024

Bu kutucuğu işaretledikten birkaç adım sonra aşağıdaki gibi Remote Access sunucu rolü için alt bileşenler çıkıyor.

clip_image025

Ben bu senaryomda sadece VPN kullanacağım için ilk kutucuğu işaretleyerek ilerliyorum.

Bu kutucuğu işaretlediğim zaman çıkan ek ekrandaki bileşenlerinde yüklenmesini kabul ediyor ve yükleme işlemini tamamlıyorum

Yükleme işlemi tamamlandıktan sonra ilgili sunucu rolü için yapılandırma sihirbazını açarak ilerlememiz gerekiyor. Server Manager ana ekranında da bu konuda bir uyarı görebilirsiniz.

clip_image026

Open the Getting Started Wizard diyerek sihirbazı çalıştırıyoruz.

clip_image027

Ben en alttaki seçeneği yani “Deploy VPN only” bölümüne tıklıyorum.

 

clip_image028

Tıkladıktan sonra Routing and Remote Access konsolu açılıyor, konsol içerisinde sunucu ismimin üzerine sağ tıklıyorum ve “Configure and Enable Routing and Remote Access” bölümüne tıklıyorum.

clip_image029

VPN bölümünü seçiyorum

clip_image030

Tekrar VPN özelliğini seçiyorum

clip_image031

VPN Server olacak makine de iki interface olması gereklidir. Benim VPN sunucumda da iki interface yer almaktadır. Bu bölümde internete bakan bacağı seçiyorum, ek olarak alttaki kutucuğu kaldırıyorum ki port bazlı izinler vermek için ilerleyen bölümlerde ek işlemler yapmak istemiyorum. Zaten bu interface için bu sunucu önünde bir firewall olduğundan ek bir güvenlik önlemi istemiyorum.

clip_image032

İçeride bir DHCP server olduğu için IP adreslerini VPN istemcilerinin otomatik almasını istiyorum.

clip_image033

Bu bölüme yes diyerek RADIUS server tanımı yapacağımı belirtiriyorum.

clip_image034

RADIUS server ip adresi ve VPN şablonunda kullandığım şifreyi yazıyorum.

 

clip_image035

VPN istemcilerinin bu dış bacak üzerinden yapacakları IP isteklerine cevap vermesi için DHCP üzerinde Relay Agent ayarı yapmam gerektiğini hatırlatıyor.

 Son durumda aşağıdaki gibi yeşil bir ok görmeliyiz

clip_image036

Şimdi ise tekrar NPS sunucusuna dönerek Network Policy tanımlamamız gereklidir.

clip_image037

Öncelikle Network Policies kısmında mevcut policylerin üzerine sağ tıklarak Disable konumuna getiriyoruz. Daha sonra yeni bir policy oluşturuyoruz.

clip_image038

Policy için bir isim ve hangi network erişim yöntemini – sunucusu için kuralı yazacağımızı seçiyoruz.

clip_image039

Bağlantı isteği için durum tanımlayacağız. Add diyoruz.

clip_image040

Açılan menüden pek çok seçenekten size en uygununu seçebilirsiniz. Ben NAS Port Type durumunu seçiyorum.

clip_image041

Add dediğimde açılan menüde ise VPN’ i seçiyorum ve son durum aşağıdaki gibi oluyor

clip_image042

İlerliyorum.

clip_image043

Bu şartın sağlanması durumunda network policy olarak hangi aksiyonu uygulayacağımı belirliyorum. Ben VPN istekleri gelir ise bu isteklerin network e erişmesini istiyorum.

clip_image044

Bu bölümde ise bağlantı istekleri için kimlik doğrulama yöntemlerini şart koşabilirsiniz. Yani eğer VPN, 802.1x veya benzeri access sunucularından gelen isteklerin karşılıklı olarak hem NPS sunucusu hem de istemci için doğrulanmasını istiyorsanız (mutual Authentication) bu durumda sertifika destekli kimlik doğrulama protokollerinden birini seçebilirsiniz. Eğer bu seçimi yapacaksanız bir CA sunucunuz, NPS için Server Authentication amacı ile üretilmiş ( şablonu ) bir server sertifikası, network access sunucusuna istek gönderek istemciler için de yine Client Authentication amacı ile üretilmiş istemci sertifikası dağıtmanız gereklidir. Ben bu sertifika süreçlerini atlamak adına olduğu gibi yani mevcut kimlik doğrulama protokolleri ile ilerliyorum.

clip_image045

Bu bölümde mevcut policy için ek şartlar tanımlayabilirsiniz. Örneğin bu policy sadece günün veya haftanın şu saatlerinde aktif olsun gibi. Bu bölümü de olduğu gibi bırakıp geçiyorum.

clip_image046

Bu bölümde ise yine ilgili bağlantı için yapabileceğimiz ek ayarları görüyoruz. Örneğin bu şartlar sağlnır ise direkt olarak network erişimi yerine sınırlı bir erişim ve bu sınırlı erişim durumunu düzeltmek için erişmesi gereken Remedation server dediğimiz yama sunucusu, av update sunucusu yada Domain Controller, DNS sunucu larını tanımlayabiliriz. Ben bu tür tanımlamaları da yapmıyorum, çünkü bu şartları sağlayan bağlantıların network e tam erişimini istiyorum.

clip_image047

Son olarak yaptığımız Policy için özet bir ekran görüntüsü alıyoruz.

clip_image048

Son adım ise artık istemci bilgisayar üzerinden VPN yapmak.

clip_image050

İstemci bilgisayarında yeni bir VPN bağlantısı oluşturuyoruz.

clip_image051

 

clip_image052

 

clip_image053

Bu bölümdeki ip adresi VPN server dış bacak ip adresi olmalıdır, bu muhtemel bir modem veya firewall olup VPN portları VPN server için yönlendirilmiş olmalıdır.

Daha sonra oluşturduğumuz VPN bağlantısının özelliklerine giriyoruz

clip_image054

clip_image055

Tunel tipini PPTP ve kimlik doğrulamak için de MS-CHAP-v2 yi seçiyoruz.

clip_image056

Daha sonra bu bağlantı üzerine sağ tıklayarak connect diyoruz, yukarıdaki gibi açılan ekrandan kullanıcı kimlik bilgimizi giriyoruz.

clip_image058

Gördüğünüz gibi sorunsuz bir şekilde bağlantı gerçekleşiyor.

DHCP üzerinde ek bir ayar yapmadan ip aldığını da görüyorum

clip_image059

Şimdi mevcut durumdaki policy üzerinde birkaç oynama yapalım.

Öncelikle herhangi bir kullanıcı ile VPN yapabildiğinizi kontrol ediniz

clip_image060

 

Daha sonra ise policy üzerinde sadece VPN grubu üyeleri için izin verip serkan’ ı üye yapalım ama hakan kullanıcısını yapmayalım ve bir daha deneyelim.

clip_image061

Mevcut policy özelliklerinden duruma gelelim

clip_image062

Mevcut duruma add diyerek vpn grubunu seçelim

clip_image063

 

clip_image064

Şimdi serkan ve hakan ile yine bağlanmayı deneyin.

Serkan başarılı bir şekilde bağlanırken hakan için aşağıdaki gibi bir hata alırsınız

clip_image065

 

Bu şekilde policy tarafında farklı şartların ve durumların sağlanması koşulu ile network erişimi izni veren policy örnekleri çoğaltmak sizin elinizde.

Makalemin bu bölümünün de sonuna geldim, umarım faydalı olmuştur.

Hakan Uzuner

2002 yılından beri aktif olarak bilişim sektöründe çalışmaktayım. Bu süreç içerisinde özellikle profesyonel olarak Microsoft teknolojileri üzerinde çalıştım. Profesyonel kariyerim içerisinde eğitmenlik, danışmanlık ve yöneticilik yaptım. Özellikle danışmanlık ve eğitmenlik tecrübelerimden kaynaklı pek çok farklı firmanın alt yapısının kurulum, yönetimi ve bakımında bulundum. Aynı zamanda ÇözümPark Bilişim Portalı nın Kurucusu olarak portal üzerinde aktif olarak rol almaktayım. Profesyonel kariyerime ITSTACK Bilgi Sistemlerinde Profesyonel Hizmetler Direktörü olarak devam etmekteyim.

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu