🛜 Port-based Authentication 🛜


ℹ️ Giới thiệu
- Ở bài viết này, mình sẽ thực hiện xây dựng một hệ thống NPS (Network Policy System) trên một RADIUS Server, từ đó sẽ áp dụng cơ chế port-based authentication để xác thực người dùng thông qua RADIUS Client.
🔍 Port-based authentication là gì ?
Port-based authentication là một cơ chế bảo mật mạng dựa trên tiêu chuẩn IEEE 802.1X nhằm kiểm soát quyền truy cập vào các cổng mạng dựa trên danh tính của người dùng hoặc thiết bị. Phương pháp này thường được áp dụng để tăng cường bảo mật trong các hệ thống mạng nội bộ như doanh nghiệp, tổ chức giáo dục, và mạng không dây. Dưới đây là chi tiết về port-based authentication:
1. Các Thành Phần Chính
Supplicant: Thiết bị yêu cầu kết nối mạng (ví dụ: máy tính, điện thoại di động).
Authenticator: Thiết bị điều khiển quyền truy cập vào mạng, thường là switch hoặc điểm truy cập không dây (AP).
Authentication Server: Máy chủ xác thực, thường là RADIUS server, chịu trách nhiệm xác thực danh tính và thông tin của người dùng.
2. Cơ Chế Hoạt Động
Khi thiết bị cố gắng kết nối vào mạng, authenticator (ví dụ: cổng của switch) sẽ yêu cầu xác thực từ supplicant.
Supplicant gửi thông tin xác thực (ví dụ: tên người dùng và mật khẩu) đến authenticator, sau đó thông tin này được chuyển tiếp tới authentication server.
Authentication server sẽ kiểm tra thông tin và phản hồi với authenticator để cấp quyền truy cập hoặc từ chối.
3. Cấu Hình Port-Based Authentication
Trên switch, bạn có thể bật 802.1X trên các cổng nhất định và cấu hình chúng để giao tiếp với RADIUS server.
Các chính sách truy cập có thể được điều chỉnh theo từng cổng hoặc VLAN, cho phép linh hoạt trong việc hạn chế quyền truy cập vào các tài nguyên của mạng.
🔍 RADIUS Server là gì ?
- RADIUS (Remote Authentication Dial-In User Service) Server là một hệ thống máy chủ xác thực phổ biến được sử dụng trong các mạng để quản lý và xác thực người dùng hoặc thiết bị truy cập vào mạng. RADIUS Server đảm bảo rằng chỉ những người dùng hoặc thiết bị được cấp quyền mới có thể truy cập vào các tài nguyên của mạng.
💻 Xây dựng mô hình
- Để thực hiện triển khai port-based authentication, mình cần setup một mô hình đơn giản như sau:
- Trong đó, máy Windows Server đã được cài đặt các Roles:
AD DS
,AD CS
,DHCP
,DNS
vàNPS
.
🛠️ Triển khai mô hình
Cài đặt DHCP Scope cho VLAN1
Ta sẽ bắt đầu với việc tạo một
DHCP Scope
cho VLAN1, việc này nhằm mục đích cấp IP cho các thiết bị sau khi đã thành công xác thực bằng Port-based authenticaion.Chọn Tools → DHCP.
- Chuột phải vào IPv4, chọn New Scope → Next.
- Nhập tên bạn muốn đặt cho Scope.
- Nhập địa chỉ IP bắt đầu và kết thúc cho DHCP Scope.
- Mục này sẽ khai báo các IP mà DHCP sẽ không phát cho Clients, bạn có thể để trống và Next luôn. Mục này sẽ được sử dụng trong trường hợp bạn muốn một khoảng IP nào đó sẽ được dự trữ lại cho các thiết bị nội bộ như Printers, Servers, Cameras, …
- Mục Lease Duration này sẽ quyết định thời gian mà một thiết bị có thể sử dụng IP trong mạng. Có thể để mặc định là 8 ngày và Next.
- Chọn yes để thực hiện cấu hình DHCP luôn nhé.
- Nhập vào IP của Switch (ở đây mình để
192.168.1.1
) → Add → Next.
- Phần này khai báo DNS Server cho các thiết bị sẽ được cấp IP, có thể Next luôn.
- Phần WINS này được dùng ở các hệ thống mạng cũ hơn, hiện nay đã không còn phổ biến nữa, có thể Next luôn. Về cơ bản thì WINS này sẽ phân giải tên NetBIOS ra IP và ngược lại.
- Chọn Yes, và Next luôn để khởi động DHCP Scope vừa tạo.
- Ra được như hình là OK.
Tạo User và Group
- Phần này mình cần tạo ra Group và User để thực hiện xác thực. Ở đây mình đã tạo sẵn một User
admin1
thuộc GroupADMIN
.
Cấu hình NPS
Sau khi đã tạo xong DHCP Scope, ta sẽ tiến hành khai báo RADIUS Client và cấu hình Policies cho việc xác thực.
Chọn Tools, chọn Network Policy Server.
Chuột phải vào NPS (Local) chọn Register server in Active Directory để khai báo NPS này cho AD.
- Chọn OK cho đến hết.
- Có thể kiểm tra NPS đã được register với AD hay chưa bằng lệnh sau:
netsh ras add registeredserver
- Ra được output như sau là đã register thành công.
Registration completed successfully:
Remote Access Server: TAINGUYEN
Domain: neyugniat.local
Tiếp theo sẽ khai báo RADIUS Client cho RADIUS Server.
Chuột phải vào RADIUS Client → chọn New.
- Cấu hình như sơ đồ đã xây dựng. Phần
Friendly Name
không nhất thiết phải đặt theo mô hình nhé.
- Nhập vào và ghi nhớ mật mã bí mật để tí nữa thiết lập trên Switch.
- Chọn qua tab Advances → chọn Cisco → OK.
- Vậy là đã khai báo xong
RADIUS Client
trên máyRADIUS Server
.
- Bây giờ ta sẽ cấu hình policy.
- Chọn Secure Wired (Ethernet) Connections.
- Do mình đã thêm SW3 làm RADIUS Client từ trước đó, nên giờ mình không cần phải thêm nữa.
- Chọn giao thức xác thực mà bạn muốn sử dụng, ở đây mình sẽ chọn PEAP.
- Ở bước này sẽ chọn Group
ADMIN
cho riêng việc xác thực trong policy này.
- Next cho đến khi hoàn thành.
- Vậy là đã xong phần policy.
Cấu hình cho Switch
- Cài đặt IP cho VLAN1.
SW3#conf t
SW3(config)#int vlan 1
SW3(config-if)#ip address 192.168.1.1 255.255.255.0
SW3(config-if)#ip helper-address 192.168.1.10
SW3(config-if)#exit
- Kích hoạt aaa và khai báo RADIUS Server.
SW3(config)#aaa new-model
SW3(config)#aaa authentication dot1x default group radius
SW3(config)#dot1x system-auth-control
SW3(config)#radius-server host 192.168.1.10 auth-port 1812 acct-port 1813 key 123
- Cấu hình port-based trên e0/1.
SW3(config)#int e0/1
SW3(config-if)#switchport mode access
SW3(config-if)#dot1x port-control auto
SW3(config-if)#dot1x pae authenticator
SW3(config-if)#authentication port-control auto
SW3(config-if)#dot1x host-mode multi-host
SW3(config-if)#no shutdown
- Như vậy là đã xong phần cấu hình trên Switch.
Cấu hình Client
Trên Client, ta cần phải bật chế độ xác thực 802.1x, vì mặc định thì chế độ này bị tắt.
Mở hộp thoại
run
và gõservices.msc
.
- Tìm tới dòng
Wired AutoConfig
. Chuột phải chọn Properties.
- Chọn Automatic và Start. Nếu có hiện ra hộp thoại đăng nhập thì cứ tắt đi nhé, sau khi xong bước tiếp theo thì bạn có thể đăng nhập bình thường.
- Vào phần Network Connections, chuột phải vào Network Adapter và chọn Properties. Qua tab Authentication chọn Settings.
- Cấu hình như hình dưới sau đó chọn OK.
- Chọn Additional Settings.
- Chọn như hình. Sau đó OK.
- Ngay sau đó, windows sẽ hiện ra một hộp thoại như dưới. Nếu không có hộp thoại thì bạn có thể thử Disable sau đó Enable trở lại.
Mình sẽ thực hiện điền thông tin đăng nhập cho
admin1
thuộc GroupADMIN
mà mình đã tạo từ trước. Sau đó thì đợi cho quá trình xác thực hoàn thành.
Client đã xác thực thành công và nhận được IP từ DHCP Scope.
Ở phía Server cũng đã ghi nhận lại log cấp quyền cho Client trong Event Vỉewer.
- Thực hiện kiểm tra kết nối từ máy Client tới máy Server.
Về cơ bản thì kết nối đã được thiết lập.
Ở phần sau của bài này thì mình sẽ làm về dynamic VLAN dựa trên port-based authenticaion.
Subscribe to my newsletter
Read articles from Nguyễn Tài Nguyên directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Nguyễn Tài Nguyên
Nguyễn Tài Nguyên
In search of the Great Manifesto