前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >运维 Tips | 宝塔Linux面板安装使用及安全配置那些事,新手站长必知!

运维 Tips | 宝塔Linux面板安装使用及安全配置那些事,新手站长必知!

作者头像
全栈工程师修炼指南
发布2024-06-19 18:50:46
3240
发布2024-06-19 18:50:46
举报
文章被收录于专栏:全栈工程师修炼之路

[ 知识是人生的灯塔,只有不断学习,才能照亮前行的道路 ]

0x00 前言简述

描述: 宝塔 Linux 面板服务器工具实际上UP很早就听说过,但一直没有使用过,可能是作为一名专业运维不太喜欢有界面的东西(PS: 开玩笑,主要是没时间去折腾),正好作者在腾讯云上买了五年的轻量服务器主机,日常主要用于个人博客以及工具站使用(PS: 欢迎访问 weiyigeek.top),日常运维以及修改文件都是通过SSH方式来进行,并且在防火墙做了IP访问限制,如果在外面想连接到服务器进行管理就不是很方便,遂想到 宝塔 Linux 面板可以通过浏览器界面进行服务器运维管理,所以简单的研究了一下,发现这个工具还是很好用,可以很方便的进行服务器管理,下面我们就把宝塔Linux服务器管理工具部署到这台主机,以及帮助新使用的朋友可以快速上手,除此之外也对宝塔Linux面板的安全配置等,避免在使用时的一些坑。

什么是宝塔Linux面板?

描述:宝塔Linux面板是提升运维效率的服务器管理软件,支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能。

weiyigeek.top-宝塔Linux面板图

官网地址:www.bt.cn

论坛帮助:www.bt.cn/bbs/

温馨提示:如果小伙伴们在其他平台看到此文章,一定要关注访问作者首发公众号《全栈工程师修炼指南》,给作者持续创作的动力!

为何要使用宝塔Linux面板?有什么好处(特点)?

简单的说,宝塔Linux面板基础功能免费使用(PS: 高级功能是需要付费的),可视化的Linux文件管理以及防火墙通行规则设置界面,可以很方便新手朋友正对Linux服务器(vps)进行运维管理,除此之外拥有众多的第三方应用,可极大的方便的运维工作者以及站长搭建自己的网站。

  • 快速创建管理web项目:方便便捷的网站管理功能,例如域名绑定,一键部署SSL证书,更改网站配置等功能。
  • 快速预览服务器资源:CPU、内存、磁盘IO、网络IO数据监测,可设置记录保存天数,以及任意查看某天数据。
  • 熟悉的文件管理系统:方便高效的文件管理器,支持上传、下载、打包、解压等操作,支持视频播放,文件分享,还可以在线编辑代码。
  • 一键安装软件及部署源码:通过宝塔面板软件商店,就可以轻松管理安装PHP、MySQL、web应用防火墙、防篡改、防入侵等应用,以及一键部署wordpress、discuz、dedecms等。

综上所述,宝塔Linux面板是一个非常不错的服务器管理工具,可以极大的提升运维效率。

如何快速安装宝塔Liunx面板?

描述:参照官网教程及其脚本,我们可以在一台连接外网的服务器上进行在线安装宝塔Linux面板,首先通过SSH方式连接到这台服务器,然后复制官网的安装脚本一键部署,不过官网给出的脚本还是有坑了,看看作者下面的实践你就知道了。

温馨提示:宝塔官网申明请勿在现有生产业务环境中使用,请在全新的服务器上安装部署,当然如果你有丰富的运维经验(排错、恢复),也可以在生产环境中使用,只不过建议在使用前需要备份Nginx、Apache以及Docker等相关环境的配置文件(存在环境的前提下)。

0x01 安装宝塔Linux面板

描述:在安装宝塔Linux面板之前,我们需要准备一台Linux服务器、以及注册宝塔Linux账号,方便进行app远程管理,说得太多了下面直接上手。

Step 1.注册宝塔登录后台,点击安装宝塔,此时有两种方式进行安装,一种是通过使用 SSH 连接工具连接到服务器然后执行宝塔官网提供的脚本在线安装,另外一种是通过宝塔官网提供在线一键快速安装宝塔。

weiyigeek.top-宝塔安装方式图

