Heim >Betrieb und Instandhaltung >Betrieb und Wartung von Linux >Beispiel-Tutorial für die Installation von FreeRadius in einer LNMP-Umgebung

Beispiel-Tutorial für die Installation von FreeRadius in einer LNMP-Umgebung

PHP中文网
PHP中文网Original
2017-06-21 10:35:262361Durchsuche

1. Installieren Sie die Webumgebung und verwenden Sie das LNMP-One-Click-Installationspaket
Spezifische Installationsschritte finden Sie unter

2. Installieren Sie nach Abschluss der Installation die fehlenden Komponenten von LNMP
ionCube-Komponenteninstallation
Geben Sie das Verzeichnis ein, in dem lnmp dekomprimiert wird, und führen Sie Folgendes aus: ./addons.sh install ionCube
Drücken Sie zur Bestätigung die Eingabetaste und der ionCube-Loader wird automatisch installiert.

yum install perl-DBI

yum freeradius-mysql freeradius-utils

3. Installiere FreeRadius
wget
tar xvf freeradius-server-2.1.8 -dmamod-1.tar.gz
cd freeradius-server-2.1.8
./configure
make
make install

4. Dateieigentümer und Berechtigungskonfiguration
chmod 644 /usr/local/etc/raddb/dictionary
chown www /usr/local/etc/raddb
chown www /usr/local/etc/raddb/clients.conf

5 . Testen von FreeRadius
radiusd -X
Ein Fehler ist aufgetreten
„Fehler beim Laden gemeinsam genutzter Bibliotheken:libfreeradius-radius-2.1.8.so: Gemeinsam genutzte Objektdatei kann nicht geöffnet werden: keine solche Datei oder kein solches Verzeichnis.“

Die Lösung besteht darin, /usr/local/lib zu /etc/ld.so.conf hinzuzufügen

