宝塔面板官方解释:宝塔Linux面板是提升运维效率的服务器管理软件,支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能。有30个人的专业团队研发及维护,经过200多个版本的迭代,功能全,少出错且足够安全,已获得全球百万用户认可安装。其实类似于国外常使用的cpanel面板,不过cpanel面板要成功安装都很难。最近因为有部署网页的需求,嫌直接Linux命令行部署太麻烦了,还得安装web服务器,并且还要各种配置,部署运行环境,而在进行这些工作的过程中总是很容易出错,所以就决定采用宝塔管理面板,可以满足我的这方面的需求。不过用第三方的免费的管理工具还是有安全方面的担忧的,酌情使用。一般我仅用于个人业余使用,对安全性要求也不高。当然我们对安全的理解可能有不同的认知。通过宝塔面板来操作Linux服务器的易用性可谓是小白站长的福音。当然了对于运维老鸟来说用宝塔面板也可以省去很多的不必要的麻烦步骤,不过实际上的安装步骤其实是很简短的,也就几行命令的执行。
进入正题,安装开始:
安装环境中的系统要求就不用多说了,我相信会使用Linux系统和想要成为站长的朋友对使用的服务器还是有一点要求的 需要保证系统是干净的,也就是说没有过多的安装什么环境,例如没有安装别的环境所带来的Apache/Nginx/MySQL/PHP/Java等,如果已经安装了这些环境或者软件的话,建议备份好数据后重装系统。因为如果再安装宝塔面板可能会导致端口冲突等不必要的报错,而如果盆友不是一个专业人员的话很有可能解决不了。我使用的是阿里云服务器,一台入门级的,可以从上图看出系统的一些信息。然后通过阿里云安全组开通宝塔面板的默认访问端口--8888。因为需要通过IP地址和这个端口访问到安装页面。后续如果有自己的域名了可以将端口隐藏掉,禁止公网对端口的访问。当然了我为了安全在安装后更改了访问端口。如下图我使用了9872端口。可以通过Xshell登录Linux系统。执行如下命令:
curl -sSO http://download.bt.cn/install/install_panel.sh && bash install_panel.sh
顺利执行完成了后就会出现安装成功的通知,并且会列出访问地址以及登录用户名和密码(建议后期用户名和密码都自行更改)。然后我们就可以根据提示访问到到安装好的宝塔面板并登录进去.
登录后:
在一开始的时候是通过IP地址和端口加访问安全码来访问到我们的管理面板的。这样是很不安全的行为。所以后面是通过域名,隐藏端口的形式来访问到面板。其实也就是通过http协议的默认的80端口来访问。我这里因为已经部署过网站了,也就是通过宝塔买面板安装了LNMP(Linux+nginx+mysql+php)环境了,而其中的nginx就是web服务器,推也是使用nginx作为web服务器,现在主流的web服务器就是nginx,相对于apache来说nginx更灵活方便易用功能强大,并且轻量。在服务器中找到nginx的配置文件的路径:~]# find / -name nginx.conf/www/server/nginx/conf/nginx.conf~]# vim /www/server/nginx/conf/nginx.conf通过这条命令打开nginx.conf配置文件,找到它的独立的配置文件所在目录
这个include就是单个配置文件的所在路径,在这个路径下单独创建宝塔的域名访问配置文件。例如:
nginx]# vim bt.example.com.conf server{ listen 80; listen 443 ssl http2; server_name bt.example.com; #index index.php index.html index.htm default.php default.htm default.html; #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则 #error_page 404/404.html; ssl_certificate /www/server/panel/vhost/cert/bt.example.com/bt.example.com.pem; ssl_certificate_key /www/server/panel/vhost/cert/bt.example.com/bt.example.com.key; ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; add_header Strict-Transport-Security "max-age=31536000"; error_page 497 https://$host$request_uri; #SSL-END #ERROR-PAGE-START 错误页配置,可以注释、删除或修改 #error_page 404 /404.html; #error_page 502 /502.html; #ERROR-PAGE-END location / { # root /root;#定义服务器的默认网站根目录位置 index index.php index.html index.htm;#定义首页索引文件的名称 proxy_pass http://bt.example.com:9872/;#请求转向定义的服务器 } #禁止访问的文件或目录 location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md) { return 404; } access_log /www/wwwlogs/bt.example.com.log; error_log /www/wwwlogs/bt.example.com.error.log;}
如上就是我配置的通过域名采用http协议默认端口访问面板。并且我还做了一步操作,实现https访问,SSL证书可以通过阿里云域名管理后台去申请免费的证书。然后部署到指定的目录中并开启443端口就可以实现https协议访问了。通过配置Nginx来实现域名访问的机制就是利用了nginx的反向代理的功能。不过需要注意的是宝塔面板还有一个访问安全码需要写到反向代理到的URL中去。到此本文结束。