RADIUS服務器軟件可以從多個地方獲得猜旬。在本文中译柏,我將使用 FreeRADIUS搭建RADIUS服務唐全,本文將介紹兩種搭建方法
RADIUS介紹
遠程用戶撥入驗證服務(RADIUS, Remote Authentication Dial In User Service)是一個AAA協(xié)議割以,通常用于網(wǎng)絡訪問、或流動IP服務本讥,適用于局域網(wǎng)及漫游服務珊泳。
RADIUS協(xié)議包括RADIUS驗證協(xié)議(對應AAA的驗證和授權)和RADIUS記賬協(xié)議,分別定義于IETF RFC 2865和RFC 2866拷沸。
什么是AAA協(xié)議色查?
AAA是認證(Authentication)、授權(Authorization)和計費(Accounting)的簡稱撞芍,是網(wǎng)絡安全中進行訪問控制的一種安全管理機制秧了,提供認證、授權和計費三種安全服務序无。
AAA提供的安全服務具體是指:
- 認證(Authentication):是對用戶的身份進行驗證验毡,判斷其是否為合法用戶。
- 授權(Authorization):是對通過認證的用戶帝嗡,授權其可以使用哪些服務晶通。
- 計費(Accounting):是記錄用戶使用網(wǎng)絡服務的資源情況,這些信息將作為計費的依據(jù)哟玷。
首先狮辽,認證部分提供了對用戶的認證。整個認證通常是采用用戶輸入用戶名與密碼來進行權限審核巢寡。認證的原理是每個用戶都有一個唯一的權限獲得標準喉脖。由AAA服務器將用戶的標準同數(shù)據(jù)庫中每個用戶的標準一一核對。如果符合抑月,那么對用戶認證通過树叽。如果不符合,則拒絕提供網(wǎng)絡連接谦絮。
其次菱皆,用戶要通過授權來獲得操作相應任務的權限。比如挨稿,登錄系統(tǒng)后,用戶可能會執(zhí)行一些命令來進行操作京痢。這時奶甘,授權過程會檢測用戶是否擁有執(zhí)行這些命令的權限。簡單而言祭椰,授權過程是一系列強迫策略的組合臭家,包括:確定活動的種類或質量疲陕、資源或者用戶被允許的服務有哪些。授權過程發(fā)生在認證上下文中钉赁,一旦用戶通過了認證蹄殃,他們也就被授予了相應的權限。
最后你踩,計費這一過程將會計算用戶在連接過程中消耗的資源數(shù)目诅岩。這些資源包括連接時間或者用戶在連接過程中的收發(fā)流量等等〈ぃ可以根據(jù)連接過程的統(tǒng)計日志吩谦、用戶信息、授權控制膝藕、賬單式廷、趨勢分析、資源利用以及容量計劃活動來執(zhí)行計費過程芭挽。
yum 部署流程
1滑废、yum install -y freeradius-utils freeradius
2、部署完成 袜爪,啟動FreeRadius調試模式蠕趁。
radiusd -X
正常情況返回
可能出現(xiàn)的異常情況
端口被占用了,查看是誰占用了1812端口 輸入命令:ss -ulnp
干掉:pkill radiusd 再重新啟動就可以了饿敲。
1妻导、添加用戶并進行測試
按照官方文檔的測試方法,在文件 /etc/raddb/users 的末尾添加:
testing Cleartext-Password := "password123"
其中: testing 是用戶名, password123 是明文格式的密碼.
接下來用radtest來測試服務器:
radtest testing password123 127.0.0.1 0 testing123
正常情況下返回
收到 Access-Accept 即表示測試成功!
2怀各、配置 radius server 端:
修改服務器端記錄客戶端的配置文件 /etc/raddb/clients.conf 文件倔韭,該文件默認值提供了本機測試的 local 配置,即:安裝完后默認只允許本機的client客戶端訪問radius服務器瓢对。Client有多種配置方式
# 只允許本機的客戶端訪問
client localhost {
ipaddr = 127.0.0.1
secret = testing123
}
# 配置所有網(wǎng)段都可訪問
client all_clients {
ipaddr = 0.0.0.0/0
secret = testing123
}
保存文件 /etc/raddb/clients.conf寿酌,重啟radius服務.