温馨提示:初始化安装前,建议在没装过其它环境如Apache/Nginx/php/MySQL的新系统上部署,推荐使用centos 7.X的系统安装宝塔面板。

Step 2.这里 UP 主在腾讯云上买了一台轻量服务器,系统为Ubuntu 20.04为例,下面我们通过宝塔官网提供的脚本进行安装。

代码语言:javascript
复制
# 复制:Ubuntu / Deepin 安装脚本:
cd /tmp
# 解决:忽略证书错误问题,特别是在拉取Python相关模块时
wget --no-check-certificate -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh
sed -i "s#wget -O#wget --no-check-certificate -O#g" install.sh
# 赋予权限
chmod +x install.sh 

weiyigeek.top-解决wget请求下载站点证书错误问题图

Step 3.执行安装脚本sudo ./install.sh,输入y,然后回车,再如图中所示,若检查有相关环境可输入yes强制安装,这里由于作者编译安装了 Nginx 所以有此警告,如果你是全新最小化安装的服务器应该就没有此提示,之后等待一顿的相关依赖的安装。

weiyigeek.top-执行宝塔安装图

Step 4.安装完成后,会提示宝塔面板的登录地址,以及随机生成的账号、密码,如下图所示:

代码语言:javascript
复制
外网面板地址: https://82.156.18.253:26348/a96f9f6a
内网面板地址: https://10.0.20.16:26348/a96f9f6a
username: tqpllpof
password: c8bba178

weiyigeek.top-宝塔安装成功图

Step 5.由于作者是腾讯云服务器,还需要在防火墙中开放宝塔面板的端口,所以直接在腾讯云轻量云服务器控制台进行防火墙设置,此处放行上图中的26348端口。

weiyigeek.top-开放管理面板端口图

Step 5.之后便可使用浏览器访问https://82.156.18.253:26348/a96f9f6a进行登录宝塔面板,其中a96f9f6a是随机一个8位字符的安全入口名称(即后台路径),然后输入安装时随机生成账号密码即可进入管理界面。

weiyigeek.top-登录宝塔Linux面板图

Step 6.登录成功后首次进入宝塔面板,会提示绑定宝塔官网账号(即第一步注册的账号密码),这个不用多说吧非常简单,绑定后即可跳转到宝塔Linux面板的首页。

weiyigeek.top-宝塔首页图

至此,宝塔 Linux 面板的安装部分完成,下面我们开始使用宝塔Linux面板进行服务器运维管理。

0x02 使用宝塔Linux面板

描述:宝塔Linux面板的使用非常简单,通过左边的菜单进入对应的管理界面,不过针对个人版本,有些功能是收费的,免费的功能大致有网站、FTP、数据库、Docker、监控、安全、文件、终端以及计划任务,不过对于个人来说完全够用了,大家可以根据需要自行尝试使用,这里 UP 主就不一一介绍了。

1.应用软件安装部署

Step 1.宝塔Linux面板的网站管理,这里 UP 主就简单介绍一下,首先点击网站->添加站点,然后选择安装Nginx->选择指定版本,建议使用编译安装,更加稳定。

weiyigeek.top-编译安装Nginx-V1.26.1图

Step 2.点击部署后便开始编译安装Nginx,此时安装进度会显示在面板消息盒子中,安装完成后便可在网站列表中看到Nginx的站点,如下图所示:

weiyigeek.top-启用宝塔安装的Nginx应用图

温馨提示:此处有点小坑由于bt.cn的证书不受信赖,导致无法访问并下载安装包,所以需要手动修改一下配置文件/etc/wgetrc,将check_certificate = off追加到文件末尾即可。

Step 3.在 Nginx 编译完成后,我们便可以在宝塔Linux面板中创建静态站点以及反向代理,例如,这里作者的主页站点以及博客站点,值得提一句的是在宝塔Linux面板中,申请和续签Let's Encrypt 证书非常简单,此功能相当实用。

weiyigeek.top-Nginx配置静态站点以及反向代理图

Step 4.由于作者已经在服务器中自行安装docker环境,遂也就不使用宝塔中自带的Docker,此处Docker、FTP以及数据库(MySQL/SqlServer/MongoDB/Redis/PgSQL)的安装,与上述操作差异不大,这里作者就不在累述了。

weiyigeek.top-Docker和数据库图

温馨提示:实际上有了Docker我们根本无需通过宝塔Linux面板来安装的数据库,因为Docker可以很方便的进行容器化部署数据库。

Step 5.最后,我们可以在软件商店,查看已安装以及第三方的应用软件(PS: 高级功能需要付费),如下图所示:

weiyigeek.top-宝塔Linux付费商店图

2.文件管理

描述:这个文件管理功能也非常好用,相信大家用过需要文件管理编辑器,上手操作就不用多说了吧,只不过高级功能防篡改需要收费!

weiyigeek.top-文件管理图

3.在线终端

描述:除了上述的网站、文件管理功能中以外,宝塔Linux面板还提供了在线终端功能,可以很方便的进行服务器管理,其既可以连接本地服务器,亦可连接外部的linux服务其器,如下图所示:

weiyigeek.top-在线终端图

4.计划任务

例如,我想使用 crontab 定时任务,首先在左边菜单栏中点击计划任务,然后添加一个Shell脚本计划任务(PS: 还支持其他场景的计划任务),如下所示:

代码语言:javascript
复制
#!/bin/bash
date -R >> /tmp/weiyigeek.txt
echo "全栈工程师修炼指南" >> /tmp/weiyigeek.txt
echo "www.weiyigeek.top"  >> /tmp/weiyigeek.txt

执行结果:

代码语言:javascript
复制
root@weiyigeek-top:/tmp# more weiyigeek.txt
Mon, 10 Jun 2024 22:24:01 +0800
全栈工程师修炼指南
www.weiyigeek.top
Mon, 10 Jun 2024 22:26:01 +0800
全栈工程师修炼指南
www.weiyigeek.top

weiyigeek.top-定时任务图

5.管理宝塔(命令)

描述:宝塔 Linux 面板中提供了命令的方式来进行管理,例如btbt stopbt start等,下面就简单介绍一下。

代码语言:javascript
复制
# 停止
$ bt stop
# 启动
$ bt start

6.卸载宝塔

描述:假如有一天友更好用的Linux面板,你要把宝塔Linux面板删除时,可下载官网卸载脚本来移除宝塔Linux。

温馨提示:移除宝塔Linux面板时,需要先停止宝塔Linux面板服务,以及备份相关数据防止丢失。

代码语言:javascript
复制
$ wget --no-check-certificate http://download.bt.cn/install/bt-uninstall.sh

$ chmod +x bt-uninstall.sh

$ sh bt-uninstall.sh
1) 卸载宝塔
2) 卸载宝塔及运行环境(可能影响站点、数据库及其他数据)
*请检查安全类软件是否关闭,否正可能导致无法正常卸载
=================================================
请选择你要进行的操作(1-2 默认:1): 2
Stopping Bt-Tasks...    done
Stopping Bt-Panel...    done
宝塔面板已卸载成功
bt-panel uninstall success

# 执行 bt 命令发现无法执行,此时环境已卸载!
$ bt
-bash: /usr/bin/bt: No such file or directory

0x03 宝塔Linux面板安全配置

描述:作为一名网络安全爱好者,对于自己的服务器的安全那是相对注重,那如何让宝塔Linux面板在日常使用访问中更加安全呢?

下面作者就简单介绍一下宝塔Linux面板的访问安全配置,让你的服务器或者VPS爱机不受第三者插足。

1.开启离线模式

描述:点击左边菜单栏面板设置,进入到其功能选项界面,在相关插件或应用软件安装完成后,建议开启离线模式,防止第三方恶意软件下载安装。

2.关闭体验计划

描述:防止服务器使用的数据被官方收集,遂建议关闭体验计划,其次在线客服按钮也没必要,碍事!

3.修改默认建站目录

描述:为了防止宝塔Linux面板被黑客入侵,建议修改默认的网站根目录,以及备份目录,例如:/app/wwwroot/app/backup等。

4.修改面板默认账号密码

描述:宝塔Linux面板默认账号密码为随机生成的没有复杂度,所以为了安全起见,建议修改为更加复杂的密码,用户名更改可选。

weiyigeek.top-面板设置图

5.启用面板告警

描述:点击面板设置,安全设置,启用面板告警,当服务器发生更改时,会通过多种方式通知管理员,这里最简单的是以微信公众号来通知(PS: 每天限额100条,如果机器众多还是建议选择其他四种方式)

weiyigeek.top-启用面板告警图

6.启用BasicAuth认证

描述:为面板增加一道基于BasicAuth的认证服务,有效防止面板被扫描,除此之外还可以选择动态口令认证以及访问设备验证(请根据实际需求进行设置)。

7.启用密码复杂度验证

描述:为面板密码提供复杂度验证方式,以及密码过期时间,复杂度验证规则:密码必须满足密码长度大于8位且大写字母、小写字母、数字、特殊字符至少3项组合

8.设置域名以及授权指定来源IP方式

描述:我们可以为宝塔Linux面板设置域名,同时也可以授权指定来源IP访问,例如:baota.weiyigeek.top192.168.3.11等。

9.设置面板端口及后台入口

描述:由于宝塔Linux面板默认端口和后台路径皆为随机生产,为了便于记忆使用,可以修改默认端口和后台路径,例如 8888 端口,以及 /baota 目录。

10.设置地区登陆限制

描述:为了防止恶意者非法获取到宝塔面板的账号密码进行登录,建议设置地区限制,非此地区的不能登录!

weiyigeek.top-宝塔安全设置图

除此,之外上述操作也可通过命令行交互方式来快速更改。

代码语言:javascript
复制
# 功能面板
$ bt
==================================宝塔面板命令行====================================
(1) 重启面板服务                  (8) 改面板端口                                   |
(2) 停止面板服务                  (9) 清除面板缓存                                 |
(3) 启动面板服务                  (10) 清除登录限制                                |
(4) 重载面板服务                  (11) 设置是否开启IP + User-Agent验证             |
(5) 修改面板密码                  (12) 取消域名绑定限制                            |
(6) 修改面板用户名                (13) 取消IP访问限制                              |
(7) 强制修改MySQL密码             (14) 查看面板默认信息                            |
(22) 显示面板错误日志             (15) 清理系统垃圾                                |
(23) 关闭BasicAuth认证            (16) 修复面板(检查错误并更新面板文件到最新版)    |
(24) 关闭动态口令认证             (17) 设置日志切割是否压缩                        |
(25) 设置是否保存文件历史副本     (18) 设置是否自动备份面板                        |
(26) 关闭面板ssl                  (19) 关闭面板登录地区限制                        |
(28) 修改面板安全入口             (29) 取消访问设备验证                            |
(0) 取消                          (32) 开启/关闭【80、443】端口访问面板            |
====================================================================================

0x0n 入坑出坑

问题1.宝塔Linux面板安装脚本下载时报无法验证其网站证书问题解决?

错误信息:

代码语言:javascript
复制
Connecting to dg2.bt.cn (dg2.bt.cn)|42.157.129.47|:443... connected.
ERROR: cannot verify dg2.bt.cn's certificate, issued by ‘CN=sslTrus (RSA) OV CA,O=sslTrus,C=CN’:
Unable to locally verify the issuer's authority.
To connect to dg2.bt.cn insecurely, use `--no-check-certificate'.

解决方案: 在进行 wget 命令请求时跳过证书验证,方法如下

代码语言:javascript
复制
tee -a /etc/wgetrc <<'EOF'
check_certificate = off
EOF

至此,宝塔Linux面板的安装使用介绍完毕!

文章看完了,都不关注一下作者吗?

如果此篇文章对你有帮助,请你将它分享给更多的人!

此文,为作者原创文章,希望大家多多支持,若对看友您有帮助请帮忙转发,点👍、在看,若有疑问的小伙伴,可在文末留言哟!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 全栈工程师修炼指南 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x00 前言简述
  • 0x01 安装宝塔Linux面板
  • 0x02 使用宝塔Linux面板
    • 1.应用软件安装部署
      • 2.文件管理
        • 3.在线终端
          • 4.计划任务
            • 5.管理宝塔(命令)
              • 6.卸载宝塔
              • 0x03 宝塔Linux面板安全配置
              • 0x0n 入坑出坑
              相关产品与服务
              云数据库 MySQL
              腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档