ubuntu系统安装1panel面板教程(修正版)

视频地址:https://www.bilibili.com/video/BV1M5KL66EpH/

vps直接用VNC来安装1panel面板,有的vps叫终端管理。
输入root用户名和密码登录liunx系统就可以了。输入密码是不会显示的,输完后直接回车就可以了。

----------------------------------------安装1panel-------------------------------------------------
安装1panel面板
打开官网https://1panel.cn/
点击免费安装
复制安装脚本
bash -c “$(curl -sSL https://resource.fit2cloud.com/1panel/package/v2/quick_start.sh)”
粘贴到liunx系统,回车。
选择语言,选择2回车为中文。
安装过程,出现光标输入内容,一直回车默认就可以了。
这样就可以了。安装完成,登录上面板了。

----------------------------------------卸装SSH服务-------------------------------------------------
SSH服务就是远程服务器管理,类似Windows的远程桌面连接。
为了服务器的安全,系统安装完以后,建议直接卸装SSH服务,每个VPS都有VNC可以管理服务器,所以不需要SSH。
以下是ubuntu系统下的卸装命令,在VNC里输入命令就可以直接卸装。
先停掉SSH服务:sudo stop ssh
卸载SSH:apt-get --purge remove openssh-server --purge
输入Y卸装。OK

----------------------------------------安装网站软件-------------------------------------------------
根据你的程序需要安装软件,php+mysql的cms一般就安装【openresty】 +【mysql】+【php运行环境创建】就可以了。
【openresty】 基于 NGINX 和 LuaJIT 的 Web 平台 (类似于windows下的iis。用来运行网站的)
【mysql】 开源关系型数据库。(用于网站程序连接数据库的程序,需要创建数据库)
【php运行环境创建】用于运行php网站程序。
【phpMyAdmin】用于管理mysql数据库的工具。
安装软件的时候,建议一个一个安装,一个安装完以后,再安装另一个。
如果一次安装多个,可能会封一段时间IP,然后就会一直安装失败。
如果出现安装失败,建议换一个VPS的公网IP,这样也许可以安装成功了。
mysql安装完成以后把root远程权限关闭掉。

这个地方有个勾选项,就是允许端口外部访问,如果勾选的话,可以用第三方桌面程序来管理mysql,如果不勾选就只能用phpMyAdmin来管理。
我这里只用phpMyAdmin,所以不勾选。我的cms运行在php5,所以mysql的版本也选择5,太高版本会出错。
端口随便换一个吧。
这个地方不用勾选端口外部访问,一会部署一个网站就可以了。

----------------------------------------php运行环境创建--------------------------------------------------
如果用的CMS运行在php5版本,那么需要添加mysql扩展才能连接数据库。
如果用的CMS运行在php7、8版本,那么需要添加mysqli扩展才能连接数据库。
不同php版本,需要的扩展不一样,具体参数可以搜索引擎查一下。
运行在php5版本的CMS程序,连接mysql数据库,是需要添加mysql名称的扩展。
我用的cms运行在php5上,所以添加mysql扩展。

先在扩展模板里添加扩展模板
点击【网站】------【扩展模板】-------【创建】—名称填mysql,扩展填mysql。

再创建PHP的镜像应用,就是运行环境。
点击【网站】------【创建】—名称填php,应用选php–选5,php版本选5.6.4,端口默认,容器名称默认,扩展模板选刚才建立的扩展模板mysql,确定。
然后就开始创建PHP应用了。需要等待一段时间,才可以制作完镜像,制作完就可以正常使用PHP的运行环境了。

----------------------------------------创建phpMyAdmin网站--------------------------------------------------
下面创建phpMyAdmin网站,来管理数据库。
域名为本机IP,端口随便设置一个。需要在防火墙设置允许。重启防火墙。
申请一个网站证书。这个地方要勾选IP证书。OK
申请完,需要网站开启证书。OK
这个直接用ip申请证书是申请不了的,但是IP后面加个端口是可以正常申请证书的。
看一下 网站程序是否运行正常。
平时不用的时候,就把端口禁止了,也就无法访问了。禁用完需要重启防火墙,才生效。OK。用的时候打开端口就可以了。

----------------------------------------证书区别--------------------------------------------------
RSA长密钥可能加载证书时间长。一般选择2048或3072
EC证书对旧版操作系统支持好,新操作系统支持可能不够完善。
免费Let’s Encrypt证书可能对某些浏览器支持不太好
那么也可以申请腾讯的免费证书,腾讯签发的是亚洲诚信的证书,支持相对好一点。

----------------------------------------新安装CMS演示--------------------------------------------------
有的CMS在安装的时候,配置里没有填写端口的选项,那么数据库地址上填写容器名称:端口号,就可以了。
用IP访问演示一下。用zip包,兼容更好。
现在可以了,刚才没有设置目录用户组权限,设置方法是这样的。这样就可以访问php程序了。
这里面没有填写端口的地方,所以直接在主机地址上填写端口号。OK

----------------------------------------现有程序恢复--------------------------------------------------
下面创建一个网站,用现有的网站程序恢复安装。我的这个是全站生成静态html的,所以首页加载静态,所以只设置index.html
修改数据库连接文件。
静态文件可以访问了,测试以下数据库,这个错误还是用户组权限没有设置1000导致的。
这个错误,是数据库里没有数据,需要恢复数据库。OK
证书就不演示了。
主要看搜索,因为搜索一般是需要调用数据库的。这里出现这个错误,是权限的问题。
权限再设置以下。给最小权限。OKOK。如果你的程序需要在VPS上发布信息,需要给更高的权限。0755

----------------------------------------常见错误总结--------------------------------------------------
Access denied.
使用ubuntu1000用户,权限给0500。只读,如果你的程序需要在VPS上发布信息,需要给更高的权限。

数据库连接错误Access denied for user
可能mysql版本太高。php5.6建议装mysql5.6

连接数据库该网页无法正常运作
没有配置mysql扩展,需要配置PHP扩展,添加mysql扩展

sql语句有误
没有恢复数据库

----------------------------------------防火墙配置----------------------------------------------------
开启tcp:80端口
开启tcp/udp:443端口
开启1panel面板端口:随机生成。
phpMyAdmin端口,需要时开启,不需要时可关闭。
为了服务器的安全,建议删除22端口,22端口为SSH,每个VPS都有VNC可以管理服务器,所以不需要SSH。

----------------------------------------面板设置--------------------------------------------------
【安全】设置
1.面板开启SSL
2.域名绑定,这里就不演示了,需要域名解析过来。可以搞个二级域名来管理面板。

修改面板端口
修改账号密码

【告警通知】设置
需要先设置告警方式,常用的告警方式是邮箱发邮件的方式来告警。
这里以QQ邮箱为例。这里就演示了,基本就是以下的内容

[设置]—[创建发送方式]
类 型:选择–邮箱通知
显示名称:填写–网站告警
发信地址:填写–你的邮箱地址,例如:11111111@qq.com
用 户 名:填写–你的邮箱地址,例如:11111111@qq.com
密 码:密码–这个需要到登录邮箱申请授权码,授权码就是密码。

以QQ邮箱为例,获得授权码方式:
1.用电脑网页登录邮箱。
2.在右上角点击【设置】–在左侧点击【账号与安全】–在左侧点击【安全设置】
3.在右侧往下拉,找到【POP3/IMAP/SMTP/Exchange/CardDAV 服务】
4.绑定手机号后,开启服务获得授权码。授权码就是密码。

SMTP 服务器:smtp.qq.com
端口号:端口号465或587
加密方式:使用SSL
收件人:可以填写另一个邮箱,也可以填同一个邮箱,自己给自己发邮件也是可以的。填写完成后,点击测试按钮,测试一下是否收到邮件。

配置好以后,手机下载一个邮箱APP,随时随地就可以接受到告警信息了。

常用告警选项
面板登录异常告警
网站证书到期
面板新版本提醒
如果你开启了ssh,可以把ssh登录告警也添加上。这里就不演示了。

----------------------------------------系统补丁升级--------------------------------------------------
以下是系统补丁升级命令,在VNC里输入命令就可以可以升级系统补丁了。(来源网络,仅供参考)
升级软件包
sudo apt-get update
sudo apt-get upgrade

升级所有软件包:
sudo apt-get dist-upgrade

安装安全更新
sudo unattended-upgrade
sudo vi /etc/apt/preferences

自动安裝安全更新
sudo dpkg-reconfigure -plow unattended-upgrades

这个看看就可以了,很简单,不演示了。

----------------------------------------月付vps可以做1panel快照----------------------------------------------------
这样每月就不用重新下载软件和创建网站和数据库了,还有配置面板了,新服务器开通后,安装完1panel面板,直接恢复快照就可以了。
就是每月VPS时间快到期的时候,创建快照。
一、快照创建方法:【面板设置】-【快照】
1.点击【创建】按钮----备份账号选择默认【服务器磁盘】下一步。
2.【系统应用】选择数据和应用都备份,下一步。就是运行环境的软件都备份,还有网站数据和数据库都备份。
3.【系统数据】默认勾选,下一步。
4.【备份数据】默认勾选,下一步。
5.【其他数据】默认勾选,下一步。
6.点击【创建】按钮,开始创建快照。创建完以后把快照保存在自己的电脑上。等需要的时候恢复。
注:这个快照里,包括了面板的所有配置,包括面板端口,账号密码,还有面板是否开启HTTPS。

创建好了。
快照文件备份的路径 /opt/1panel/backup/system_snapshot
保存电脑上就可以,用的时候恢复。OK

我重新安装一遍面板来演示。模拟新开的VPS了来恢复快照。
都是空的,现在恢复快照。
现在恢复完成了。
二、快照恢复方法:
1.点击左侧【系统】–【文件】进入目录 opt/1panel/backup/system_snapshot。如果没有system_snapshot目录,可以创建。
2.上传快照文件到system_snapshot目录下。
3.现在就可以恢复快照了,打开【面板设置】-【快照】。
4.点击【同步】按钮----备份账号选择默认【服务器磁盘】,名称选择要恢复的快照名称。点击【确认】按钮,就开始恢复快照。
这样就恢复完成了。
因为快照里包括了以前所有配置,包括面板端口,账号密码。
所以新开的VPS的端口就访问不了啦。账号密码也要用以前的才可以登录。
因为原来开启了HTTPS,所以地址要换成HTTPS
这样就恢复快照成功了。如果还是无法访问,可以尝试在VNC里添加端口。演示一下。OK

注:原来的快照里,包括了面板的所有配置,包括面板端口,账号密码,还有面板是否开启HTTPS。
每次安装面板都是随机生成端口和账号密码的。
而恢复完快照以后,需要用以前备份快照的账号密码和端口访问面板,如果开启了HTTPS,那么访问面板就需要加上https,开启域名访问就不能用IP访问。

因为新的vps,安装完面板,端口会随机改变。恢复快照以后,端口恢复到原来的端口了,这时需要防火墙上开启这个原来备份快照的端口。
防火墙添加允许端口命令:
sudo ufw allow 17308/tcp

如果你绑定了域名就用域名访问,没有绑定域名,可以用IP。建议绑定域名,更安全。更换域名的话,可以关闭域名访问。
关闭域名访问的命令
1pctl reset domain

好了,教程结束。

----------------------------------------常用1panel命令------------------------------------------------
查看用户信息:1pctl user-info
包括面板地址,用户名。

修改密码:1pctl update password
修改登录面板密码

防火墙添加允许端口
sudo ufw allow 端口号/tcp

关闭域名访问的命令
1pctl reset domain

取消安全限制
1pctl security disable

取消https访问
1pctl reset https

----------------------------------------1panel官方论坛------------------------------------------------
很多问题都可以在这里找到。