您好,登錄后才能下訂單哦!
在進階篇里,我們將會提供本地化的安裝參考,但相比起快速指南,進階篇需要更強的專業知識和動手能力,為了節約您寶貴的時間,我們并不鼓勵所有人都來嘗試。
在安裝成功之前,你可能會遇到關于 linux,git,python,mysql等一些列問題,如果你對這些都不熟悉,那么你只會遇到越來越多的問題,盡管這些問題在具備相關專業知識的人眼前不值一提。如果你覺得linux,git,python,mysql 這些都不是個事,那就繼續吧。
不適合這篇教程的人
從來沒有成功安裝過 linux 的
裝完 linux 系統連 make 指令都沒有的
只會用界面,把 linux 當 windows 用的
vi 的 打開,編輯,保存,退出這幾個基本指令還不會的
特別懶的人
特別有錢的人
linux 的發行版世界實在是太多元化了,但萬變不離其宗,理論上 ToughRADIUS 是可以運行在大部分linux 系統上的。
ToughRADIUS 依賴 Python2.7+ 運行環境,如果系統已經內置,則省略了升級 python 這一步,如果系統依然是 python2.4或 python2.6的版本,則需要先獨立安裝 python2.7版本。
為了更方便的安裝,建議采用 centos7,ubuntu14等已經內置 python2.7 的系統。
git 是一個版本控制工具,通過 git 工具,你在服務器上安裝的 ToughRADIUS 服務可以很方便的升級,或切換不同的版本,但git 并不是必須的,不使用 git,只是不能方便升級 ToughRADIUS,以后需要升級時,需要自己下載版本重新安裝。
ToughRADIUS默認是支持 sqlite 和 mysql 數據庫的,其他數據庫如 mssql,oracle 等目前只提供商業支持服務。ToughRADIUS V2版本經過重新架構,采用更好的緩存機制(Redis),數據庫已經不是性能的決定性因素。
通常 sqlite 更易于使用,系統內置支持,無需額外安裝,但沒有提供基于網絡的管理,帶來維護上的不便,MySQL 在安裝配置方面要復雜的多,但管理工具強大,更穩定可靠,依然是生產環境應用的首選。
ToughRADIUS 提供的默認安裝指令是針對 CentOS 系統的,如果你希望在 ubuntu 下執行安裝,可以自行修改Makefile文件,將 yum install 指令替換成對應的 apt-get install,Centos的軟件名稱與 ubuntu 也不相同,需要自行解決。
為了更方便的升級版本,建議通過使用 git 版本控制工具.
請保證您的服務器網絡暢通,如果您的服務器禁止訪問網絡,請首先解決網絡問題。
安裝 git
$ yum install -y git
克隆倉庫(穩定版本)
$ git clone -b release-stable https://github.com/talkincode/ToughRADIUS.git /opt/toughradius
克隆倉庫(開發版本)
$ git clone -b release-dev https://github.com/talkincode/ToughRADIUS.git /opt/toughradius
下載解壓穩定版
$ wget https://github.com/talkincode/ToughRADIUS/archive/release-stable.zip -O /opt/release-stable.zip
$ cd /opt
$ unzip release-stable.zip
$ mv ToughRADIUS-release-stable /opt/toughradius
下載解壓開發版
$ wget https://github.com/talkincode/ToughRADIUS/archive/release-dev.zip -O /opt/release-dev.zip
$ cd /opt
$ unzip release-dev.zip
$ mv ToughRADIUS-release-dev /opt/toughradius
完成克隆倉庫,穩定版或開發版任選一種。/opt/toughradius 是一個約定的的安裝路徑,暫時不要修改為其他路徑。
按以下步驟執行安裝任務
$ cd /opt/toughradius $ make all
make all 指令會完成 ToughRADIUS 所有相關的系統依賴下載安裝,相關的 python 模塊安裝,以及配置文件的安裝。在 make all 的過程中,有可能會出現失敗,比如網絡超時,缺少系統其它依賴,這對你通常是一個挑戰,在 linux 的世界,很多東西是無法一一預料的,這還需要你具備一定的解決問題的能力。
make all 完成后,會存在以下配置文件:
/etc/toughradius.json
這是 ToughRADIUS 的主要配置文件,我們可能需要修改關于數據庫部分的配置。如果你只想使用內置的 sqlite 數據庫,無需做任何更改。
默認的 sqlite 數據庫文件在 /var/toughradius/toughradius.sqlite3,你可以下載到到本地計算機使用 sqlite 的管理工具打開查看數據。
如果你希望使用 mysql 數據庫,請首先自己完成 mysql 的安裝配置,并保證 mysql服務已經正常運行,同時創建一個空的數據庫,創建一個專用的用戶名和密碼。
mysql 示例:
進入 mysql 終端管理:
mysql > create database raddb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; mysql > GRANT ALL ON raddb.* TO raduser@'%' IDENTIFIED BY 'radpwd' WITH GRANT OPTION; mysql > FLUSH PRIVILEGES;
修改數據庫配置部分,具體參數請根據實際填寫。
"database": { "backup_path": "/var/toughradius/data", "dbtype": "mysql", "dburl": "mysql://raduser:radpwd@127.0.0.1:3306/raddb?charset=utf8", "echo": 0, "pool_recycle": 300, "pool_size": 60 }
$ cd /opt/toughradius $ make initdb
如果配置文件數據庫部分沒有錯誤,這一步將順利通過,會創建所有數據庫表,以及初始化必須的配置參數。
現在你可以運行 ToughRADIUS 服務了,假設前面的過程都順利完成。ToughRADIUS 已經配置好系統的自啟動服務。
$ service toughradius start
如果你要停止 ToughRADIUS 服務,執行
$ service toughradius stop
重啟請執行
$ service toughradius restart
查看運行狀態請執行
$ service toughradius status
ToughRADIUS 提供了一個通用的不依賴數據庫類型的數據備份服務,你可以通過ToughRADIUS的管理界面-系統管理子菜單下的數據備份來使用它。
備份數據默認在目錄 /var/toughradius/data
所有的日志文件全部在 /var/toughradius 目錄下
web 管理控制臺日志文件是 /var/toughradius/radius-manage.log
radius 的認證記賬日志是 /var/toughradius/radius-worker.log
你可以通過 linux 下的vi,awk,more,less,tail 工具來查看分析日志,比如查看最后100行日志:
$ tail -n 100 /var/toughradius/radius-manage.log $ tail -n 100 /var/toughradius/radius-worker.log
如果你在安裝的過程中遇到問題,提供這些日志信息才是最有用的,如果你不是提供這些日志數據,那么你幾乎肯定得不到答案。
/etc/toughradius.conf 是ToughRADIUS服務進程配置,基于 supervisord 實現服務進程管理。
如果你實際不是安裝在 /opt/toughradius 這個路徑,可以修改這個配置文件中的/opt/toughradius 路徑
調整 radius 子進程數量以提高 ToughRADIUS 在多核 CPU 下的性能
修改 numprocs 參數即可,設置為 CPU 核心數量或2倍都可以。
[program:worker] command=python /opt/toughradius/radiusctl worker -c /etc/toughradius.json startretries = 10 process_name = %(program_name)s%(process_num)d numprocs=4 redirect_stderr=true stdout_logfile=/var/toughradius/radius-worker.log
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。