Hi,
有钱终成眷属
没钱亲眼目睹

技术文章

登录服务器失败: TCP拔号: 查找 xxng.cn on 192.168.0.1:53: 读取UDP端口 172.17.0.4:48264->192.168.0.1:53: read: onnection refused

伊阳阅读(81)

1619.png
之前因没有公网IP,家中的NAS是通过FRP的方式进行的。最近又搞了个IPv6,虽然NAS获取了IPv6的地址,但外网还是无法连接,上网查了好久,说是光猫防火墙的事,但进去光猫的防火墙是关闭的。最后没办法,咸鱼上搞了个红米刷的爱快的路由器,经过一顿捣鼓,NAS IPv6的事情给搞好了。但同时也发现docker部署的frp一连串的报错代码,也是挺郁闷的。
_20240113090606.jpg

[W] [service.go:128] 登录服务器失败: TCP拔号: 查找 rps.chywyang.cn on 192.168.0.1:53: 读取UDP端口 172.17.0.4:48264->192.168.0.1:53: read: onnection refused

以为是爱快路由器的事,进去后台界面,找了半天也没发现哪里不对。最后再网上找了一个类似的贴子,虽然问题不是完全相同,但想着试一试,结果还真成功了。
原来是docker 容器的默认DNS目标为本地路由,至于之前为啥好着就不清楚了。按照下面的方法修改即可。

#SSH用命令docker exec -it 容器ID /bin/bash 连接到该容器。
root@CYY_NAS:~# docker exec -it 479ac3cef453 /bin/bash
#执行 vim  /etc/resolve.conf 命令。
root@dmtc-sakura1:/etc# vi /etc/resolv.conf 
#将原servername的ip地址改为8.8.8.8或114.114.114.114,保存即可。
nameserver 8.8.8.8
#servername为dns服务器名称,8.8.8.8为dns的解析服务器地址。
nameserver 114.114.114.114

_20240113094837.jpg

Nginx反向代理SSL +1408F10B错误

伊阳阅读(168)

1569753242
去年有大概1年时间,我的博客因服务器到期,续费太贵,因此将我的博客站点及其他部分站一起迁移到了本地。用了一年的免费代理服务器,但是在这段时间不稳定,因此决定将博客再次搬到云服务器上,其他站点通过反向代理实现。大部分站点都是ipv4,都OK了,唯独Cloudreve的8443端口是ipv6,发现一直返回502。查了一下报错日志如下。

[error] 25148#0: *5864 SSL_do_handshake() failed (SSL: error:1408F10B:SSL routines:ssl3_get_record:wrong version number) while SSL handshaking to upstream, client: xxx.xxx.xxx.xxx, server: xxx.xxx, request: "GET /dav/bookmarks.xbel.lock HTTP/2.0", upstream: "https://127.0.0.1:909/dav/bookmarks.xbel.lock", host: "xxx.xxx

代理服务用的是宝塔+NGINX,代码如下:

location ^~ /
{
    proxy_pass https://127.0.0.1:909;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    proxy_http_version 1.1;
}

最后修改为以下代码:

location ^~ /
{
    proxy_pass https://127.0.0.1:909;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_ssl_session_reuse off;
    proxy_ssl_server_name on;
    proxy_ssl_name $host;
    proxy_ssl_protocols TLSv1.2;       
}

linux系统中如何查看端口

伊阳阅读(246)

我们在操作linux系统或者在安装linux软件的时候,经常会遇到端口被其他进程占用的问题,那么如何查看端口被某个进程占用呢,下面就列举几个可以查看linux端口被占用的方法。

netstat命令

netstat命令用于显示与网络相关的信息,包括正在使用的端口。
命令格式:

sudo netstat -tlnp | grep 端口号
-端口号为需要查询的端口号。
-t选项表示显示TCP连接
-u选项表示显示UDP连接
-l选项表示仅显示监听状态的连接
-n选项表示显示数字格式的IP地址和端口号

_20230909083821.png

ps命令

ps命令可以列出当前系统中正在运行的进程信息。可以使用ps命令结合grep命令来查找某个进程,然后再查看该进程打开的网络端口。
命令格式:

ps -ef | grep 进程名

_20230909084553.png

服务Spooler(spooler)的启动失败的处理办法

伊阳阅读(337)

