# RackTables ## 环境 AlmaLinux 8 + Nginx 1.20 + PHP 7.4 + MaraDB 10.3 ## 安装Nginx ``` dnf module enable nginx:1.20 dnf install nginx systemctl enable --now nginx ``` ## 安装PHP ``` dnf module enable php:7.4 dnf install php-fpm systemctl enable --now php-fpm ``` ## 安装MariaDB ``` dnf module enable mariadb:10.3 dnf install mariadb-server systemctl enable --now mariadb ``` > 数据库安装完成后,可以使用mysql_secure_installation进行初始化,配置root密码。 ## 安装RackTables 下载RackTables最新[发布版本](https://github.com/RackTables/racktables/tags)。 ``` mkdir -p /srv/www wget https://github.com/RackTables/racktables/archive/refs/tags/RackTables-0.22.0.tar.gz tar xzvf RackTables-0.22.0.tar.gz ln -s racktables-RackTables-0.22.0 racktables ``` 新增一个Nginx虚拟主机。 /etc/nginx/conf.d/racktables.conf ``` server { listen 82; server_name _; include /etc/nginx/default.d/*.conf; index index.php; root /srv/www/racktables/wwwroot; } ``` 一切准备就绪,访问主页,你会得到一个提示,Racktables缺少必要的配置文件secret.php,这个文件由RackTables安装程序生成,点击here进入到安装程序。 #### Step 1 点击proceed进入下一步。 #### Step 2 这一步会检查RackTables运行所需要的依赖,即PHP拓展。 绿色表示依赖检测通过,红色表示依赖缺失,黄色表示可选依赖(即使缺失也不影响安装程序进行)。 对于缺失的依赖,在服务器上安装后点击retry重新检测。 当所有缺失的依赖全部安装完成后才可以入下一步。 > AlmaLinux为例,除安装PHP自带的拓展之外,需要补充两个拓展。 > ``` > dnf install php-gd php-bcmath > ``` #### Step 3 这一步安装程序会尝试创建配置文件secret.php,如果安装程序没有创建文件的权限,需要自行创建文件。并且授予安装程序写入权限。 ``` touch '/srv/www/racktables-RackTables-0.22.0/wwwroot/inc/secret.php' chmod a=rw '/srv/www/racktables-RackTables-0.22.0/wwwroot/inc/secret.php' ``` > 如果开启了SELinux,即使进行上述操作,仍然会提示没有访问权限,可以暂时关闭SELinux。等安装完成后再重新打开SELinux。 > setenforce 0 # 暂时关闭SELinux > setenforce 1 # 重新开启SELinux 根据安装程序的提示,创建相应的数据库,并且正确填写配置文件。 ``` CREATE DATABASE racktables_db CHARACTER SET utf8 COLLATE utf8_general_ci; CREATE USER racktables_user@localhost IDENTIFIED BY 'MY_SECRET_PASSWORD'; GRANT ALL PRIVILEGES ON racktables_db.* TO racktables_user@localhost; ``` 完成后进入下一步。 #### Step 4 为了保证系统安全性,需要对配置文件设置正确的访问权限。需要满足以下四个条件。 - 配置文件必须无法被httpd进程写入 - 配置文件必须可以被https进程读取 - 配置文件应该无法被除httpd以外的进程读取 - 配置文件应该无法被任何用户写入 这里使用Nginx作为前端,将请求转发到php-fpm,所以这里的用户需要使用php-fpm的执行用户,即apache。 ``` chown apache:apache secret.php chmod 440 secret.php ``` 设置完成权限后,点击retry进行检测,检测通过后方可进入下一步。 #### Step 5 安装程序会在这一步初始化数据库,执行完毕后点击proceed进入下一步。 #### Step 6 设置管理员密码,用户名默认为admin无法更改,只需要填写密码即可。 #### Step 7 恭喜你🎉,RackTables安装已经完成,点击proceed进入系统。 如果有什么疑问,可以访问[wiki](https://wiki.racktables.org/index.php?title=RackTablesAdminGuide)。 Loading... # RackTables ## 环境 AlmaLinux 8 + Nginx 1.20 + PHP 7.4 + MaraDB 10.3 ## 安装Nginx ``` dnf module enable nginx:1.20 dnf install nginx systemctl enable --now nginx ``` ## 安装PHP ``` dnf module enable php:7.4 dnf install php-fpm systemctl enable --now php-fpm ``` ## 安装MariaDB ``` dnf module enable mariadb:10.3 dnf install mariadb-server systemctl enable --now mariadb ``` > 数据库安装完成后,可以使用mysql_secure_installation进行初始化,配置root密码。 ## 安装RackTables 下载RackTables最新[发布版本](https://github.com/RackTables/racktables/tags)。 ``` mkdir -p /srv/www wget https://github.com/RackTables/racktables/archive/refs/tags/RackTables-0.22.0.tar.gz tar xzvf RackTables-0.22.0.tar.gz ln -s racktables-RackTables-0.22.0 racktables ``` 新增一个Nginx虚拟主机。 /etc/nginx/conf.d/racktables.conf ``` server { listen 82; server_name _; include /etc/nginx/default.d/*.conf; index index.php; root /srv/www/racktables/wwwroot; } ``` 一切准备就绪,访问主页,你会得到一个提示,Racktables缺少必要的配置文件secret.php,这个文件由RackTables安装程序生成,点击here进入到安装程序。 #### Step 1 点击proceed进入下一步。 #### Step 2 这一步会检查RackTables运行所需要的依赖,即PHP拓展。 绿色表示依赖检测通过,红色表示依赖缺失,黄色表示可选依赖(即使缺失也不影响安装程序进行)。 对于缺失的依赖,在服务器上安装后点击retry重新检测。 当所有缺失的依赖全部安装完成后才可以入下一步。 > AlmaLinux为例,除安装PHP自带的拓展之外,需要补充两个拓展。 > ``` > dnf install php-gd php-bcmath > ``` #### Step 3 这一步安装程序会尝试创建配置文件secret.php,如果安装程序没有创建文件的权限,需要自行创建文件。并且授予安装程序写入权限。 ``` touch '/srv/www/racktables-RackTables-0.22.0/wwwroot/inc/secret.php' chmod a=rw '/srv/www/racktables-RackTables-0.22.0/wwwroot/inc/secret.php' ``` > 如果开启了SELinux,即使进行上述操作,仍然会提示没有访问权限,可以暂时关闭SELinux。等安装完成后再重新打开SELinux。 > setenforce 0 # 暂时关闭SELinux > setenforce 1 # 重新开启SELinux 根据安装程序的提示,创建相应的数据库,并且正确填写配置文件。 ``` CREATE DATABASE racktables_db CHARACTER SET utf8 COLLATE utf8_general_ci; CREATE USER racktables_user@localhost IDENTIFIED BY 'MY_SECRET_PASSWORD'; GRANT ALL PRIVILEGES ON racktables_db.* TO racktables_user@localhost; ``` 完成后进入下一步。 #### Step 4 为了保证系统安全性,需要对配置文件设置正确的访问权限。需要满足以下四个条件。 - 配置文件必须无法被httpd进程写入 - 配置文件必须可以被https进程读取 - 配置文件应该无法被除httpd以外的进程读取 - 配置文件应该无法被任何用户写入 这里使用Nginx作为前端,将请求转发到php-fpm,所以这里的用户需要使用php-fpm的执行用户,即apache。 ``` chown apache:apache secret.php chmod 440 secret.php ``` 设置完成权限后,点击retry进行检测,检测通过后方可进入下一步。 #### Step 5 安装程序会在这一步初始化数据库,执行完毕后点击proceed进入下一步。 #### Step 6 设置管理员密码,用户名默认为admin无法更改,只需要填写密码即可。 #### Step 7 恭喜你🎉,RackTables安装已经完成,点击proceed进入系统。 如果有什么疑问,可以访问[wiki](https://wiki.racktables.org/index.php?title=RackTablesAdminGuide)。 最后修改:2023 年 05 月 25 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 2 如果觉得我的文章对你有用,请随意赞赏