CentOS 9-Stream 通过 Docker 安装 ToughRadius v8
安装Docker
1. 检查linux版本
Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker
uname -r
2. 卸载旧版本
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
3. 更新yum
yum -y update
4. 安装yum-utils包(提供yum-config-manager 实用程序)
yum -y install yum-utils
5. 设置存储库
以下3选1即可
官方存储库
[root@localhost ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
阿里镜像存储库
[root@localhost ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
清华大学存储库
[root@localhost ~]# yum-config-manager --add-repo https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
6. 安装Docker Engine、containerd 和 Docker Compose
如下命令安装我们配置的仓库中最新的版本
yum -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin
指定版本安装
首先,列出可选版本
yum list docker-ce --showduplicates | sort -r
其次,指定版本安装
# <VERSION_STRING>表示版本号
yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io docker-compose-plugin
此命令会安装 Docker,但不会启动 Docker。它会创建一个 docker用户组,但是默认情况下它不会将任何用户添加到该组中。
7. 启动docker
启动命令
systemctl start docker
关闭命令
systemctl stop docker
8. 设置docker开机自启动
设置开机自启动
systemctl enable docker.service
systemctl enable containerd.service
关闭开机自启动
systemctl disable docker.service
systemctl disable containerd.service
9. 创建非root用户来执行docker命令
没有账号,添加账号,并把docker组添加到该账号上(记得给test账号设置密码)
useradd -G docker test
有账号,修改账号,把docker组添加到该账号上
usermod -G docker test
我们的账号名称是test,docker组是我们在docker安装是,docker自动创建的用户组。
账号设置成功后,需要重新登录test
10. 验证安装成功以下方式都可以验证
docker --version
docker system info
docker run hello-world
11.卸载Docker
卸载安装文件
yum -y remove docker-ce docker-ce-cli containerd.io docker-compose-plugin
删除镜像、容器、配置等文件
rm -rf /var/lib/docker/
12.安装 PostgreSQL 15 数据库
添加 PostgreSQL 安装源
yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
安装 PostgreSQL
yum install -y postgresql15-server
初始 PostgreSQL 数据库
/usr/pgsql-15/bin/postgresql-15-setup initdb
设置 PostgreSQL 服务自启动
systemctl enable postgresql-15
启动 PostgreSQL 服务
systemctl start postgresql-15
修改 PostgreSQL 配置
默认 PostgreSQL 安装在/usr/pgsql-15,数据存储目录:/var/lib/pgsql/15/data
修改 vim /var/lib/pgsql/15/data/postgresql.conf文件内#listen_addresses = 'localhost' 去掉#注释,修改为 listen_addresses = '*'
修改 vim /var/lib/pgsql/15/data/pg_hba.conf
增加一行
host all all 0.0.0.0/0 password
重启数据库
sudo systemctl enable postgresql-15
sudo systemctl restart postgresql-15
#start不起效
sudo systemctl start postgresql-15
检查数据库状态
systemctl status postgresql-15
测试
#创建用户testuser、数据库testdb 并赋给testuser所有的testdb相关的权限。
su - postgres
psql
CREATE USER testuser with PASSWORD '123456';
CREATE DATABASE testdb owner testuser;
GRANT ALL ON DATABASE testdb TO testuser
#直接用testuser登录, 点击回车后,输入密码即可
psql -h 192.168.8.88 -U testuser -d testdb
#检查数据目录
show data_directory;
#用navicat客户端连接
主机名或ip地址:10.xx.3.xx
端口:5432
初始数据库:testdb
用户名:testuser
密码:123456
检查是否能客户端根据ip连接
curl localhost:5432
curl 10.xx.3.xx:5432
查询postgresql进程
ps -ef | grep postmaster
修改密码
#1. 修改linux系统postgres用户的密码
PostgreSQL会创建一个默认的linux用户postgres,修改该用户密码的方法如下:
##步骤一:删除用户postgres的密码
sudo passwd -d postgres
##步骤二:设置用户postgres的密码
sudo -u postgres passwd
##系统提示输入新的密码
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
?
#2. 修改PostgreSQL数据库默认用户postgres的密码
PostgreSQL数据库创建一个postgres用户作为数据库的管理员,密码随机,所以需要修改密码,方式如下:
##步骤一:登录PostgreSQL
sudo -u postgres psql
##步骤二:修改登录PostgreSQL密码
ALTER USER postgres WITH PASSWORD 'ROOT';
?
注:
密码postges要用引号引起来
命令最后有分号
随后需要完善的地方
默认postgreql 安装在/usr/pgsql-15,数据存储目录:/var/lib/pgsql/版本号/data,在实际生产中/var可能存在硬盘空间不足的问题,我们一般将数据存储目录放在挂载的硬盘如/data下
13.通过Docker 安装 ToughRadius
docker pull talkincode/toughradius
安装完成后
使用 find / |grep toughradius 查找可执行文件
查询到的 toughradius 可执行文件
/var/lib/docker/overlay2/b47d608ba0d5d1e4ac021bdca5dadb6f20721bdd1a971552217c045a0d1e23e6/diff/usr/local/bin/toughradius
/var/lib/docker/overlay2/7eda3a4d801646f5113cc1b9d343d03f68a9f60aa730a46aa9de29bcd02b8bfc/diff/usr/local/bin/toughradius
进入 toughradius 可执行文件目录
cd /var/lib/docker/overlay2/查找到的路径/diff/usr/local/bin/
执行 toughradius 进行安装
./toughradius --help
Usage of ./toughradius:
-c string
config yaml file
-h help usage
-initcfg
write default config > /etc/toughradius.yml
-initdb
run initdb
-install
run install
-uninstall
run uninstall
-v show version
第一步:su - postgres 登录 PostgreSQL 创建数据库和用户
psql
CREATE USER toughradius with PASSWORD 'toughradius';
CREATE DATABASE toughradius_v8 owner toughradius;
GRANT ALL ON DATABASE toughradius_v8 TO toughradius;
第二步:./toughradius -initcfg 安装配置文件
第三步:vi /etc/toughradius.yml 修改数据库配置信息
第四步:./toughradius -initdb 安装数据库
第五步:./toughradius -install 进行安装
第六步:伪造一套证书,不然启动 ToughRadius 服务时报无法找到toughradius.tls.crt和toughradius.tls.key证书文件
cp private/radsec.tls.crt private/toughradius.tls.crt
cp private/radsec.tls.key private/toughradius.tls.key
第七步:systemctl start toughradius 启动服务
第八步:systemctl enable toughradius 添加自启动服务
第九步:systemctl status toughradius 查看服务启动状态
第十步:添加防火墙放行策略
firewall-cmd --zone=public --add-port=1816/tcp --permanent
firewall-cmd --zone=public --add-port=1812/udp --permanent
firewall-cmd --zone=public --add-port=1813/udp --permanent
firewall-cmd --reload
ToughRadius 还有很多端口如需要自行添加
第十步:浏览器访问 http://IP:1816 ToughRadius Web页面
默认用户名:admin 密码:toughradius