집 >운영 및 유지보수 >리눅스 운영 및 유지 관리 >LNMP 환경에 FreeRadius를 설치하기 위한 예제 튜토리얼
1. 웹 환경을 설치하고 LNMP 원클릭 설치 패키지를 사용하세요.
구체적인 설치 단계를 참조하세요
2. 설치가 완료된 후 LNMP
ionCube 구성 요소 설치 중 누락된 구성 요소를 설치하세요
lnmp가 있는 디렉터리를 입력하세요. 압축을 풀고 실행합니다: ./addons.sh install ionCube
Enter를 눌러 확인하면 ionCube 로더가 자동으로 설치됩니다.
yum perl-DBI 설치
yum freeradius-mysql freeradius-utils
3. FreeRadius
wget
tar xvf freeradius-server-2.1.8-dmamod-1.tar.gz
cd freeradius-server-2.1을 설치하세요. 8
./configure
make
make install
4. 파일 소유자 및 권한 구성
chmod 644 /usr/local/etc/raddb/dictionary
chown www /usr/local/etc/raddb
chown www /usr/local /etc/raddb/clients.conf
5. FreeRadius
radiusd -X
오류가 발생했습니다
"공유 라이브러리를 로드하는 동안 오류가 발생했습니다: libfreeradius-radius-2.1.8.so: 공유 객체 파일을 열 수 없습니다: 해당 파일이 없습니다.
해결책은 /etc/ld.so.conf
ld.so.conf 파일 내용에 /usr/local/lib를 추가하는 것입니다.
include /etc/ld.so.conf.d /*.conf
/usr/local/lib에 한 줄 추가
완료 후 /sbin/ldconfig를 입력하고 위의 단계를 반복하세요.
Ldconfig 명령은 /etc/ld.so.conf에 나열된 경로 아래의 라이브러리 파일을 /etc/ld로 캐시합니다.
이 명령에서 Radiusd -X를 디버그합니다.
오류가 발생했습니다
인증 주소 * 포트 1812에 대한 바인딩 실패: 이미 사용 중인 주소
/usr/local/etc/raddb/radiusd.conf[240]: 0.0.0.0 포트 1812
포트 점유 문제에 대한 포트 바인딩 오류.
lsof -i:1812
명령을 사용하여
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
radiusd 11163 radiusd 5u IPv4 949974 0t0 UDP *:radius
반경을 스스로 점유하고 있는 것으로 확인되었습니다
처리 방법(폭력점)
kill 11163(반경 프로세스의 PID , centos view 프로세스 PID 명령: ps -ef)
해당 명령이 없는 경우 yum install psmisc를 사용하여 설치할 수 있습니다.
radiusd -X를 다시 디버그합니다.
요청 처리 준비가 표시됩니다.
인증 수신 중 주소 * 포트 1812
계정 주소 * 포트 1813에서 수신
명령 파일 /usr/local/var/run/radiusd/radiusd.sock에서 수신
프록시 주소 * 포트 1814에서 수신
요청을 처리할 준비가 되었습니다.
Freeradius가 완료되었습니다. 여기에서 성공적으로 설치되었습니다
6. freeradius 구성에 대한 자세한 내용은 RM과 통합해야 하기 때문에 여기서는 radius 파일을 자세히 구성해야 합니다. 먼저 LNMP 환경 패키지를 사용할 때 freeradius를 간단히 설치할 수도 있다는 점을 설명하겠습니다. 간단한 설치 단계는 다음과 같습니다: yum install perl-DBI freeradius freeradius- mysql freeradius-utils
설치 패키지를 사용하여 단계별로 설치하는 것이 좋습니다. 문제를 발견하면 언제든지 찾아 해결할 수 있습니다
radius 파일을 구성하는 방법에는 두 가지가 있습니다.
A: 간단한 방법 glzjin(Zhao Yichuxin)이 작성한 파일을 사용하여 직접 덮어쓰기
wget -O /etc /raddb/radiusd.confwget -O /etc/raddb/sites-enabled/default
wget -O /etc/raddb/sql/ mysql/dialup.conf
wget -O /etc/raddb/dictionary
wget -O /etc/raddb/sql/mysql/counter.conf
B: 자세한 수동 구성은 다음과 같습니다
vi /usr/local/etc/raddb/ radiusd.conf
"$INCLUDE sql.conf"(라인 743)를 찾아 # 기호를 제거하세요
"$INCLUDE sql/mysql/counter.conf"(라인)을 보세요 712), # 번호를 제거합니다
# /usr/local/etc/raddb/sites-enabled/default 파일을 지우고 구성된 파일 내용을 직접 복사하여 저장합니다
vi /usr/local/etc/raddb/sites-enabled/default
#Clear /usr/local/etc/raddb /sites-enabled/inner-tunnel 파일을 직접 복사합니다. 파일 내용을 구성하고 저장합니다
vi /usr/ local/etc/raddb/sites-enabled/inner-tunnel
#/usr/local/etc/raddb/eap.conf를 편집하고 MD5 확인 방법을 peap 방법으로 변경합니다
line 30 default_eap_type = md5가 default_eap_type =으로 변경됩니다. peap
#/usr/local/etc/raddb/modules/mschap 파일을 편집하고 다음 내용으로 수정합니다
mschap { use_mppe = yes require_encryption = yes require_strong = yes }
#/usr/local/etc/raddb/sql/mysql/dialup.conf 파일 편집
simul_count_query를 찾아 제거 279-282행에 대한 설명입니다. simul_count_query 함수를 엽니다
# /usr/local/etc/raddb/sql/mysql/counter.conf 파일을 편집하고 사용자 정의 계산 함수
monthlytrafficcounter(월간 트래픽 계산) 및 yearlytrafficcounter(calculate)를 추가합니다. 트래픽 매년)vi /usr/local/etc/raddb/sql/mysql/counter.conf
재末尾加入
sqlcounter Monthlytrafficcounter {
counter-name = Monthly-Traffic
check-name = Max-Monthly-Traffic
reply-name = Monthly-Traffic-Limit
sqlmod-inst = sql
key = User- 이름
재설정 = 월별
query = " SELECT ABS(SUM(acctinputoctets + acctoutputoctets) DIV 1048576) FROM radacct WHERE UserName='%{%k}' AND AcctStartTime >= date_sub(curdate(), 간격 30일)"
}
sqlcounter yearlytrafficcounter {
counter-name = Yearly-Traffic
check-name = Max- Yearly-Traffic
reply-name = Yearly-Traffic-Limit
sqlmod-inst = sql
key = User-Name
reset = never
쿼리 = " 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-Traffic-Limit 3 004 정수
ATTRIBUTE 계정 중간 -간격 85 정수
ATTRIBUTE Max-Yearly-Traffic 3003 정수
ATTRIBUTE 연간 트래픽 제한 3004 정수
7.建立MySql상关的数据库并作设置
两种方法如下:
A。使用phpmyadmin建立
LNMP环境下带phpmyadmin,http://你的IP/phpmyadmin
建立两个数据库radius and conntrack
进入后点:账号---新增用户账号
填写好用户name 와密码, 一定点击(사용户账号数据库下的创建与 비슷한 이름의 数据库并授予所有权限。)
B。使用ssh登陆命令建立
mysql -u root -p密码 #登录mysql,超级账号root 와密码
CREATE DATABASE 반경; #创建radius数据库
CREATE DATABASE conntrack; #创建conntrack数据库
사용자 생성 'radius'@'localhost' 'radius123'으로 식별됨; #创建用户radius,密码radius123
사용자 생성 'conntrack'@'localhost' 'conn123'으로 식별됨; #创建用户conntrack,密码conn123
radius.*에 대한 모든 권한을 radius@localhost에 부여합니다. #给radius数据库设置访问权限
conntrack의 모든 권한을 부여합니다.* to conntrack@localhost; 에디토리얼 /radius123
server = “localhost”
#port = 3306
login = “radius”
password = “radius123″
找到readclients一行,设为yes并去掉注释符号#
재/etc/raddb/sql.conf 这个目录里。
9.关闭SELINUX(需重启机器生效)
/etc/sysconfig/selinux
10. 맥(MAC)地址,因为我下载RM3.9版本是破解的,授权文件및MAC地址city是破解者发布的(需要重启生效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"
使用winscp上传radiusmanager-3.9.0.tar.gz到root目录
tar zxvf radiusmanager-3.9.0.tar.gz
cd radiusmanager-3.9.0chmod 755 install.sh
./install.sh
Radius Manager 설치 프로그램이 나타납니다
Copyright 2004-2011, DMA Softlab LLC
All right Reserved.
(중단하려면 언제든지 CTRL+C를 사용하세요.)
운영 체제 유형을 선택하세요.
1. )
2. Debian(Ubuntu 등)
옵션 선택: [1] (내 것은 centos 시스템)
선택한 운영 체제: REDHAT
설치 유형 선택:
1 새 설치
2. 옵션: [1] (새 설치)
WWW 루트 경로: [/var/www/html] 여기에서 우리가 만든 웹 디렉터리 /home/wwwroot/도메인 이름
RADIUS 데이터베이스로 변경하세요. 호스트: [localhost]
RADIUS 데이터베이스 사용자 이름: [반경] > #root
Httpd UNIX 사용 사용자: [아파치] WWW로 변경됨
rmpoller 서비스 생성: [y]
rmconntrack 서비스 생성: [y]
RADIUS 데이터베이스 백업: [y]
경고! 데이터베이스!
당신이 맞나요? 설치를 시작하시겠습니까? [n] y
설치 프로세스를 시작하는 중…
웹 콘텐츠를 /home /wwwroot/yourdomain/radiusmanager에 복사하는 중
바이너리를 /usr/local/bin에 복사하는 중
rootexec를 /usr/local/sbin에 복사하는 중
복사하는 중 radiusmanager.cfg를 /etc에 백업하는 중
RADIUS 데이터베이스를 백업하는 중…
MySQL 테이블 생성 중
rmpoller 서비스 생성 중
rmconntrack 서비스 생성 중
logrotate 스크립트 복사 중
raddb 파일에 권한 설정 중
radius init 스크립트를 /etc/init.d로 복사 중
설치가 완료되었습니다!
12. RM 구성 파일 수정
/etc/radiusmanager.cfg
/home/wwwroot /도메인 이름/radiusmanager/config/system_cfg.php
13 RM 파일을 루트 디렉터리에서 홈 디렉터리
14. 디렉토리 파일 권한 수정
chattr -i /home/wwwroot/도메인 이름/.user.ini
chmod -R 777 /home/wwwroot/도메인 이름
chmod 755 /usr/local/bin/rmauth
chmod 755 /usr/local /bin/rmpoller
chmod 600 /etc/radiusmanager.cfg
chmod 755 /usr/local/bin/ rmconntrack
chmod 4755 /usr/local/sbin/rootexec
서버를 다시 시작합니다. 접속 주소: 도메인 이름/admin.php 계정 관리자 비밀번호 1111
사용자 접속 주소: 도메인 이름/user.php 계정 사용자 비밀번호 1111
위 내용은 LNMP 환경에 FreeRadius를 설치하기 위한 예제 튜토리얼의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!