بیایید در عمل استفاده از Windows Active Directory + NPS (2 سرور برای تحمل خطا) + استاندارد 802.1x برای کنترل دسترسی و احراز هویت کاربران - رایانه های دامنه - دستگاه ها را در نظر بگیریم. با تئوری طبق استاندارد موجود در ویکی پدیا می توانید در لینک زیر آشنا شوید:
از آنجایی که «آزمایشگاه» من از نظر منابع محدود است، نقشهای NPS و کنترلکننده دامنه سازگار هستند، اما توصیه میکنم چنین سرویسهای حیاتی را جدا کنید.
من راههای استاندارد برای همگامسازی تنظیمات (خطمشیهای) Windows NPS را نمیدانم، بنابراین از اسکریپتهای PowerShell که توسط زمانبندی کار راهاندازی شدهاند استفاده میکنیم (نویسنده همکار سابق من است). برای احراز هویت رایانه های دامنه و برای دستگاه هایی که نمی دانند چگونه 802.1x (تلفن ها، چاپگرها و غیره)، خط مشی گروه پیکربندی می شود و گروه های امنیتی ایجاد می شوند.
در پایان مقاله من در مورد برخی از پیچیدگی های کار با 802.1x صحبت خواهم کرد - چگونه می توانید از سوئیچ های مدیریت نشده، ACL های پویا و غیره استفاده کنید. من اطلاعاتی در مورد "اشکالات" گرفتار شده به اشتراک خواهم گذاشت ...
بیایید با نصب و پیکربندی Failover NPS در Windows Server 2012R2 (در سال 2016 همه چیز یکسان است) شروع کنیم: از طریق Server Manager -> Add Roles and Features Wizard، فقط Network Policy Server را انتخاب کنید.
یا با PowerShell:
Install-WindowsFeature NPAS -IncludeManagementTools
یک توضیح کوچک - در مورد EAP محافظت شده (PEAP) شما قطعاً به گواهی تأیید صحت سرور (با حقوق مناسب برای استفاده) نیاز دارید که در رایانه های مشتری قابل اعتماد باشد، سپس به احتمال زیاد باید نقش را نصب کنید. مرجع صدور گواهینامه. اما ما این را فرض خواهیم کرد CA شما قبلا نصب کرده اید...
بیایید همین کار را در سرور دوم انجام دهیم. بیایید یک پوشه برای اسکریپت C:Scripts در هر دو سرور و یک پوشه شبکه در سرور دوم ایجاد کنیم. SRV2NPS-config$
بیایید یک اسکریپت PowerShell در سرور اول ایجاد کنیم C:ScriptsExport-NPS-config.ps1 با محتوای زیر:
Export-NpsConfiguration -Path "SRV2NPS-config$NPS.xml"
پس از آن، کار را در Task Scheduler تنظیم کنید:Export-NpsConfiguration"
powershell -executionpolicy unrestricted -f "C:ScriptsExport-NPS-config.ps1"
اجرا برای همه کاربران - اجرا با بالاترین امتیازات
روزانه - کار را هر 10 دقیقه تکرار کنید. در عرض 8 ساعت
در NPS پشتیبان، پیکربندی (خط مشی) واردات را پیکربندی کنید:
یک اسکریپت PowerShell ایجاد کنید:
echo Import-NpsConfiguration -Path "c:NPS-configNPS.xml" >> C:ScriptsImport-NPS-config.ps1
و یک کار برای اجرای آن هر 10 دقیقه:
powershell -executionpolicy unrestricted -f "C:ScriptsImport-NPS-config.ps1"
اجرا برای همه کاربران - اجرا با بالاترین امتیازات
روزانه - کار را هر 10 دقیقه تکرار کنید. در عرض 8 ساعت
اکنون، برای تأیید، اجازه دهید به NPS در یکی از سرورها (!) چند سوئیچ در کلاینت های RADIUS (IP و Shared Secret)، دو خط مشی درخواست اتصال اضافه کنیم: اتصال سیمی (شرط: "نوع پورت NAS اترنت باشد") و WiFi-Enterprise (شرط: "نوع پورت NAS IEEE 802.11 است") و خط مشی شبکه دسترسی به دستگاه های شبکه سیسکو (مدیران شبکه):
Условия:
Группы Windows - domainsg-network-admins
Ограничения:
Методы проверки подлинности - Проверка открытым текстом (PAP, SPAP)
Параметры:
Атрибуты RADIUS: Стандарт - Service-Type - Login
Зависящие от поставщика - Cisco-AV-Pair - Cisco - shell:priv-lvl=15
در سمت سوئیچ، تنظیمات زیر انجام می شود:
aaa new-model
aaa local authentication attempts max-fail 5
!
!
aaa group server radius NPS
server-private 192.168.38.151 auth-port 1812 acct-port 1813 key %shared_secret%
server-private 192.168.10.151 auth-port 1812 acct-port 1813 key %shared_secret%
!
aaa authentication login default group NPS local
aaa authentication dot1x default group NPS
aaa authorization console
aaa authorization exec default group NPS local if-authenticated
aaa authorization network default group NPS
!
aaa session-id common
!
identity profile default
!
dot1x system-auth-control
!
!
line vty 0 4
exec-timeout 5 0
transport input ssh
escape-character 99
line vty 5 15
exec-timeout 5 0
logging synchronous
transport input ssh
escape-character 99
پس از تنظیم، پس از 10 دقیقه، تمام تنظیمات خط مشی باید در NPS پشتیبان ظاهر شود و ما می توانیم با استفاده از حساب ActiveDirectory، عضوی از گروه domainsg-network-admins (که از قبل ایجاد کرده ایم) وارد سوئیچ ها شویم.
بیایید به پیکربندی Active Directory برویم - یک گروه و خط مشی رمز عبور ایجاد کنید، گروه های لازم را ایجاد کنید.
خط مشی گروه Computers-8021x-Settings:
Computer Configuration (Enabled)
Policies
Windows Settings
Security Settings
System Services
Wired AutoConfig (Startup Mode: Automatic)
Wired Network (802.3) Policies
NPS-802-1x
Name NPS-802-1x
Description 802.1x
Global Settings
SETTING VALUE
Use Windows wired LAN network services for clients Enabled
Shared user credentials for network authentication Enabled
Network Profile
Security Settings
Enable use of IEEE 802.1X authentication for network access Enabled
Enforce use of IEEE 802.1X authentication for network access Disabled
IEEE 802.1X Settings
Computer Authentication Computer only
Maximum Authentication Failures 10
Maximum EAPOL-Start Messages Sent
Held Period (seconds)
Start Period (seconds)
Authentication Period (seconds)
Network Authentication Method Properties
Authentication method Protected EAP (PEAP)
Validate server certificate Enabled
Connect to these servers
Do not prompt user to authorize new servers or trusted certification authorities Disabled
Enable fast reconnect Enabled
Disconnect if server does not present cryptobinding TLV Disabled
Enforce network access protection Disabled
Authentication Method Configuration
Authentication method Secured password (EAP-MSCHAP v2)
Automatically use my Windows logon name and password(and domain if any) Enabled
یک گروه امنیتی ایجاد کنید sg-computers-8021x-vl100، جایی که کامپیوترهایی را که می خواهیم به vlan 100 توزیع کنیم اضافه می کنیم و فیلترینگ را برای خط مشی گروه ایجاد شده قبلی برای این گروه تنظیم می کنیم:
میتوانید با باز کردن «مرکز شبکه و اشتراکگذاری (تنظیمات شبکه و اینترنت) - تغییر تنظیمات آداپتور (پیکربندی تنظیمات آداپتور) - ویژگیهای آداپتور»، که در آنجا میتوانیم برگه «احراز هویت» را مشاهده کنیم، مطمئن شوید که این خطمشی با موفقیت کار کرده است:
هنگامی که متقاعد شدید که این خط مشی با موفقیت اعمال شده است، می توانید به پیکربندی خط مشی شبکه در پورت های سوئیچ NPS و سطح دسترسی ادامه دهید.
بیایید یک خط مشی شبکه ایجاد کنیم negag-computers-8021x-vl100:
Conditions:
Windows Groups - sg-computers-8021x-vl100
NAS Port Type - Ethernet
Constraints:
Authentication Methods - Microsoft: Protected EAP (PEAP) - Unencrypted authentication (PAP, SPAP)
NAS Port Type - Ethernet
Settings:
Standard:
Framed-MTU 1344
TunnelMediumType 802 (includes all 802 media plus Ethernet canonical format)
TunnelPrivateGroupId 100
TunnelType Virtual LANs (VLAN)
تنظیمات معمولی برای پورت سوئیچ (لطفا توجه داشته باشید که از نوع احراز هویت "چند دامنه" استفاده می شود - Data & Voice، و همچنین امکان احراز هویت با آدرس مک وجود دارد. در طول "دوره انتقال"، استفاده در پارامترها:
authentication event fail action authorize vlan 100
authentication event no-response action authorize vlan 100
شناسه vlan "قرنطینه" نیست، بلکه همان چیزی است که کامپیوتر کاربر باید پس از ورود موفقیت آمیز به سیستم وارد شود - تا زمانی که مطمئن شویم همه چیز همانطور که باید کار می کند. از همین پارامترها می توان در سناریوهای دیگر استفاده کرد، به عنوان مثال، زمانی که یک سوئیچ مدیریت نشده به این پورت وصل می شود و می خواهید همه دستگاه ها به آن متصل شوند و احراز هویت نشده باشند تا در یک vlan خاص قرار بگیرند ("قرنطینه").
تنظیمات پورت را در حالت میزبان 802.1x حالت چند دامنه ای تغییر دهید
default int range Gi1/0/39-41
int range Gi1/0/39-41
shu
des PC-IPhone_802.1x
switchport mode access
switchport nonegotiate
switchport voice vlan 55
switchport port-security maximum 2
authentication event fail action authorize vlan 100
authentication event no-response action authorize vlan 100
authentication host-mode multi-domain
authentication port-control auto
authentication violation restrict
mab
dot1x pae authenticator
dot1x timeout quiet-period 15
dot1x timeout tx-period 3
storm-control broadcast level pps 100
storm-control multicast level pps 110
no vtp
lldp receive
lldp transmit
spanning-tree portfast
no shu
exit
با دستور زیر می توانید مطمئن شوید که تلفن کامپیوتر با موفقیت احراز هویت را پشت سر گذاشته است:
sh authentication sessions int Gi1/0/39 det
حالا بیایید یک گروه ایجاد کنیم (مثلا sg-fgpp-mab ) در اکتیو دایرکتوری برای گوشی ها و یک دستگاه تست به آن اضافه کنید (در مورد من، این است Grandstream GXP2160 با آدرس ماس 000b.82ba.a7b1 و acc. حساب دامنه 00b82baa7b1).
برای گروه ایجاد شده، الزامات خط مشی رمز عبور (با استفاده از
این به ما امکان می دهد تا از آدرس mas-دستگاه ها به عنوان رمز عبور استفاده کنیم. پس از آن می توانیم یک خط مشی شبکه برای احراز هویت mab به روش 802.1x ایجاد کنیم، اجازه دهید آن را neag-devices-8021x-voice بنامیم. پارامترها به شرح زیر است:
- نوع پورت NAS - اترنت
- گروه های ویندوز - sg-fgpp-mab
- انواع EAP: احراز هویت رمزگذاری نشده (PAP، SPAP)
- ویژگی های RADIUS - فروشنده خاص: Cisco - Cisco-AV-Pair - مقدار مشخصه: device-traffic-class=voice
پس از احراز هویت موفق (فراموش نکنید که پورت سوئیچ را پیکربندی کنید)، بیایید اطلاعات پورت را ببینیم:
احراز هویت sh int Gi1/0/34
----------------------------------------
Interface: GigabitEthernet1/0/34
MAC Address: 000b.82ba.a7b1
IP Address: 172.29.31.89
User-Name: 000b82baa7b1
Status: Authz Success
Domain: VOICE
Oper host mode: multi-domain
Oper control dir: both
Authorized By: Authentication Server
Session timeout: N/A
Idle timeout: N/A
Common Session ID: 0000000000000EB2000B8C5E
Acct Session ID: 0x00000134
Handle: 0xCE000EB3
Runnable methods list:
Method State
dot1x Failed over
mab Authc Success
اکنون، همانطور که وعده داده شده بود، چند موقعیت کاملاً واضح را در نظر بگیرید. به عنوان مثال، ما باید کامپیوترها و دستگاه های کاربران را از طریق یک سوئیچ مدیریت نشده (سوئیچ) متصل کنیم. در این حالت تنظیمات پورت برای آن به صورت زیر خواهد بود:
تغییر تنظیمات پورت در حالت میزبان 802.1x حالت چند تأییدیه
interface GigabitEthernet1/0/1
description *SW – 802.1x – 8 mac*
shu
switchport mode access
switchport nonegotiate
switchport voice vlan 55
switchport port-security maximum 8 ! увеличиваем кол-во допустимых мас-адресов
authentication event fail action authorize vlan 100
authentication event no-response action authorize vlan 100
authentication host-mode multi-auth ! – режим аутентификации
authentication port-control auto
authentication violation restrict
mab
dot1x pae authenticator
dot1x timeout quiet-period 15
dot1x timeout tx-period 3
storm-control broadcast level pps 100
storm-control multicast level pps 110
no vtp
spanning-tree portfast
no shu
PS یک اشکال بسیار عجیب مشاهده شد - اگر دستگاه از طریق چنین سوئیچ وصل شده باشد، و سپس به یک سوئیچ مدیریت شده وصل شود، تا زمانی که سوئیچ را راه اندازی مجدد نکنیم (!) کار نخواهد کرد. من راه های دیگری برای حل آن پیدا نکرده ام. این مشکل.
نکته دیگر مربوط به DHCP (در صورت استفاده از ip dhcp snooping) - بدون این گزینه ها:
ip dhcp snooping vlan 1-100
no ip dhcp snooping information option
به دلایلی، من نمی توانم آدرس IP صحیح را دریافت کنم ... اگرچه این ممکن است یکی از ویژگی های سرور DHCP ما باشد
همچنین، سیستم عامل مک و لینوکس (که در آن پشتیبانی 802.1x بومی است) سعی میکنند تا کاربر را احراز هویت کنند، حتی اگر احراز هویت توسط مک آدرس پیکربندی شده باشد.
در قسمت بعدی مقاله، استفاده از 802.1x را برای Wireless در نظر خواهیم گرفت (بسته به گروهی که حساب کاربری به آن تعلق دارد، آن را به شبکه مناسب (vlan) "پرتاب" می کنیم، اگرچه آنها به شبکه متصل می شوند. همان SSID).
منبع: www.habr.com