最近在自己的服务器上搭建Kloxo面板造福大众,然后遇到了一点问题,就是Kloxo面板的后台7777端口访问的时候总是会提示证书是由不受信任的颁发机构颁发。做完一个重度强迫症患者(误),这是绝对不能忍的!
但是找来找去一直没有发现相关的文章。看了大家对不常用的东西一点都不在乎= =|||于是只好自己动手。
首先在你的命令行中输入:
ps -aux|grep kloxo.httpd
然后你会看到类似这样的显示:
lxlabs 16186 0.0 0.2 7256 3544 ? S 04:07 0:01 /usr/local/lxlabs/ext/lxlighttpd/sbin/kloxo.httpd -f /usr/local/lxlabs/kloxo/file/lighttpd.conf root 24325 0.0 0.0 3188 796 pts/0 S+ 17:26 0:00 grep kloxo.httpd
其中/usr/local/lxlabs/kloxo/file/lighttpd.conf就是Kloxo控制面板的Lighttpd配置文件。(找到它真不容易啊。。。在Apache那绕了一个小时的弯,突然灵光一闪看了下进程列表然后哭了。。。这货居然用的是独立的一套Lighttpd。。。)
打开拉到最下方,能看到:
$SERVER["socket"] == ":7777" { server.document-root = "/usr/local/lxlabs/kloxo/httpdocs/" ssl.engine = "enable" ssl.pemfile = "/usr/local/lxlabs/kloxo/etc/program.pem" ssl.ca-file = "/usr/local/lxlabs/kloxo/etc/program.ca" ssl.use-sslv2 = "disable" }
其中ssl.pemfile和ssl.ca-file就是我们需要修改的内容所指的文件就是我们要修改的内容。这里指向的是Kloxo自带的一个证书文件。现在我们修改这两项,将其指定到我们自己的证书文件。注意,ssl.pemfile我之所以没用ssl.crt是因为Lighttpd需要的证书文件比较特殊,是把Key私钥直接附加在crt证书后面生成的。为了不破坏原式证书,我起了一个不一样的名字来区分。 现在我们找到这两个program.pem和program.ca并将其替换成我们自己的证书。
接下来以StartSSL的免费SSL证书为例,说明这两个文件如何生成。
首先,我们从StartSSL拿到的证书文件包括:
ca.pem
ssl.crt
ssl.key
sub.class1.server.ca.pem
四个文件。其中ssl.key是预先解密好的私钥文件。当然不解密应该也可以,但是每次启动服务的时候都需要输入私钥密码,非常麻烦。
首先我们生成program.pem:
cat ssl.crt ssl.key > program.pem
这个ssl_key.crt就是我们最终需要的文件,即ssl.pemfile
然后生成ca-certs.crt:
cat sub.class1.server.ca.pem ca.pem > program.ca
此时生成的文件就是我们需要的文件。
然后将两个文件替换掉原来的文件,把Lighttpd重启一下,再访问就能看到效果了。
Kloxo面板后台SSL证书替换 by 桔子小窝 is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
碰巧看到这个,真不错,我会再来关注你的。