最近给同事电脑安装Adobe Acrobat软件时,提示”服务Spooler(spooler)的启动失败。请确认您有足够的权限启动系统服务。”。
微信图片 20230727103108
紧接着在网上查了下spooler的作用,介绍说是打印服务。
在电脑运行框里输入:services.msc,打开系统服务列表里面发现没有Print Spooler服务。
微信截图 20230727111841
接下来在系统C盘Windows\System32下查找是否存在spoolsv.exe这个文件。
如果有,就比较好办了。按照下面的方法操作即可。

1、将下列代码复制到记事本,并另存为spooler.reg。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Spooler]
"DependOnService"=hex(7):52,00,50,00,43,00,53,00,53,00,00,00,68,00,74,00,74,00,\
  70,00,00,00,00,00
"Description"="@%systemroot%\\system32\\spoolsv.exe,-2"
"DisplayName"="@%systemroot%\\system32\\spoolsv.exe,-1"
"ErrorControl"=dword:00000001
"FailureActions"=hex:10,0e,00,00,00,00,00,00,00,00,00,00,03,00,00,00,14,00,00,\
  00,01,00,00,00,88,13,00,00,01,00,00,00,88,13,00,00,00,00,00,00,00,00,00,00
"Group"="SpoolerGroup"
"ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\
  74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,73,\
  00,70,00,6f,00,6f,00,6c,00,73,00,76,00,2e,00,65,00,78,00,65,00,00,00
"ObjectName"="LocalSystem"
"RequiredPrivileges"=hex(7):53,00,65,00,54,00,63,00,62,00,50,00,72,00,69,00,76,\
  00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,49,00,6d,00,70,00,65,00,\
  72,00,73,00,6f,00,6e,00,61,00,74,00,65,00,50,00,72,00,69,00,76,00,69,00,6c,\
  00,65,00,67,00,65,00,00,00,53,00,65,00,41,00,75,00,64,00,69,00,74,00,50,00,\
  72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,43,00,68,\
  00,61,00,6e,00,67,00,65,00,4e,00,6f,00,74,00,69,00,66,00,79,00,50,00,72,00,\
  69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,53,00,65,00,41,00,73,00,73,\
  00,69,00,67,00,6e,00,50,00,72,00,69,00,6d,00,61,00,72,00,79,00,54,00,6f,00,\
  6b,00,65,00,6e,00,50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,\
  00,53,00,65,00,4c,00,6f,00,61,00,64,00,44,00,72,00,69,00,76,00,65,00,72,00,\
  50,00,72,00,69,00,76,00,69,00,6c,00,65,00,67,00,65,00,00,00,00,00
"ServiceSidType"=dword:00000001
"Start"=dword:00000002
"Type"=dword:00000110

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Spooler\Performance]
"Close"="PerfClose"
"Collect"="PerfCollect"
"Collect Timeout"=dword:000007d0
"Library"="C:\\Windows\\System32\\winspool.drv"
"Object List"="1450"
"Open"="PerfOpen"
"Open Timeout"=dword:00000fa0

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Spooler\Security]
"Security"=hex:01,00,14,80,78,00,00,00,84,00,00,00,14,00,00,00,30,00,00,00,02,\
  00,1c,00,01,00,00,00,02,80,14,00,ff,01,0f,00,01,01,00,00,00,00,00,01,00,00,\
  00,00,02,00,48,00,03,00,00,00,00,00,14,00,8d,01,02,00,01,01,00,00,00,00,00,\
  05,0b,00,00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,\
  20,02,00,00,00,00,14,00,fd,01,02,00,01,01,00,00,00,00,00,05,12,00,00,00,01,\
  01,00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00
2、双击运行spooler.reg,并点击“是”即可。

微信截图 20230727112135

WIN11 关闭内核隔离的处理办法

伊阳阅读(309)

Win11内核隔离是Microsoft作为Windows Defender漏洞保护的一部分添加的许多新安全功能中的一部分。这是一组旨在保护Windows免受攻击的功能。但是:Win11内核隔离,内存完整性的开启可能会导致某些设备驱动程序或其他低级Windows应用程序出现问题,比如很多用户遇到的驱动无法兼容的问题。那么如何关闭Win11内核隔离呢?
一、点开始–设置—隐私和安全性–打开“WINDOWS安全中心”—打开设备安全性。

二、找到内核隔离详细信息。

三、点击关闭。
微信截图 20230512142556

群晖定时备份文件

伊阳阅读(371)

1557D6JF0O3Y
上一篇文章介绍了在网站搭设成功后,为了数据的安全考虑,群晖如何定时备份mysql数据库,本篇将介绍群晖如何定时备份群晖内的文件。

一、在群晖中新建计划任务。

控制面板–>计划任务–>新增–>计划的任务–>用户定义的脚本
160335
1、任务名称自己修改
160438
2、设置任务执行的周期
160458
3、添加任务代码
172012
定时备份任务代码:


#!/bin/bash
#备份保存路径
backup_dir=/volume1/Disk_1/Backup/web
#要备份的文件
file_name = cloudreve
cd /volume1/web
tar zcvf $file_name_$(date +"%Y%m%d").tar.gz $file_name
mv $file_name_$(date +"%Y%m%d").tar.gz $backup_dir
rm $backup_dir/$file_name_$(date -d -3day +"%Y%m%d").tar.gz

好了,到此为止,文件备份任务就设置好了。

群晖中定时备份mysql数据库

伊阳阅读(317)

1440w
在群晖中搭建网站后,随着时间的推移,数据会越来越多,而数据也越来越重要,那么,如何对网站的数据库进行定时的备份呢?接下来,我将通过在群晖中添加计划任务对mysql进行定时备份,以保证网站数据的安全。

一、在群晖中新建计划任务。

控制面板–>计划任务–>新增–>计划的任务–>用户定义的脚本
160335
1、任务名称自己修改
160438
2、设置任务执行的周期
160458
3、添加任务代码
160527
定时备份任务代码:


#!/bin/bash
#保存备份个数,自己去修改
number=3
#备份保存路径
backup_dir=/volume1/Disk_1/Backup/sqldata
#日期
dd=`date +%Y-%m-%d-%H-%M-%S`
#备份工具
tool=mysqldump
#数据库用户名
username=root
#数据库密码
password=Wscrq@0327
#将要备份的数据库
database_name=typecho
#如果文件夹不存在则创建
if [ ! -d $backup_dir ];
then     
    mkdir -p $backup_dir;
fi
#简单写法 
$tool -u $username -p$password $database_name > $backup_dir/$database_name-$dd.sql
#写创建备份日志
echo "create $backup_dir/$database_name-$dd.dupm" >> $backup_dir/log.txt
#找出需要删除的备份
delfile=`ls -l -crt $backup_dir/$database_name*.sql | awk '{print $9 }' | head -1`
#判断现在的备份数量是否大于$number
count=`ls -l -crt $backup_dir/$database_name*.sql | awk '{print $9 }' | wc -l`
if [ $count -gt $number ]
then
  #删除最早生成的备份,只保留number数量的备份
  rm $delfile
  #写删除文件日志
  echo "delete $delfile" >> $backup_dir/log.txt
fi

好了,到此为止,数据库备份任务就设置好了。

群晖通过docker及macvlan的方式安装宝塔面板

伊阳阅读(647)


宝塔面板是一款服务器管理软件,支持Windows和Linux系统,服务器可以通过网络轻松管理,提高运维效率。例如:创建和管理网站、FTP和数据库,并具有可视化文件管理器、可视化软件管理器、可视化CPU、内存、流程监控图表、规划任务等功能。
宝塔面板一直没有开发群晖套件,群晖安装宝塔面板一般都是通过docker方式。一般采用hosts网络模式安装,但这样会和群晖本身的80端口有冲突,并不推荐,所以这里将介绍如何通过macvlan的模式直接桥接本地局域网。其实这也应该是目前最优的安装方式。

一、启用open switch

控制面板-网络-网络界面-管理-open switch设置,勾选启用,确定。

二、Docker创建桥接网卡

群晖Docker默认是没有桥接网卡的,所以需要手动创建。提前要开启SSH和SNMP功能。
通过第三方软件SSH连接群晖
输入命令 ip addr 并回车
返回的值中,找到对应你的群晖IP地址那条,上面就是物理网卡名称,网卡名称是ovs_eth0
输入命令创建桥接网卡


docker network create -d macvlan --subnet=192.168.10.0/24 --gateway=192.168.10.1 -o parent=ovs_eth0 bridge-host
命令说明:192.168.10.0为你的内网地址段,192.168.10.1为你的网关地址,ovs_eth0是你的物理网卡名称

输入命令查看docker网络模式

docker network ls


创建好之后,docker的网络里会多出一个bridge-host网卡。

三、docker安装宝塔面板

生产环境中,为了避免极小概率的数据丢失,我们将容器内的宝塔文件映射到宿主机的目录中(您之后安装的 Nginx、MySQL 等服务均会挂载到宿主机目录)。该方法是 Docker 部署宝塔面板的最优方案,可以在生产环境中运行。
首先按最简方案创建一个测试容器(为保存宝塔文件到宿主机目录中)
输入命令创建测试容器(这里仅为测试容器,为避免出错,后面几步请原封不动地复制粘贴)


docker run -itd --net=host \
--name baota-test cyberbolt/baota \
-port 26756 -username cyberbolt -password abc123456

将 Docker 容器中的 /www 目录 拷贝至宿主机的 /www

docker cp baota-test:/www /www

拷贝完成后删除创建的测试容器

docker stop baota-test && docker rm baota-test

创建宝塔面板容器,并将宿主机目录映射至容器中(自行输入面板的 端口号、用户名和密码后,即可完成部署)

docker run -itd -v /www:/www --net=bridge-host --ip=192.168.10.253 --restart=always \
--name baota cyberbolt/baota \
-port 8888 -username cyberbolt -password abc123456

说明:
-v /www:/www 映射文件路径(群晖映射路径 : docker内路径)
–net=bridge-host 容器使用macvlan网络桥接网卡
–name=baota 容器名称
–ip=192.168.10.253 指定静态ip,ip根据实际情况填写
–restart=always: 守护进程,容器挂掉将自动重启
-port : 因为桥接的网卡,无需映射端口,所以此处删除
-username: 填写宝塔面板的用户名
-password : 填写宝塔面板的密码

四、登录方式

登陆地址: http://{{服务器的ip地址}}:{{您输入的端口号}}
账号: 您填写的用户名
密码: 您填写的密码

Windows11关闭快速启动的方法

伊阳阅读(292)

本文最后更新于2022年8月22日,已超过 2 年没有更新,如果文章内容或图片资源失效,请留言反馈,我会及时处理,谢谢!

windows 11电脑快速启动怎么关闭?快速启动,在Windows系统下,还有在BIOS中,都可以设置,考虑到有些用户想关闭电脑中的快速启动,今天我们就来看看电脑快速启动关闭方法。

系统中的快速启动和BIOS中的快速启动区别

系统中的快速启动是指电脑不真正关机,而是保持低限度的活动,保存一定的数据在你需要使用电脑的时候可以快速结束休眠状态运行。
BIOS中的快速启动是让主板放弃自检等活动,从而减少从通电到真正开机的时间间隔。
下面主要介绍在Windows系统下如何关闭快速启动

方法一、

1、首先,按 Win + S 组合键,或点击任务栏上的搜索图标;
2、Windows搜索窗口,搜索框输入控制面板,然后点击打开系统给出的最佳匹配控制面板应用;

3、控制面板窗口,类别查看方式下,找到并点击硬件和声音;

4、硬件和声音窗口,点击电源选项功能;

5、打开选择电源按钮的功能

6、点击更改当前不可用的设置,取消勾选快速启动,然后保存修改即可。

方法二、

鼠标右击win11开始菜单选择windows终端(管理员)如图;打开输入:powercfg /h off按下回车即可;


如果需要开启快速启动把“off”改为“on”即可

群晖安装Flexget套件并配置WebUI

伊阳阅读(1080)

本文最后更新于2022年9月17日,已超过 2 年没有更新,如果文章内容或图片资源失效,请留言反馈,我会及时处理,谢谢!

FlexGet 是一个支持自动下载和处理来自不同网站或者是 html 页面内容(如:种子、视频、html 页面、cvs 文件)的工具。它还能够在很多应用程序中使用。

套件中心安装Flexget

安装的时候会提示先安装python3,安装完成后即可打开Flexget,最新的安装版本为3.1.8,默认WEBUI端口为8290。

设置WEBUI密码

安装完成后Flexget默认是不能直接打开的,会提示密码错误,必须先设置密码。
1、使用putty、xshell等软件ssh进入root账户;
2、在软件中分别运行以下命令,并回车。


/volume1/@appstore/flexget/env/bin/flexget web passwd 123456
/volume1/@appstore/flexget/env/bin/flexget -c /volume1/@appstore/flexget/var/config.yml web passwd 123456

3、在浏览器中输入http://ip:8290,即可通过WEBUI界面进行登录,。

volume1为Flexget安装位置,具体根据实际进行修改,123456为密码

效果如下: