本次实验环境如下:
国内的阿里云,腾讯云等获取 root 权限很简单,我记得这两家的 CentOS 系统一般都是默认 root 权限的,但这里还是要说一下,如何开启 root 密码登陆的方式,(如果以获得 root 权限,则可以跳过这一段)。
先使用 sudo -i
切换到 root 用户,vi /etc/ssh/sshd_config
: 找到 PermitRootLogin no
改成 PermitRootLogin yes
找到 PasswordAuthentication no
改成 PasswordAuthentication yes
按 Esc 输入:wq
保存退出 vi
根据系统重启 SSH 服务,其他系统请自行搜索。
sevice ssh restart # centos 6.x
systemctl restart sshd.service # centos 7.x
这样就开启用 root 用户密码登陆的权限了。但我们还不知道 root 用户的密码呢,所以输入 passwd 修改一下就可以用 xshell、putty 等工具登陆了。
Google Cloud Platform
缺只允许使用 ssh 登陆,虽然可以使用 sudo 来使用 root 权限,但发现最后还是有一些问题,就是 aria 下载的文件都是 root 用户,root 组的,而 kodexplorer 对这些下载的文件只有只读权限,很不方便,既然是个人的一些环境,所以这里就不那么考虑安全性了。
下载:
cd ~
wget https://www.apachefriends.org/xampp-files/7.2.0/xampp-linux-x64-7.2.0-0-installer.run
chmod 777 xampp-linux-x64-7.2.0-0-installer.run
如果提示 bash: wget: command not found
,就先执行一下 yum install wget
安装:
1 | ./xampp-linux-x64-7.2.0-0-installer.run |
---|
安装选项全部默认即可,直接回车确认。
进入站点目录,创建网站存放目录
cd /opt/lampp/htdocs
mkdir kodcloud
cd kodcloud
下载
1 | wget http://static.kodcloud.com/update/download/kodexplorer4.25.zip |
---|
安装解压工具并解压
yum install unzip
unzip kodexplorer4.25.zip
rm -rf kodexplorer4.25.zip
赋予权限
1 | chmod 777 -R /opt/lampp/htdocs/kodcloud |
---|
现在访问 http://ip/kodcloud 即可访问到了,可能有人会说,我不想要这一级目录,并且还要配置域名,关于域名的配置,我们一会再说。
aria2 安装脚本源地址:https://doub.bid/shell-jc4/ (需访问外国网站)
cd ~
wget -N --no-check-certificate https://softs.fun/Bash/aria2.sh && chmod +x aria2.sh && bash aria2.sh
# 如果上面这个脚本无法下载,尝试使用备用下载:
#wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/aria2.sh && chmod +x aria2.sh && bash aria2.sh
执行后输入 1 即可安装。
创建站点存放目录
cd /opt/lampp/htdocs
mkdir aria
cd /opt/lampp/htdocs/aria
下载
1 | wget https://github.com/mayswind/AriaNg/releases/download/0.3.0/aria-ng-0.3.0.zip |
---|
解压
unzip aria-ng-0.3.0.zip
rm -rf aria-ng-0.3.0.zip
阿里有提供免费的 SSL 证书,打开阿里云官网 -> 管理控制台 -> 左侧的安全(云盾) -> CA 证书服务。
填写相应的信息,申请两个即可,我这里申请是 pan.zhaojun1998.com 和 aria.zhaojun1998.com 的证书。
申请后几分钟内会自动通过,然后下载证书。
接下来就是如何将证书上传到服务器的问题了,可以通过前面配置的 kodcloud 云打开 http://ip/kodcloud 将证书上传进去,或 ftp 等方式。(只需要上传 数字.key 和 数字.pem 即可)
最后在 /opt/lampp/apache2
目录下建立一个文件夹 cert,将证书放进来。
然后编辑 /opt/lampp/apache2/conf/httpd.conf,将域名对应上站点路径和证书。
Alias /bitnami/ "/opt/lampp/apache2/htdocs/"
Alias /bitnami "/opt/lampp/apache2/htdocs"
<Directory "/opt/lampp/apache2/htdocs">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
<VirtualHost *:80> ## http 自动跳转 https
ServerName pan.zhaojun1998.com
RewriteEngine On
RewriteRule ^/(.*)$ https://pan.zhaojun1998.com/$1 [R=301]
</VirtualHost>
<VirtualHost *:80> ## http 自动跳转 https
ServerName aria.zhaojun1998.com
RewriteEngine On
RewriteRule ^/(.*)$ https://aria.zhaojun1998.com/$1 [R=301]
</VirtualHost>
<virtualhost *:443> ## https 配置
SSLEngine on
SSLCertificateFile /opt/lampp/apache2/cert/214413124310384.pem
SSLCertificateKeyFile /opt/lampp/apache2/cert/214413124310384.key
ServerName pan.zhaojun1998.com
DocumentRoot /opt/lampp/htdocs/kodcloud
</virtualhost>
<virtualhost *:443> ## https 配置
SSLEngine on
SSLCertificateFile /opt/lampp/apache2/cert/214298372380384.pem
SSLCertificateKeyFile /opt/lampp/apache2/cert/214298372380384.key
ServerName aria.zhaojun1998.com
DocumentRoot /opt/lampp/htdocs/aria
</virtualhost>
配置完或,保存,然后重启 xampp:
1 | /opt/lampp/lampp restart |
---|
这样基本就完成了,但打开 aria 后发现,无法链接上 aria,原因是因为我们配置了 https 证书,但没有告诉 aria ,下面我们修改 aria 的配置:
cd ~
./aria2.sh
选择主要修改的为以下几项:
## 下载到 kodcloud 管理员的 home 目录下
dir=/opt/lampp/htdocs/kodcloud/data/User/admin/home
## 设置的RPC授权令牌,就是一个认证的密码,防止别人恶意下载
rpc-secret=123456
# 是否启用 RPC 服务的 SSL/TLS 加密,
# 启用加密后 RPC 服务需要使用 https 或者 wss 协议连接
rpc-secure=true
# 在 RPC 服务中启用 SSL/TLS 加密时的证书文件(.pem/.crt)
rpc-certificate=你的 aria 证书pem路径
# 在 RPC 服务中启用 SSL/TLS 加密时的私钥文件(.key)
rpc-private-key=你的 aria 证书key路径
aria 是以 root 身份运行的,而 kodcloud 是以 apache 的 daemon 用户运行的。也就是说 aria 下载的文件, kodcloud 只有可读的权限,无法进行删除,修改等操作。
root 用户创建的文件默认是 644 权限,我们将它改为 664 权限,然后将 daemon 用户添加到 root 组即可。
修改 root 用户创建文件的默认权限,将超级用户的 uamsk 修改为 002 即可,这个计算方式有兴趣的自行查阅:
vim /etc/bashrc 71行是普通用户的更改,73是超级用户的更改
vim /etc/profile 60行是普通用户的更改,62是超级用户的更改
source /etc/bashrc ##刷新bash配置
source /etc/profile ##刷新系统配置
将 daemon 添加到 root 组
1 | usermod -a -G root daemon |
---|
重启 xampp 服务
1 | /opt/lampp/lampp restart |
---|