Der Inhalt der Datei ld.so.conf lautet wie folgt:
include /etc/ ld. so.conf.d/*.conf
Fügen Sie eine Zeile zu /usr/local/lib hinzu
Geben Sie nach Abschluss /sbin/ldconfig ein und wiederholen Sie dann die obigen Schritte.
Der Befehl Ldconfig speichert die Bibliotheksdateien unter dem in /etc/ld.so.conf aufgeführten Pfad in /etc/ld zwischen.

Beim Debuggen von radiusd mit diesem Befehl -X
tritt ein Fehler auf
Fehler beim Binden an Authentifizierungsadresse * Port 1812: Adresse wird bereits verwendet
/usr/local/etc/raddb/radiusd.conf[240]: Fehler beim Binden an Port für 0.0.0.0 Port 1812

Portbelegungsproblem.
Verwenden Sie den Befehl lsof -i:1812
, um
BEFEHL PID BENUTZER FD TYPE GERÄTEGRÖSSE/AUS KNOTENNAME
radiusd 11163 radiusd 5u IPv4 949974 0t0 UDP *:radius Ich habe herausgefunden, dass es vom Radius selbst besetzt ist

Verarbeitungsmethode (gewalttätiger Punkt)

kill 11163 (PID des Radiusprozesses, Centos View Process PID-Befehl: ps -ef)
Wenn Sie das finden Es gibt keinen solchen Befehl. Sie können yum install psmisc verwenden, um

radiusd -X debugging again

Bereit zum Verarbeiten von Anforderungen zu installieren.

Überwachen der Authentifizierungsadresse * Port 1812

Abhören der Abrechnungsadresse * Port 1813
Abhören der Befehlsdatei /usr/local/var/run/radiusd/radiusd.sock
Abhören der Proxy-Adresse * Port 1814
Bereit zur Verarbeitung von Anfragen.

Freeradius wurde hier erfolgreich installiert

6. Detaillierte Konfiguration von Freeradius, da wir eine Integration mit RM benötigen, müssen wir hier die Radiusdatei im Detail konfigurieren

Lassen Sie mich das zunächst erklären Wenn Sie das LNMP-Umgebungspaket verwenden, können Sie Freeradius auch einfach installieren. Die einfachen Installationsschritte lauten wie folgt:
Verwenden Sie den Befehl: yum install perl-DBI freeradius freeradius-mysql freeradius-utils

Sie können Radius installieren Ich persönlich empfehle, das Installationspaket Schritt für Schritt zu verwenden, damit Sie jederzeit Probleme finden und lösen können.

Es gibt zwei Methoden zum Konfigurieren von Radiusdateien:

A: Die einfache Methode besteht darin, die von glzjin (Zhao Yichuxin) geschriebene Datei direkt zu überschreiben

wget -O /etc/raddb/ radiusd.conf
wget -O /etc/raddb/sites- aktiviert/default
wget -O /etc/raddb/sql/mysql/dialup.conf
wget -O /etc/raddb/dictionary
wget -O /etc/raddb/sql/mysql/counter. conf

B: Detaillierte manuelle Konfiguration ist wie folgt

#Datei /usr/local/etc/raddb/radiusd.conf bearbeiten

vi /usr/local/etc/raddb/radiusd .conf

Ändern Sie die Suche nach „allow_vulnerabel_openssl = no“ in „yes“
Suchen Sie nach „$INCLUDE sql.conf“ (Zeile 743), entfernen Sie das #-Zeichen
Suchen Sie nach „$INCLUDE sql/mysql/counter .conf“ (Zeile 712), entfernen Sie die #-Nummer

#Löschen Sie die Datei /usr/local/etc/raddb/sites-enabled/default und konfigurieren Sie sie direkt. Kopieren Sie den Inhalt der Datei und speichern Sie

cat /dev/null > /usr/local/etc/raddb/sites-enabled/default
vi /usr/local/etc/raddb/sites-enabled/default

#Löschen Sie /usr/ local/etc/raddb/sites-enabled/inner-tunnel Datei, kopieren Sie den konfigurierten Dateiinhalt direkt hinein und speichern Sie ihn

cat /dev/null > -tunnel
vi /usr/local/etc/raddb/sites-enabled/inner-tunnel

#Edit /usr/local/etc/raddb/eap, ändern Sie die MD5-Überprüfungsmethode in peap Methode

vi /usr/local/etc/raddb/eap.conf
Zeile 30 default_eap_type = md5 wird in default_eap_type = peap geändert

#Edit/usr/ local/etc/raddb/modules/ mschap-Datei, ändern Sie sie in den folgenden Inhalt: /local/etc/raddb/sql/mysql/dialup.conf-Datei

vi /usr/local/etc/raddb/sql/mysql/dialup.conf

Simul_count_query finden Entfernen Sie die Kommentare in den Zeilen 279- 282, öffnen Sie die simul_count_query-Funktion

#Bearbeiten Sie die Datei /usr/local/etc/raddb/sql/mysql/counter.conf und fügen Sie die benutzerdefinierten Berechnungsfunktionen
monthlytrafficcounter (monatliche Verkehrsberechnung) und yearlytrafficcounter hinzu (Traffic jedes Jahr berechnen)

vi /usr/local/etc/raddb/sql/mysql/counter.conf

在末尾加入
sqlcounter monatlicher Datenverkehr
   counter-name = Monthly-Traffic
   check-name = Max-Monthly-Traffic
   reply-name = Monthly-Traffic-Limit
   sqlmod -inst = sql
   key = User-Name
   reset = monatlich
   query = " SELECT ABS(SUM(acctinputoctets + acctoutputoctets) DIV 1048576) FROM radacct WHERE UserName='%{%k}' AND AcctStartTime >= date_sub(curdate(),interval 30 day)"
}

sqlcounter yearlytrafficcounter {
   counter-name = Yearly-Traffic
   check-name = Max- Yearly-Traffic
   reply-name = Yearly-Traffic-Limit
   sqlmod-inst = sql
   key = User-Name
   reset = never
   query = " SELECT ABS(SUM(acctinputoctets + acctoutputoctets) DIV 1048576 ) FROM radacct WHERE UserName='%{%k}' AND AcctStartTime >= date_sub(curdate(),interval 365 day)"
}

#编辑字典文件/usr/local/etc/ raddb/dictionary
vi /usr/local/etc/raddb/dictionary

#添加以下内容
ATTRIBUTE       Max-Monthly-Traffic     3003    integer
ATTRIBUTE       Monthly-T raffic-Limit   3004    integer
ATTRIBUTE       Acct-Interim-Interval   85      integer
ATTRIBUTE       Max-Yearly-Traffic      3003    integer
ATTRIBUTE       Yearly-Traffic-Limit    3004    integer


7.MySql相关的数据库并作设置
两种方法如下:
A.使用phpmyadmin建立
LNMP环境下带phpmyadmin,http://你的IP/phpmyadmin
建立两个数据库radius和conntrack
进入后点:账号---新增用户账号
填写好用户名和密码,一定点击(用户账号数据库下的创建与用户同名的数据库并授予所有权限。)

B。使用ssh登陆命令建立
mysql -u root -p密码                                                   #登录mysql,超级账号root和密码
Datenbankradius erstellen;                                         #创建radius数据库
DATENBANK ERSTELLEN conntrack;                                      #创建conntrack数据库
CREATE USER ‘radius’@’localhost’ IDENTIFIED BY ‘radius123′;     #创建用户radius,密码radius123
CREATE USER ‚conntrack‘@‘localhost‘ IDENTIFIED BY ‚conn123‘;    #创建用户conntrack,密码conn123
GRANT ALL ON radius.* TO radius@localhost;                      #给radius数据库设置访问权限
GRANT ALL ON conntrack.* TO conntrack@localhost;                #给conntrack数据库设置访问权限

8.配置freeradius数据库
/usr/local/etc/raddb/sql.conf                                  #使用radius/radius123
# Verbindungsinfo:
server = „localhost“
#port = 3306
login = „radius“
password = „radius123″

找到readclients一行,设为yes并去掉注释符号#

这里要特别说明一下,如果在安装freeraduis是使用的是第6点里yun直接安装的话,那么sql.conf这个文件
在/etc/raddb/sql.conf 这个目录里.

9.关闭SELINUX(需重启机器生效)
/etc/sysconfig/selinux
SELINUX=disabled


10.修改机器MAC地址,因为我下载RM3.9版本是破解的, 授权文件和MAC地址都是破解者发布的(需要重启生效PS: RM4.16是不是也可以使用同样方法处理,有研究出来的朋友,可以和我交流一下)

不能使用这个命令: ifconfig eth0 down(用网卡), 你是ssh链接的使用了这个, 你立马就掉线了,不用我说原因吧.

正确的方法:
使用winscp下载 /etc/sysconfig/network-scripts里ifcfg-eth0

修改其中的"HWADDR=xx:xx:xx:xx:xx:xx"为"MACADDR=00:D0:09:B8:B7 :34"

上传覆盖,重启机器以后生效.

11.安装Radius Manager

首先为Radius Manager建立一个web

使用lnmp vhost add,此次不需要创建mysql数据库了,在上面我们已经创建好了.

使用winscp上传radiusmanager-3.9.0.tar.gz到root目录
tar zxvf radiusmanager-3.9.0 .tar.gz
cd radiusmanager-3.9.0
chmod  755  install.sh
./install.sh

Radius Manager-Installationsprogramm wird angezeigt
Copyright 2004-2011, DMA Softlab LLC
Alle Rechte vorbehalten.
(Zum Abbrechen jederzeit STRG+C verwenden)
Wählen Sie den Typ Ihres Betriebssystems aus:
1. Redhat (Fedora, CentOS usw.)
2. Debian (Ubuntu usw.)
Wählen Sie eine Option: [1] (meins ist Centos-System)

Ausgewähltes Betriebssystem ist: REDHAT
Installationstyp auswählen:
1. Neue Installation
2. Altes System aktualisieren
Wählen Sie eine Option: [1] (Neuinstallation)

Ausgewählte Installationsmethode: NEUE INSTALLATION
WWW-Root-Pfad: [/var/www/html] Wechseln Sie hier in das von uns erstellte Webverzeichnis/home/wwwroot/Ihr Domainname
RADIUS-Datenbank-Host: [localhost]
RADIUS-Datenbank-Benutzername: [radius] #Radius verwenden
RADIUS-Datenbankpasswort: [radius123]                                                                                                            Verwenden Sie root
Httpd UNIX-Benutzer: [Apache]                                  Wechseln Sie zu WWW
RMpoller-Dienst erstellen: [y]
RADIUS-Datenbank sichern: [y]
WARNUNG! Mach weiter. Du wirst es tun Überschreiben Sie die vorhandene RADIUS-Datenbank!
Möchten Sie die Installation wirklich starten? /usr/local/bin
rootexec nach /usr/local/sbin kopieren
radiusmanager.cfg nach /etc kopieren
RADIUS-Datenbank sichern…
MySQL-Tabellen erstellen
Rmpoller-Dienst erstellen
Rmconntrack-Dienst erstellen
Logrotate-Skript kopieren
Berechtigung für raddb-Dateien festlegen
Radiusd-Init-Skript nach /etc/init.d kopieren
Installation abgeschlossen!

12. Ändern Sie die RM-Konfiguration Datei
/etc/radiusmanager.cfg
/home/wwwroot/your domain name/radiusmanager /config/system_cfg.php

13. Ändern Sie die RM-Datei vom Stammverzeichnis in das Home-Verzeichnis
cd radiusmanager --> mv * ../ --> cd ../

14. Verzeichnisdateiberechtigungen ändern

chattr -i /home/wwwroot/your domain name/.user .ini
chown www:www -R /home/wwwroot/Ihr Domainname
chmod -R 777 /home/wwwroot/Ihr Domainname

chmod 755 /usr/local/bin/rmauth

chmod 755 /usr/local/bin/rmacnt
chmod 755 /usr/local/bin/rmpoller

chmod 600 /etc/radiusmanager.cfg

chmod 755 /usr/local/bin/rmconntrack
chmod 4755 /usr/local/sbin/rootexec

Starten Sie den Server neu. Zugangsadresse: Ihr Domainname/admin.php Kontoadministrator-Passwort 1111
Benutzerzugriffsadresse: Ihr Domainname/user.php Kontobenutzerpasswort 1111


Das obige ist der detaillierte Inhalt vonBeispiel-Tutorial für die Installation von FreeRadius in einer LNMP-Umgebung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn