在win10环境下安装RabbitMQ的步骤第一步：下载并安装erlang原因：RabbitMQ服务端代码是使用并发式语言Erlang编写的，安装Rabbit MQ的前提是安装Erlang。下载地址：http://www.erlang.org/downloads由于我的电脑是64位系统，所以我选择是的64位下载。第二步、下载完成后开始安装点击install开始安装，完成后点击close第三步、配置环境变量ERLANG_HOME变量名：ERLANG_HOME变量值就是刚才erlang的安装地址，点击确定。然后双击系统变量path，点击“新建”，将%ERLANG_HOME%\bin加入到path中。最后windows键+R键，输入cmd，再输入erl，看到版本号就说明erlang安装成功了。第四步、下载安装rabbitMq下载地址：http://www.rabbitmq.com/download.html下载完成后双击安装RabbitMQ安装好后接下来安装RabbitMQ-Plugins。打开命令行cd，输入RabbitMQ的sbin目录然后在后面输入rabbitmq-plugins enable rabbitmq_management命令进行安装出现上图代表安装成功，打开sbin目录，双击rabbitmq-server.bat访问 http://localhost:15672默认用户名和密码都是guest登陆即可。原文出处：https://www.cnblogs.com/count-mjb/p/10939117.html
{callout color="#999999"}为了运维方便，选择直接用宝塔来管理python fastapi的项目，虽然直接部署可能性能更好更灵活，但是我选择了低层本，每个人的选择可能是不一样的，各有 考虑吧。本文的大逻辑是先写一个helloworld的程序，然后再部署到服务器上{/callout}步骤一：先本地运行一个基于fastapi的helloWorld例子，方便后面在服务器上验证编写基于FastApi的Hello World文件main.pyimport uvicorn from fastapi import FastAPI app = FastAPI() @app.get("/") def sayHi(): return {"message":"Hello world!"} # 启动uvicorn服务，默认端口8000 uvicorn myapi:api --reload if __name__ == '__main__': uvicorn.run('main:app')显示本地运行跑通，本地可以使用vscode编译器，并在运行dos命令pip install fastapi[all] uvicorn main:app --reloadreload参数是为了修改代码后的热部署，运行没有报错后可以浏览器访问： http://127.0.0.1:8000如果看到打印信息则说明OK步骤二：在宝塔上部署python的环境商店安装插件python进程管理插件Python项目管理器：管理应用实例进程守护管理器：实例进程的守护进入Python项目管理器，首先安装python版本，尽量与本地的一致，避免出现本地好的，服务器上出现问题，特别怕依赖包不一致的问题。本地查看版本的命令是python --version在本地生成requirements.txt，否则宝塔创建项目会报错。创建命令如下pip freeze >requirements.txt pip install -r requirements.txt将代码上传到宝塔的/www/wwwpython/helloworld在python进程管理插件创建项目，具体参数如下，记得选择gunicon在配置修改参数，重启。默认为worker_class = 'geventwebsocket.gunicorn.workers.GeventWebSocketWorker' 修改为worker_class = 'uvicorn.workers.UvicornWorker'这里有一个坑，启动后系统会自动暂停，日志报错如下的话，是2个问题，一是启动文件名为main.py，二是启动文件是app，即在main.py中启动命令是：uvicorn.run('main:app')具体报错信息如下：Worker failed to boot.Traceback (most recent call last): File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/arbiter.py", line 586, in spawn_worker worker.init_process() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/workers/ggevent.py", line 203, in init_process super(GeventWorker, self).init_process() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/workers/base.py", line 135, in init_process self.load_wsgi() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi self.wsgi = self.app.wsgi() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/app/base.py", line 67, in wsgi self.callable = self.load() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load return self.load_wsgiapp() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp return util.import_app(self.app_uri) File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/util.py", line 350, in import_app __import__(module) File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gevent/builtins.py", line 96, in __import__ result = _import(*args, **kwargs) File "/www/wwwpython/helloworld/myapi.py", line 9 SyntaxError: Non-ASCII character '\xe5' in file /www/wwwpython/helloworld/myapi.py on line 9, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details [2023-03-25 09:26:44 +0000] [7373] [INFO] Worker exiting (pid: 7373) [2023-03-25 09:26:44 +0000] [7368] [INFO] Shutting down: Master [2023-03-25 09:26:44 +0000] [7368] [INFO] Reason: Worker failed to boot. [2023-03-25 09:26:45 +0000] [7385] [INFO] Starting gunicorn 19.10.0 [2023-03-25 09:26:45 +0000] [7385] [INFO] Listening at: http://0.0.0.0:12345 (7385) [2023-03-25 09:26:45 +0000] [7385] [INFO] Using worker: geventwebsocket.gunicorn.workers.GeventWebSocketWorker [2023-03-25 09:26:45 +0000] [7394] [INFO] Booting worker with pid: 7394 [2023-03-25 09:26:45 +0000] [7394] [ERROR] Exception in worker process Traceback (most recent call last): File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/arbiter.py", line 586, in spawn_worker worker.init_process() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/workers/ggevent.py", line 203, in init_process super(GeventWorker, self).init_process() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/workers/base.py", line 135, in init_process self.load_wsgi() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi self.wsgi = self.app.wsgi() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/app/base.py", line 67, in wsgi self.callable = self.load() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load return self.load_wsgiapp() File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp return util.import_app(self.app_uri) File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gunicorn/util.py", line 350, in import_app __import__(module) File "/www/wwwpython/helloworld/helloworld_venv/lib/python2.7/site-packages/gevent/builtins.py", line 96, in __import__ result = _import(*args, **kwargs) File "/www/wwwpython/helloworld/myapi.py", line 9 SyntaxError: Non-ASCII character '\xe5' in file /www/wwwpython/helloworld/myapi.py on line 9, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details [2023-03-25 09:26:45 +0000] [7394] [INFO] Worker exiting (pid: 7394) [2023-03-25 09:26:45 +0000] [7385] [INFO] Shutting down: Master [2023-03-25 09:26:45 +0000] [7385] [INFO] Reason: Worker failed to boot.设置映射域名，比如设置了 demo.xxx.com，即系统会自动创建这个域名的网站，并设置了反向代理通过 http://demo.xxx.com 返回正常即配置完成。原文出处：https://www.cnblogs.com/jpeanut/p/17254756.html
前言 随着工作的多样化，办公场地也不局限于公司或家里，有些时候我们需要访问内网资源，而互联网不能直接访问到内网资源，常见的就是部署VPN服务器。 今天给搭建介绍一款开源的 VPN 软件： OpenVPN步骤准备工作 通过安装脚本即可进行安装，可使用以下任意一种方式下载到安装脚本⭕ 直接通过官网的脚本进行安装 在 Linux 系统下，执行以下命令wget https://git.io/vpn -O openvpn-install.sh && bash openvpn-install.sh⭕ 直接访问 github ，复制脚本的内容到本地，生成一个安装脚本https://github.com/Nyr/openvpn-install/blob/master/openvpn-install.sh⭕ 这里提供了一个下载地址，可以直接下载到安装脚本，扫码进行下载安装 如果是下载脚本的方式，先把脚本上传到 Linux 服务器，并授予执行权限chmod +x openvpn-install.sh执行安装脚本之后，根据提示进行设置./openvpn-install.sh选择服务器的IP地址设置公网能访问到的 IP 地址，如果有自己的域名，建议输入域名地址为了安全性，不被端口探测，我们选择推荐的 UDP 协议输入 VPN 服务的端口，一般使用默认的即可选择 DNS 服务器，一般使用本机的配置即可安装过程会生成一个客户端账号，我们输入一个并回车按下回车开始安装当出现以下信息时，说明是安装成功了日志的倒数第二行提示生成的客户端账号配置文件保存在/root/pande.ovpn客户端程序在连接VPN时需要有这个配置文件客户端程序扫码下载或者从 百度网盘 下载{mtitle title="提取码： knef"/}配置服务器 服务的配置信息存储在以下文件/etc/openvpn/server/server.conf服务脚本为systemctl status openvpn-server@server.service客户端 安装过程生成的账号对应的配置文件，是不带有密码的/root/pande.ovpn客户端连接安装 安装客户端程序。安装过程比较简单，只需要几步就能安装好提示客户端账号的配置文件需要放在其中一个目录下把客户端配置文件放入安装目录下的配置目录。在这个例子中，把服务器上生成的 /root/pande.ovpn 文件放到以上其中一个目录下。启动 双击桌面上的快捷方式打开客户端程序右键点击任务栏上的图标，选择【连接】这样就能连接上VPN服务器了。更多的介绍请访问官网进行查看：https://github.com/Nyr/openvpn-install写在最后经过简单的几步操作，我们就成功搭建了一个VPN服务器。更多的配置和使用请参考官网的介绍。原文出处：https://mp.weixin.qq.com/s/xxUhtKBSjoLiEeR6EdiYjg
对于刚入门网络安全的小伙伴而言，对于各种工具的使用算是头疼的了。不是工具的运行环境有问题，就是工具的使用命令记不住。故而为大家介绍一款综合渗透扫描工具。关于TscanPlus 是一款综合性网络安全检测和运维工具，旨在快速资产发现、识别、检测，构建基础资产信息库，协助甲方安全团队或者安全运维人员有效侦察和检索资产，发现存在的薄弱点和攻击面。安装本我们直接在Windows平台下运行。双击exe文件即可，无需安装。我们在作者的 项目地址 ： https://github.com/TideSec/TscanPlus/releases 下载对应的包即可。主要功能端口扫描 端口扫描是前期信息收集的重要手段。为了简单明了，作者提供了常见的web端口、top100、常见RCE端口等等。并且在扫描结果中，从Banner信息中可以得到相关服务的名称。URL探测 这个功能主要检测该站长都是利用了哪些框架，如WP Typecho DZ php mysql等常见的程序类型和系统服务。子域名查找 子域名查找也是我们在信息收集中重要的环节之一。以通过旁站漏洞来获取系统Shell。漏洞检测 作者提供了约400多个已知漏洞。输入目标后可快速检测常见的漏洞。密码破解 支持常见的SSH PDP MYSQL FTP等常见服务的密码破解。目录扫描 通过目录扫描，可以发现站点的一些敏感目录，如站点后台地址等。辅助功能作者为了方便初学者学习，在里面集成了常见的 CS MSF NC等工具上线的命令。原文出处：https://mp.weixin.qq.com/s/U3Hm5DoqWdTOUS8GSabRdw
实战：一款实用炫酷的Linux系统Web管理平台
{mtitle title="院长简介"/}作者：院长职位：运维开发工程师官网：https://deanit.cn博客：https://blog.deanit.cn擅长：{callout color="#bfbfbf"}【虚拟化，容器化，自动化运维，CICD，监控，日志，中间件，双机热备，分布式存储，数据库，认证，组网隧道，Kali 安全渗透，网络攻击，负载均衡，Html，Css，Js，Jq，Vue3，Shell，Python，Go，前后端框架】{/callout}项目简介{callout color="#bfbfbf"}Webmin 是用于Linux / UNIX系统管理的开源Web控制面板。Webmin允许您管理用户，组，磁盘配额以及配置最受欢迎的服务，包括Web，FTP，电子邮件和数据库服务器。{/callout}项目官网https://webmin.com/项目GitHubhttps://github.com/webmin/webminWebmin特点易于使用 ：Webmin提供了直观的界面和友好的用户体验，使得系统管理员能够轻松地完成各种管理任务。支持多种操作系统 ：Webmin支持多种Linux发行版以及其他UNIX系统，如FreeBSD和Solaris等。全面的管理功能 ：Webmin集成了众多常见的服务器管理任务，包括系统配置、软件包管理、用户管理等。安全性高 ：Webmin具有访问控制和SSL支持，为远程管理提供了足够的安全性。可扩展性强 ：Webmin采用插件式结构，可以轻松地添加或删除功能模块，使其具有很强的扩展性和伸缩性。多语言支持 ：Webmin提供多国语言版本，包括中文，能够满足不同地区和语言习惯的用户需求。灵活的配置 ：Webmin的配置非常灵活，可以根据用户的需求进行定制，满足不同规模和服务器的管理需求。实时监控与日志分析 ：Webmin能够实时监控服务器的状态，提供实时的日志分析功能，帮助管理员及时发现并解决潜在问题。支持自动化任务 ：Webmin可以配置自动化任务，使得管理员能够定时执行特定的管理任务，提高管理效率。集成度高 ：Webmin可以与其他常见的服务器软件进行集成，如Apache、Nginx、MySQL等，方便管理员进行统一的管理和维护。{mtitle title="部署安装"/}设置repo源vim /etc/yum.repos.d/webmin.repo [Webmin] name=Webmin Distribution Neutral #baseurl=https://download.webmin.com/download/yum mirrorlist=https://download.webmin.com/download/yum/mirrorlist enabled=1下载Webmin GPG密钥[root@Dean ~]# wget http://www.webmin.com/jcameron-key.asc --no-check-certificate --2024-01-21 18:23:41-- http://www.webmin.com/jcameron-key.asc 正在解析主机 www.webmin.com (www.webmin.com)... 216.105.38.11 ...... 长度：1320 (1.3K) [text/plain] 正在保存至: “jcameron-key.asc” jcameron-key.asc 100%[=======================================================================================>] 1.29K --.-KB/s 用时 0s 2024-01-21 18:23:44 (37.0 MB/s) - 已保存 “jcameron-key.asc” [1320/1320])导入Webmin GPG密钥[root@Dean ~]# rpm --import jcameron-key.asc重新生成缓存yum clean all yum makecahe安装webmin[root@Dean ~]# yum install webmin -y Webmin Distribution Neutral 3.6 MB/s | 20 MB 00:05 上次元数据过期检查：0:00:06 前，执行于 2024年01月21日 星期日 18时26分18秒。 依赖关系解决。 ============================================================================================================= 软件包 架构 版本 仓库 大小 ============================================================================================================= 安装: webmin noarch 2.105-1 Webmin 39 M 安装依赖关系: perl-Digest-SHA x86_64 1:6.02-1.el8 appstream 65 k ...... perl-Time-Piece x86_64 1.31-422.el8 appstream 97 k 事务概要 ============================================================================================================= 安装 8 软件包 总下载：40 M 安装大小：116 M 下载软件包： (1/8): perl-Filter-1.58-2.el8.x86_64.rpm 463 kB/s | 81 kB 00:00 ..... (8/8): webmin-2.105-1.noarch.rpm 31 kB/s | 39 MB 21:46 ------------------------------------------------------------------------------------------------------------- 总计 31 kB/s | 40 MB 21:47 运行事务检查 事务检查成功。 运行事务测试 事务测试成功。 运行事务 准备中 : 1/1 安装 : perl-Time-Piece-1.31-422.el8.x86_64 ...... 8/8 已更新安装的产品。 已安装: perl-Digest-SHA-1:6.02-1.el8.x86_64 ...... webmin-2.105-1.noarch 完毕！ 启动服务[root@Dean ~]# systemctl enable webmin --now [root@Dean ~]# systemctl status webmin ● webmin.service - Webmin server daemon Loaded: loaded (/usr/lib/systemd/system/webmin.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2024-01-21 18:48:22 CST; 1min 11s ago Main PID: 1707031 (miniserv.pl) Tasks: 1 (limit: 201230) Memory: 32.1M CGroup: /system.slice/webmin.service └─1707031 /usr/bin/perl /usr/libexec/webmin/miniserv.pl /etc/webmin/miniserv.conf 1月 21 18:48:22 Dean systemd[1]: Starting Webmin server daemon... 1月 21 18:48:22 Dean systemd[1]: Started Webmin server daemon.Web访问https://ip:10000账号密码，是你的主机的SSH的账号密码登录成功设置中文性能查看功能如下：特色功能：原文转载：https://mp.weixin.qq.com/s/NBtvsa9c7FTT6FsCHxMtKQ
搭建基于centos7的ftp服务器第一步，进入宝塔面板，打开软件商城，搜索安装Pure-Ftpd软件第二步，点击宝塔面板上的ftp,进入ftp配置界面。点击添加ftp按钮，配置ftp账号名，密码和文件上传到centos7服务器中的位置第三步，配置云服务器的安全组的端口，放行 FTP 协议默认端口 21 和 FTP 被动端口范围 39000-40000第四步，下载ftp客户端软件FlashFXP进行测试，具体如下图所示输入URL，用户名和密码点击链接可以连接到我们的ftp服务器（用户名密码等信息在宝塔面板的下ftp中）第五步，选择一个文件进行上传测试（我上传的是test.txt），上传成功后可以连接linux服务器查看文件
Github+jsDelivr+PicGo 为脚本/图片等静态文件加速的全球CDN
jsDelivr提供npm，GitHub，WordPress等项目的镜像，全球加速访问，所以jsDelivr + Github便是免费且好用的CDN，非常适合博客网站使用。GitHub 图床也是个不错的选择，利用 jsDelivr CDN 加速访问（jsDelivr 是一个免费开源的 CDN 解决方案），PicGo 工具一键上传，操作简单高效，GitHub 和 jsDelivr 都是大厂，不用担心跑路问题，不用担心速度和容量问题，而且完全免费，可以说是目前免费图床的最佳解决方案！1、新建Github仓库1.1 ）当然你得先有一个github账号！网址：https://github.com/1.2 ）登录/注册GitHub，新建一个仓库，填写好仓库名，仓库描述，根据需求选择是否为仓库初始化一个README.md描述文件Github+jsDelivr+PicGo 为脚本/图片等静态文件加速的全球CDN1.3）新建一个js文件，然后提交！你也可以利用git本地推送！2、Create a new release2.1 ）点击【releases】，然后我们点击【Create a new release】!不创建也是可以的。2.2 ) 版本号输入1.0 ，目标是 master分支！3、访问之后，访问：https://cdn.jsdelivr.net/gh/用户名/仓库名@版本号/ 即可访问你的内容了！比如：https://cdn.jsdelivr.net/gh/angtnt/wpcdn@1.0/文件不想带版本号？将版本号换成latest即可！或者不带版本号！或者直接@master(或者其他分支名称)！直接@master，就不用新建releases了！访问效果还不错，国内有网宿加速，国外有CloudFlare CDN加速访问！4、配置PicGo上传4.1 ) github生成一个Token在主页依次选择【Settings】-【Developer settings】-【Personal access tokens】-【Generate new token】，填写好描述，勾选【repo】，然后点击【Generate token】生成一个Token，注意这个Token只会显示一次，自己先保存下来，或者等后面配置好PicGo后再关闭此网页。4.2）前往 下载 PicGo ，安装好后开始配置github图床。设定仓库名：按照【用户名/仓库名】的格式填写设定分支名：【master】设定Token：粘贴之前生成的【Token】指定存储路径：填写想要储存的路径，如【daniao-pic/】，这样就会在仓库下创建一个名为 daniao-pic 的文件夹，图片将会储存在此文件夹中设定自定义域名：它的作用是，在图片上传后，PicGo 会按照【自定义域名+储存路径+上传的图片名】的方式生成访问链接。再放一张图片：5、最后使用限制：目前GITHUB仓库容量是没有上限的！不过官方推荐在1G以内！仓库单个文件50M会收到警告，大于100M会被拒绝！jsDelivr仅能针对50M以下的文件CDN加速！这样看来我们完全可以利用它来存一些静态文件了，如JS,CSS,图片等等！原则上这属于滥用资源，如果滥用很严重，有可能会限制国内加速，或者取消加速，取消服务。关于储存库容量https://help.github.com/cn/github/managing-large-files/what-is-my-disk-quota原文出处：https://www.daniao.org/8594.htmlhttps://help.github.com/cn/github/managing-large-files/what-is-my-disk-quota
autoPicCdn是白嫖Github的存储空间，通过 jsdelivr r全球加速(含有国内节点)。实现图床加速的目的。加速效果非常不错，用站长工具检测，也是一片绿油油，所以用来存储一些静态文件是最合适不过了。1、简介项目：https://github.com/yumusb/autoPicCdn2、功能1）选择Github（推荐）白嫖Github的存储空间，通过jsdelivr全球加速(含有国内节点)。实现图床的目的。2）选择Gitee白嫖Gitee的存储空间， 实现图床的目的。存储和访问节点都在国内，请在遵循国内相关法律的前提下使用。 文件在1M以上需要访客登录才能访问。1M以下，相当稳。3、准备1）宝塔面板最新版本2）lnmp自己安装好（nginx1.18、mysql5.7、PHP7.3、phpmyadmin4.7）4、新建仓库这里具体的可以参考，上面的文章推荐！1）当然你得先有一个github账号！网址：https://github.com/2）登录/注册GitHub，新建一个仓库，填写好仓库名，仓库描述，根据需求选择是否为仓库初始化一个README.md描述文件3）新建好即可，下面我们生成token5、生成tokenhttps://github.com/settings/tokens 去这个页面生成一个有写权限的token（repo：Full control of private repositories 和write:packages前打勾）~宝塔面板搭建autoPicCdn：一款基于jsdelivr+Github的免费CDN图床得到token后，保存备用。6、下载程序以及新建数据库1）可以利用宝塔的远程下载来搞定，下载好之后解压，把文件都复制你自己的网站根目录。2）新建数据库，至于宝塔如何新建，简单看个图吧。7、导入数据库把网站根目录下的pic.sql文件复制到（/www/backup/database）然后再数据库中导入这个文件。8、配置up.php中的相关字段打开你网站根目录下的up.php文件，配置其中的相关字段。//必选项 define("TYPE","GITHUB");//选择github //define("TYPE","GITEE");//选择gitee，如果使用gitee，需要手动建立master分支，可以看这里 https://gitee.com/help/articles/4122 define("USER","pic-cdn");//你的GitHub/Gitee的用户名 define("REPO","cdn2");//必须是上面用户名下的 公开仓库 define("MAIL","yumusb@foxmail.com");//邮箱无所谓，随便写 define("TOKEN","213");//贴入你刚才得到的token之后配置数据库信息9、效果效果还是很不错的，比之前的picgo要方便一点。10、最后看着写了很多，其实整个步骤很简单，仓库建好后，就是新建网站，下载程序，导入数据库，配置up.php,之后就可以了。不过你需要知道的是jsDelivr仅能针对50M以下的文件CDN加速！仓库单个文件50M会收到警告，大于100M会被拒绝！目前GITHUB仓库容量是没有上限的！不过官方推荐在1G以内！所以，资源不要滥用，这个图床私用就可以了，不要搞的大家都不好用了。原文出处：https://www.daniao.org/10218.html
1、简介演示：https://img.yyhy.me下载：https://git.code.tencent.com/yyhy/ImgBed.git2、准备宝塔面板PHP版本7.2及以上nginx或者Apache皆可MySQL5.73、下载及设置首先需要clone程序，具体如下：1）新建站点宝塔新建站点略过2）开始下载用SSH工具连接服务器，输入以下命令：git clone https://git.code.tencent.com/yyhy/ImgBed.git chown -R www ImgBed #改版所有者为www chmod -R 777 ImgBed #设置权限为755注意，这个程序放置在腾讯工蜂，所以你需要登录之后设置好用户名和密码才可以下载。4、安装设置1）新建数据库宝塔面板新建数据库略过2）设置运行目录为/Public网站设置→网站目录，具体看图：3）设置伪静态Apache无需配置，nginx伪静态规则在程序根目录有个nginx.txt，复制规则配置即可，之后给所有目录777权限。伪静态规则如下：如何放置看图：4）设置权限所有目录777权限5）配置/App/Database.php内的数据库信息根据自己新建的数据库信息来更新以下信息。return [ 'default' => 'mysql', 'connections' => [ 'mysql' => [ // 数据库类型 'type' => 'mysql', // 服务器地址 'hostname' => '127.0.0.1', // 数据库名 'database' => 'img', // 数据库用户名 'username' => 'root', // 数据库密码 'password' => 'root', // 数据库连接端口 'hostport' => '3306', // 数据库连接参数 'params' => [], // 数据库编码默认采用utf8 'charset' => 'utf8', // 数据库表前缀 'prefix' => 'img_', ], ], ];6）导入数据库把程序内的 install.sql 和 update.sql 复制到 /www/backup/database 内。然后分别导入 install.sql 和 update.sql 数据库。5、打开网站以上步骤都完成之后，我们就可以打开网站了，效果如图：1）前台2）后台后台登录地址：你的域名/admin/login默认的用户名密码：admin 1234566、GitHub配置登录后台点开系统设置，找到Github配置。1）配置关于这里的选项可以参考这篇文章：（ 宝塔面板搭建autoPicCdn：一款基于jsdelivr+Github的免费CDN图床 ）2）测试保存之后，即可上传图片，如果不配置github，图片默认上传到自己的服务器。用这个地址打开后会跳转到https://cdn.jsdelivr.net/表示配置成功。3）鉴黄图床自带鉴黄，可以自行设置key7、最后图床功能强大，可以开启游客或者关闭游客上传。可以在后台管理图片，支持删除图片，这个到是很不错。支持api，可以自行开发对接改api如果，没有配置github，图床默认上传到服务器硬盘。虽然默认是给出的图床域名，但是浏览器打开后会现实jsdelivr加速链接，用户可以自由选择。原文出处：https://www.daniao.org/10218.html
一、Netplan 配置流程1、Netplan默认配置文件在/etc/netplan目录下。您可以使用以下命令找到：ls /etc/netplan/就可以看到配置文件名称。2、查看Netplan网络配置文件的内容，执行以下命令：cat /etc/netplan/*.yaml3、现在你需要在任何编辑器中打开配置文件： 由于我使用 vim 编辑器来编辑配置文件，所以我将运行：vim /etc/netplan/*.yaml根据您的网络需要更新配置文件。对于静态 IP 寻址，添加 IP 地址、网关、DNS 信息，而对于动态 IP 寻址，无需添加此信息，因为它将从 DHCP 服务器获取此信息。使用以下语法编辑配置文件。4、在应用任何更改之前，我们将测试配置文件。sudo netplan try如果没有问题，它将返回配置接受消息。如果配置文件未通过测试，它将恢复为以前的工作配置。5、运行以下命令来应用新配置：sudo netplan apply6、成功应用所有配置后，通过运行以下命令重新启动 Network-Manager 服务：如果是桌面版：sudo systemctl restart system-networkd如果您使用的是 Ubuntu 服务器，请改用以下命令：sudo systemctl restart network-manager7、验证 IP 地址ip a二、Netplan 配置文件详解1.使用DHCPnetwork: version: 2 renderer: networkd ethernets: enp3s0: dhcp4: true2.使用静态IPnetwork: version: 2 renderer: networkd ethernets: enp3s0: addresses: - 10.0.0.10/8 gateway4: 10.0.0.1 nameservers: search: [mydomain, otherdomain] addresses: [10.0.0.5, 1.1.1.1]3.多个网口DHCP：network: version: 2 ethernets: enred: dhcp4: yes dhcp4-overrides: route-metric: 100 engreen: dhcp4: yes dhcp4-overrides: route-metric: 2004、连接开放的 WiFi（无密码）：network: version: 2 wifis: wl0: access-points: opennetwork: {} dhcp4: yes5、连接 WPA 加密的 WiFi：network: version: 2 renderer: networkd wifis: wlp2s0b1: dhcp4: no dhcp6: no addresses: [10.0.0.10/8] gateway4: 10.0.0.1 nameservers: addresses: [10.0.0.5, 8.8.8.8] access-points: "network_ssid_name": password: "**********"6、在单网卡上使用多个 IP 地址（同一网段）：network: version: 2 renderer: networkd ethernets: enp3s0: addresses: - 10.0.0.10/8 - 10.0.0.10/8 gateway4: 10.0.0.17、在单网卡使用多个不同网段的 IP 地址：network: version: 2 renderer: networkd ethernets: enp3s0: addresses: - 9.0.0.9/24 - 10.0.0.10/24 - 11.0.0.11/24 #gateway4: # unset, since we configure routes below routes: - to: 0.0.0.0/0 via: 9.0.0.1 metric: 100 - to: 0.0.0.0/0 via: 10.0.0.1 metric: 100 - to: 0.0.0.0/0 via: 11.0.0.1 metric: 100原谅出处： Ubuntu 通过 Netplan 配置网络教程