CEMNTOS6. x 에서 Freeradius + Mysqsl 설정 서버 원 키 설치 스 크 립 트
7400 단어 linuxshell원 키 설치freeradius
현재 스 크 립 트 에 몇 가지 문제 가 있 습 니 다.
1. mysql 클 라 우 드 설치
2. mysql 비밀 번 호 는 특수 문자 (예: '$'/'\' 등) 를 포함 할 수 없습니다. ),그렇지 않 으 면 발생 하 는 스 크 립 트 오 류 는 관련 설정 을 스스로 수정 하 십시오. 이 문 제 를 어떻게 수정 하 는 지 아 는 사람 이 있 으 면 댓 글로 알려 주 십시오. 감사합니다!!!
3. 자체 홈 페이지 에 freeradius - server - 2.2.6. tar. gz 를 다운로드 하여 스 크 립 트 와 같은 디 렉 터 리 에 두 고 스 크 립 트 를 실행 하 십시오.
4. 본인 은 centos6. X 에서 테스트 에 성 공 했 습 니 다. 그리고 다른 시스템 에서 스스로 설정 을 수정 하 십시오.
5. 스 크 립 트 에 열 린 포트 명령 이 포함 되 어 있 지 않 습 니 다. 관련 포트 를 스스로 열 어 주 십시오: 1812, 1813
스 크 립 트 는 다음 과 같 습 니 다:
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
# Check if user is root
if [ $(id -u) != "0" ]; then
echo "Error: You must be root to run this script, please use root to install lnmp"
exit 1
fi
clear
echo "========================================================================="
echo "freeradois + mysql V1.1 for CentOS/RadHat Linux Server, Written by Hot_VC"
echo "========================================================================="
echo "A tool to auto-compile & install freeradius+mysql on Linux "
echo "========================================================================="
cur_dir=$(pwd)
echo "==========================="
isinstallmysql="n"
echo "Install MySQL 5.1.73,Please input y"
echo "Install MySQL 5.1.73,Please input n or press Enter"
echo "Is install Mysql"
read -p "(Please input y , n):" isinstallmysql
case "$isinstallmysql" in
y|Y|Yes|YES|yes|yES|yEs|YeS|yeS)
echo "You will install MySQL"
isinstallmysql="y"
;;
n|N|No|NO|no|nO)
echo "You will not install MySQL"
isinstallmysql="n"
;;
*)
echo "INPUT error,You will not install MySQL "
isinstallmysql="n"
esac
echo "MySQL root password:$isinstallmysql"
#set mysql root password
echo "==========================="
mysqlrootpwd="root"
echo "Please input the root password of mysql:"
read -p "(Default password: root):" mysqlrootpwd
if [ "$mysqlrootpwd" = "" ]; then
mysqlrootpwd="root"
fi
echo "==========================="
echo "MySQL root password:$mysqlrootpwd"
echo "==========================="
echo ""
echo ""
echo "==========================="
echo "Install Dependent Libraries "
echo "==========================="
yum -y install pam-devel openssl-devel make gcc gcc-c++ ncurses-devel libtool cmake bison-devel mysql-devel
echo "==========================="
echo "Install Dependent Libraries end"
echo "==========================="
echo ""
echo ""
echo "==========================="
echo "Install MySql"
echo "==========================="
echo ""
echo ""
if [ "$isinstallmysql" = "y" ]; then
yum install -y mysql-server
else
echo "MySQL will not install"
fi
echo ""
echo ""
echo "==========================="
echo "Install Mysql complete"
echo "==========================="
echo ""
echo ""
echo "==========================="
echo "Config Mysql "
echo "==========================="
echo ""
echo ""
service mysqld start
if [ "$isinstallmysql" = "y" ]; then
mysqladmin -uroot password "$mysqlrootpwd"
fi
echo ""
echo ""
echo "==========================="
echo "Config Mysql complete"
echo "==========================="
echo ""
echo ""
echo "==========================="
echo "Install freeradius"
echo "==========================="
echo ""
echo ""
if [ -s freeradius-server-2.2.6.tar.gz ]; then
tar zxf freeradius-server-2.2.6.tar.gz
cd freeradius-server-2.2.6
./configure --prefix=/usr --sysconfdir=/etc
make && make install
if [ $(getconf WORD_BIT) = '32' ] && [ $(getconf LONG_BIT) = '64' ] ; then
echo "include /usr/lib" >> /etc/ld.so.conf
ldconfig
fi
sed -i "s/allow_vulnerable_openssl = no/allow_vulnerable_openssl = yes/g" /etc/raddb/radiusd.conf
#Troubleshooting:
#rlm_sql (sql): Could not link driver rlm_sql_mysql: rlm_sql_mysql.so: cannot open shared object file: No such file or directory
cd src/modules/rlm_sql/drivers/rlm_sql_mysql/
./configure --with-mysql-dir=/var/lib/mysql --with-mysql-lib-dir=/usr/lib64/mysql
make && make install
cd ../../../../..
cd ..
else
echo "Error: freeradius-server-2.2.6.tar.gz not found!!!please chectout files"
fi
echo "==========================="
echo "Install freeradius complete"
echo "==========================="
echo ""
echo ""
#Mod /etc/raddb/radiusd.conf
sed -i "743s/#/ /g" /etc/raddb/radiusd.conf
sed -i "568s/no/yes/g" /etc/raddb/radiusd.conf
#Mod /etc/raddb/sql.conf
sed -i "38s/login = \"radius\"/login = \"root\"/g" /etc/raddb/sql.conf
sed -i "39d" /etc/raddb/sql.conf
sed -i "38a password = \"$mysqlrootpwd\"" /etc/raddb/sql.conf
sed -i "170s/files/#files/g" /etc/raddb/sites-enabled/default
sed -i "177s/#//g" /etc/raddb/sites-enabled/default
sed -i "372s/files/#files/g" /etc/raddb/sites-enabled/default
sed -i "406s/#//g" /etc/raddb/sites-enabled/default
sed -i "454s/#//g" /etc/raddb/sites-enabled/default
sed -i "475s/#//g" /etc/raddb/sites-enabled/default
sed -i "577s/#//g" /etc/raddb/sites-enabled/default
mysql -uroot -p$mysqlrootpwd <<EOF
create database radius;
EOF
mysql -uroot -p$mysqlrootpwd radius </etc/raddb/sql/mysql/schema.sql;
mysql -uroot -p$mysqlrootpwd radius </etc/raddb/sql/mysql/nas.sql;
mysql -uroot -p$mysqlrootpwd radius </etc/raddb/sql/mysql/ippool.sql;
mysql -uroot -p$mysqlrootpwd radius </etc/raddb/sql/mysql/cui.sql;
mysql -uroot -p$mysqlrootpwd radius </etc/raddb/sql/mysql/wimax.sql;
#Mod /etc/raddb/clients.conf
cat >>/etc/raddb/clients.conf <<EOF
client 0.0.0.0/0 {
secret = $freeradiussecret
shortname = remote
}
EOF
echo ""
echo ""
echo "==========================="
echo "Install freeradius complete"
echo "==========================="
테스트 성공 여부:
my sql 에 들 어가 radius 라 이브 러 리 에 있 는 radcheck 표 에 데 이 터 를 삽입 합 니 다:
INSERT INTO radcheck (username,attribute,op,VALUE) VALUES ('test','Cleartext-Password',':=','test');
그리고 radius 를 시작 합 니 다.
root@localhost auto-install]# radiusd
다른 창 열기:
<pre name="code" class="html">[root@localhost auto-install]# radtest test test 127.0.0.1 1812 testing123
Access - Accept 문자 가 나타 나 면 성공 을 표시 합 니 다.
nding Access-Request of id 253 to 127.0.0.1 port 1812 User-Name = "test"User-Password = "test"NAS-IP-Address = 127.0.0.1 NAS-Port = 1812 Message-Authenticator = 0x00000000000000000000000000000000 rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=253, length=20
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
용감한 바로 가기 및 우분투 응용 프로그램안녕하세요 여러분, 이 기사에서는 모든 사이트에서 pwa를 생성하고 실행기 응용 프로그램으로 추가하는 방법을 설명하고 싶습니다. 일부 웹사이트는 PWA로 설치를 허용하지 않지만 유사한 애플리케이션을 원합니다. 1. ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.