Windows 10系统下,IE浏览器强制跳转Edge浏览器 解决办法 2023-02-20

段落1、问题描述

在Windows 10系统下,打开IE浏览器,就会自动强制跳转Edge浏览器,公司一些旧软件系统,还是需要旧的这个IE浏览器的,软件项目呀,历史的包袱太重。

段落2、处理办法

关闭 Edge浏览器

打开 “控制面板”

打开 “Internet选项”

选择 “高级”

找到 “启用第三方浏览器扩展”,去掉该勾选

启动 IE浏览器,就正常啦

附录1、

博客内,所有教程为手打原创教程,如果技术教程对您有所帮助,欢迎打赏作者

对于博客内已提及的专业知识,如果需要技术指导,欢迎联系我,仅需支付工时费

Twitter: Dasmz

Youtube: @DasmzStudio

Donate
云乞讨

下载Twitter视频 2023-02-09

方式1、使用Youtube-DL 命令行的工具,下载视频

分享按钮,点击,复制推文链接

得到这样一串地址

其中 “https://twitter.com/HowThingsWork_/status/1617483334166409216” 这段是主地址,下载链接,只要这段就足够了。

youtube-dl -o "./017ec56e94c6820ee7ab3971d2150e21.mp4"  "https://twitter.com/HowThingsWork_/status/1617483334166409216"

# 命令-o可以不加,加它是为了防止部分视频的标题过长,导致文件保存失败。可自定义一个名称

方式2、使用在线类的解析网站,进行URL解析

参照步骤一,把需要下载视频的主链接复制贴进该类网站的表格输入框里,即可生成下载链接

它后台逻辑其实还是基于youtube-dl的,只不过封装了一个WEB网站的UI,可以方便普通人的使用。

方式3、在视频下方,召唤一些,下载Bot,它会回复你一个下载链接。

比如,在一个视频的下方,回复如下

@get_this_v

附录1、

博客内,所有教程为手打原创教程,如果技术教程对您有所帮助,欢迎打赏作者

对于博客内已提及的专业知识,如果需要技术指导,欢迎联系我,仅需支付工时费

Twitter: Dasmz

Youtube: @DasmzStudio

Donate
云乞讨

关于ChatGPT,OpenAI 官网的几个域名,需要加进PAC分流 2023-2-9

最近ChatGPT 比较热门,关于它打开它官网,有下面的几个域名要添加到PAC分流的proxy策略里,大家注意更新。相对而言,这是一个比较简单的网站,涉及的URL不多。

2023-04-09 补充,ChatGPT官网验证,增加了cloudflare的验证,要补相关域名
2023-04-12 补充,更新,增加了js验证的部分域名
2023-10-31 补充,更新,增加部分域名,增补了一点文档的内容。
2023-11-16 补充,更新,增加2个分流域名
2023-12-14 补充,更新,增加语音聊天的域名
2024-02-13 补充,更新,增加批量添加的方式
2024-04-15 补充,更新,增加域名

Shadowrocket软件,下方的菜单{配置},英文的default.conf一行,右边的小圈i符号,选择{规则},右上方的加号,类型Domain-Suffix,策略PROXY,域名栏目中,填写域名清单里的域名(务必注意,一次只增加一个域名),保存。

逐个增加域名,务必保证增加域名的时候,域名栏目里的内容前后没有多余的字符,所见即所得,比如增加的 1e100.net,就这几个字符,没有http://这样多余的字符,这个是用来给程序作为匹配域名规则用的,不能带协议。

类型 Domain-Suffix

策略 Proxy

域名清单

1e100.net
ai.com
akamaized.net
akamaitechnologies.com
auth0.com
a-msedge.net
cloudflare.com
cloudfront.net
cloudflareinsights.com
compute-pipe.com
doubleclick.net
edgecompute.app
epsiloncdn.net
f7tk.com
featuregates.org
google-analytics.com
googleapis.com
google.com
googletagmanager.com
googleusercontent.com
gstatic.com
hcaptcha.com
identrust.com
intercomcdn.com
intercom.io
javascript.info
licdn.com
openai.com
pki.goog
sentry.io
statsigapi.net
stripe.com
stripe.network
vimeocdn.com
vimeo.com
browser-intake-datadoghq.com
oaistatic.com
oaiusercontent.com
livekit.cloud
statsig.com
revenuecat.com
mixpanel.com
chatgpt.com
openai.org
webpubsub.azure.com
# 以下是 IP-CIDR / proxy类别
129.151.224.0/19
# 以下是 domain / proxy类别
chat.openai.com
chat.openai.com.cdn.cloudflare.net
nrt12s30-in-f4.1e100.net
static-ecst.licdn.com
cs1404.wpc.epsiloncdn.net
chatgpt.livekit.cloud
api-js.mixpanel.com
apis.google.com
auth0.openai.com
challenges.cloudflare.com
content.googleapis.com
docs.google.com
drive-thirdparty.googleusercontent.com
events.statsigapi.net
o33249.ingest.sentry.io
api-iam.intercom.io
jidori.g1.internal.services.openai.org
js.intercomcdn.com
js.stripe.com
snc.apps.openai.com
ssl.gstatic.com
tcr9i.chat.openai.com
widget.intercom.io
www-onepick-opensocial.googleusercontent.com
ab.chatgpt.com

章节2 、高级添加方式,点击default.conf,选择编辑纯文本方式

高级的批量添加规则方式,点击default.conf,选择编辑纯文本方式,在 [Rule]标签位置下方,新开一行,贴入如下的域名清单内容,即可

DOMAIN-SUFFIX,1e100.net,PROXY
DOMAIN-SUFFIX,ai.com,PROXY
DOMAIN-SUFFIX,akamaized.net,PROXY
DOMAIN-SUFFIX,akamaitechnologies.com,PROXY
DOMAIN-SUFFIX,auth0.com,PROXY
DOMAIN-SUFFIX,a-msedge.net,PROXY
DOMAIN-SUFFIX,cloudflare.com,PROXY
DOMAIN-SUFFIX,cloudfront.net,PROXY
DOMAIN-SUFFIX,cloudflareinsights.com,PROXY
DOMAIN-SUFFIX,compute-pipe.com,PROXY
DOMAIN-SUFFIX,doubleclick.net,PROXY
DOMAIN-SUFFIX,edgecompute.app,PROXY
DOMAIN-SUFFIX,epsiloncdn.net,PROXY
DOMAIN-SUFFIX,f7tk.com,PROXY
DOMAIN-SUFFIX,featuregates.org,PROXY
DOMAIN-SUFFIX,google-analytics.com,PROXY
DOMAIN-SUFFIX,googleapis.com,PROXY
DOMAIN-SUFFIX,google.com,PROXY
DOMAIN-SUFFIX,googletagmanager.com,PROXY
DOMAIN-SUFFIX,googleusercontent.com,PROXY
DOMAIN-SUFFIX,gstatic.com,PROXY
DOMAIN-SUFFIX,hcaptcha.com,PROXY
DOMAIN-SUFFIX,identrust.com,PROXY
DOMAIN-SUFFIX,intercomcdn.com,PROXY
DOMAIN-SUFFIX,intercom.io,PROXY
DOMAIN-SUFFIX,javascript.info,PROXY
DOMAIN-SUFFIX,licdn.com,PROXY
DOMAIN-SUFFIX,openai.com,PROXY
DOMAIN-SUFFIX,pki.goog,PROXY
DOMAIN-SUFFIX,sentry.io,PROXY
DOMAIN-SUFFIX,statsigapi.net,PROXY
DOMAIN-SUFFIX,stripe.com,PROXY
DOMAIN-SUFFIX,stripe.network,PROXY
DOMAIN-SUFFIX,vimeocdn.com,PROXY
DOMAIN-SUFFIX,vimeo.com,PROXY
DOMAIN-SUFFIX,browser-intake-datadoghq.com,PROXY
DOMAIN-SUFFIX,oaistatic.com,PROXY
DOMAIN-SUFFIX,oaiusercontent.com,PROXY
DOMAIN-SUFFIX,livekit.cloud,PROXY
DOMAIN-SUFFIX,statsig.com,PROXY
DOMAIN-SUFFIX,revenuecat.com,PROXY
DOMAIN-SUFFIX,mixpanel.com,PROXY
DOMAIN-SUFFIX,chatgpt.com,PROXY
DOMAIN-SUFFIX,openai.org,PROXY
DOMAIN-SUFFIX,webpubsub.azure.com,PROXY
DOMAIN-SUFFIX,azure.com,PROXY

附录1、

博客内,所有教程为手打原创教程,如果技术教程对您有所帮助,欢迎打赏作者

对于博客内已提及的专业知识,如果需要技术指导,欢迎联系我,仅需支付工时费

Twitter: Dasmz

Youtube: @DasmzStudio

Donate
云乞讨

搭建 Jellyfin,影视媒体平台,DIY一条龙教程,安装部署使用 2023-01-15

前缀、文档修改记录

2023-01-15 初始化编辑此文章
2024-01-05 更新需要走代理的域名规则,主要为了刮削
2024-03-21 更新扩展SATA的内容,更新检索视频的内容,更新显卡的内容,以便服务端解码转码。

段落1、需求描述

搭建Jellyfin,影视媒体平台,自己看美剧、泰剧、日剧、韩剧,未删减版本,不求人,1080P/4K资源,统统可以。

搭建的资源,在自己的家里的私网,不对外开放。家里如果有公网IP,或者走云服务器转发,也就可以在公网访问到自己的影视资源了。(不推荐搭建后,给公众开放,这个版权问题,大家稍微注意一下)

Jellyfin,是全平台支持的,苹果、安卓、计算机PC、电视,都是有客户端软件的。

效果图:

段落2、硬件配置

我这里选择的架构是硬件直接安装Linux,然后直接部署Jellyfin,我没有选用Docker架构方式,后续的硬件直通问题,后续想要加独立显卡,也简单。使用该方式,对于增加存储盘,也非常简单。对CPU的利用率也最大。

Jellyfin 影视平台 规格选型如下:

  • 长城电源 300W * 1
  • 机箱 多盘位机箱 * 1
  • 主板 B75 含6个板载SATA口 * 1
  • 处理器 i5 3470 * 1
  • 内存 12GB
  • 硬盘供电线 1分5 SATA电源线 * 2
  • 硬盘SATA数据线 * 10
  • 系统盘 SSD 240GB * 1 , Debian 11
  • 缓存盘 SSD 1TB * 1
  • 存储盘 东芝 4TB * 1 ,利旧
  • 存储盘 西数 12TB 氮气盘 * 2
  • 1050TI 显卡 * 1
  • 公网 IP,带宽 Nginx + HTTPS/TLS * 1
  • 软件,BT下载 Transmission * 1
  • 软件,影视平台 Jellyfin * 1
  • 软件,削刮器 TinyMediaManager * 1

段落3、硬件组装,基础Linux系统安装

这个没啥说的,就是电脑台式机的组装而已,板载6个SATA口,注意一下,一般SATA0编号的,是连接系统盘。其他的,就是连接缓存盘,存储盘。

组装台式机,需要一定的动手能力,各位看DIY 一条龙教程的,量力而行。

操作系统的安装,也比较简单,我这里,就安装最常规安装Debian 11操作系统。你们也可以选择自己喜欢的Linux系统发行版本。

硬盘12TB格式化,选用GPT分区

对于磁盘的挂载,参考我 Ubuntu/Debian 的Linux环境,格式化超过2TB的磁盘 2022-4-24 这个教程,使用parted对磁盘格式化,我这里都是单盘挂载,让容量最大化,不使用RAID,你们对于磁盘的格式化,是否组RAID的架构,酌情考虑。

截至2024-03-21,更新此页博客的时间,我这台单机跑的磁盘容量,已经50多个TB了,共计存放了1000+电影,1800+电视剧,2300+音乐,因为都是这些影视文件,不是重要数据,不做RAID,硬盘真坏掉,也就更换硬盘就是了,没啥遗憾的。

硬盘,在主板SATA口全部用完的情况下,我用的这个PCIx1的4口SATA扩展的,供电用大4Pin转15Pin路的供电。

段落4、安装部署 Jellyfin

参考 https://jellyfin.org/docs/general/installation 这个是Jellyfin官方的安装指导,不管是群晖、Windows/Linux 或者 Docker方式的安装,都建议先看一看官方的安装知道文档,这个比任何其他文档都要靠谱。

由于我安装的是Debian 11 操作系统,这里就可以到官方教程的Debian位置

Debian 11,在添加Jellyfin源的地方,有2个方式,如果用extrepo方式,就不必1到3步骤编号

添加源

root@server:~# apt update
root@server:~# apt install extrepo
root@server:~# extrepo enable jellyfin

# 1
root@server:~# apt update
root@server:~# apt install curl gnupg

# 2
root@server:~# mkdir /etc/apt/keyrings
root@server:~# curl -fsSL https://repo.jellyfin.org/$( awk -F'=' '/^ID=/{ print $NF }' /etc/os-release )/jellyfin_team.gpg.key | gpg --dearmor -o /etc/apt/keyrings/jellyfin.gpg

# 3 
root@server:~# cat <<EOF | tee /etc/apt/sources.list.d/jellyfin.sources
Types: deb
URIs: https://repo.jellyfin.org/$( awk -F'=' '/^ID=/{ print $NF }' /etc/os-release )
Suites: $( awk -F'=' '/^VERSION_CODENAME=/{ print $NF }' /etc/os-release )
Components: main
Architectures: $( dpkg --print-architecture )
Signed-By: /etc/apt/keyrings/jellyfin.gpg
EOF

添加源后,就可以更新,安装Jellyfin

# 4
root@server:~# apt update
root@server:~# apt install jellyfin

# 5  重启Jellyfin
root@server:~# systemctl restart jellyfin

# 6  关闭Jellyfin
root@server:~# systemctl stop jellyfin

# 7  启动Jellyfin
root@server:~# systemctl start jellyfin

# 8  开机启动Jellyfin
root@server:~# systemctl enable jellyfin

安装后,启动Jellyfin,能在Linux上,看到对应业务端口 8096的监听

然后,就可以通过 http://IP地址:8096/ 访问jellyfin了。

段落5、初始化Jellyfin

登录Jellyfin,设置语言为 汉语(简体),设置登录Jellyfin的用户名,密码

首选无数据语言的语言选“Chinese”,国家/地区选择“People’s Republic of China”

设置远程访问两个都打勾

登录进入页面后,点击右上方的小头像,进入字幕,字幕语言偏好:Chinese简体中文,字幕模式:默认,烧录字幕:全部。

段落6、添加影视媒体资源

点击左上角三横线菜单,选择控制台,选择媒体库,选择加号+添加影视媒体。

我这里,就添加一个电视剧文件夹,一个电影文件夹。

其中,如下图的,如果是电影,文件夹,就选中对应磁盘上的电影目录,可以选中多个磁盘上,对应的电影目录。简而言之,就是,一个电影分类,可以从多个文件夹里提取资源清单。

还有下面的勾选框,基本除了最后2个,都勾上。

段落7、关于刮削

刮削,其实可以自动的,主要看你电影名字的命名,电视剧文件夹的命名。还有,刮削的几个源网站,基本都是被BLOCK的,所以,你需要一个Nice的网络环境,才可以正常刮削影视封面,专辑信息。

如下的域名,最好都把它们加入到软路由的代理里面。如果没有条件的,就增加到jellyfin的Linux主机hosts文件里。

repo.jellyfin.org
jellyfin.org
imdb.com
media-amazon.com
www.imdb.com
themoviedb.org
zap2it.com
bootstrapcdn.com
tmsimg.com
api.themoviedb.org
image.tmdb.org
tmdb.org
trakt.tv

文件命名方式如下,就可以自动刮削了

电影名称-年份.mp4

一般,遇到错误的刮削,很常见,可以在视频/电视剧,选择”识别”,输入该电影的名称或imdb里面的编号,进行人工查找,更新削刮信息。

如果遇到重名的,封面不同的,可以根据IMDB的ID进行检索,比如下图这部韩剧,用tt29311421这个参数,可以找到唯一的IMDB信息

在XX电视剧/识别/IMDB ID这个参数位置,检索tt29311421,即可

如果影视,特别一些短剧,没有被IMDB的收录,或其他错误,就可以自己上传封面,修改年份,修改完成后,记得锁定资源的刮削信息,勾选”锁定此项目防止改动”。

段落8、关于公网映射

配置Nginx的反向代理,需要修改配置DNS指向,配置域名证书,在路由器上配置端口转发到内部的IP端口即可。

访问 https://域名:端口/

server {
    listen 443 ssl;
    server_name 你的域名;

    client_max_body_size 100M;


    ssl_certificate /root/certs/你的域名/fullchain.cer;
    ssl_certificate_key /root/certs/你的域名/你的域名.key;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers 'TLS-CHACHA20-POLY1305-SHA256:TLS-AES-256-GCM-SHA384:TLS-AES-128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
    ssl_prefer_server_ciphers on;    




    location / {
        proxy_pass http://127.0.0.1:8096;
        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 X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Protocol $scheme;
        proxy_set_header X-Forwarded-Host $http_host;

        # Disable buffering when the nginx proxy gets very resource heavy upon streaming
        proxy_buffering off;
    }

    location = /web/ {
        proxy_pass http://127.0.0.1:8096/web/index.html;
        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 X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Protocol $scheme;
        proxy_set_header X-Forwarded-Host $http_host;
    }

    location /socket {
        proxy_pass http://127.0.0.1:8096;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        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 X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-Protocol $scheme;
        proxy_set_header X-Forwarded-Host $http_host;
    }
}

段落9、增加显卡,满足服务端解码的需求

当今,BT/PT影视站点,已经越来越多的4K视频资源了,此时台式机里面这颗桌面级旧CPU(Intel Core i5-3470 CPU @ 3.20GHz,各位垃圾佬勿嘲笑),已经无法满足解码4K视频的能力,CPU软解码会让CPU跑满负载,着实难为它了,后来思来想去,在满足省电费,低价,地板级满足解码4K,给设备补了一张显卡(GeForce GTX 1050 Ti @ 75W)。

买这种旧卡,没什么说的,直接插主板的PCI插槽即可。

// 增加apt源
// Debian Sid   /etc/apt/sources.list中增加如下的一行内容
# deb http://deb.debian.org/debian/ sid main contrib non-free non-free-firmware

// 安装驱动(一般需要重启)
# apt update
# apt install nvidia-driver firmware-misc-nonfree

// 测试GPU是否正常工作,如果如下图显示的,则表示正常工作
# nvidia-smi

NVIDIA-SMI 525.147.05 Driver Version: 525.147.05 CUDA Version: 12.0

同步需要做的是,在Jellyfin的WEB页面,控制台/播放/转码,选择”Nvidia NVENC”

同时,要注意,”FFmpeg 路径” 这个参数,选择的ffmpeg,必须为支持英伟达CUDA的版本

使用命令ffmpeg无参数运行,可以明显看到有CUDA参数,如图” –enable-cuda –enable-cuda-llvm –enable-cuvid –enable-nvdec –enable-nvenc,则表示,你选择的这个ffmpeg是正确的,这个务必要注意

如果ffmpeg版本正确,在需要转码的设备播放视频时候,通过nvidia-smi命令,可以看到GPU解码并占了解码带宽,有对应的程序。

如下图,可看到470MB/4096MB,被占了大概500MB的显存,下方是ffmpeg进程号240848。

如果ffmpeg版本不对,可以参考jellyfin官方,对于英伟达显卡支持的页面说明

https://jellyfin.org/docs/general/administration/hardware-acceleration/nvidia

安装它官方支持的ffmpeg大致步骤如下

9.1 确保官方的源已经添加到sources.list

// 增加apt源
// Debian Sid   /etc/apt/sources.list中增加如下的一行内容
# deb http://deb.debian.org/debian/ sid main contrib non-free non-free-firmware

9.2 安装jellyfin-ffmpeg5这个包

# apt update 
# apt install -y jellyfin-ffmpeg5

9.3 安装对应系统版本的驱动

// Debian
# apt update
# apt install -y libnvcuvid1 libnvidia-encode1

// Ubuntu
# apt update 
# apt install -y libnvidia-decode libnvidia-encode

操作完,一般显卡正常工作的,就可以支持显卡的硬件加速&服务端解码视频流了。

该章节补充于2024-3-21 21:00PM

附录1、视频讲解

1.1、搭建Jellyfin

1.2、修复字幕的框框问题

附录2、

博客内,所有教程为手打原创教程,如果技术教程对您有所帮助,欢迎打赏作者

对于博客内已提及的专业知识,如果需要技术指导,欢迎联系我,仅需支付工时费

Twitter: Dasmz

Youtube: @DasmzStudio

Donate
云乞讨

Proxmox Virtual Environment 配置双ISP上联的网络 2023-1-3

段落1、需求描述

在Proxmox Virtual Environment(以下简称PVE)环境中,除了当前管理网络,增加了一个网卡,接入另一个网络,以后,各个业务系统,可根据需求,选择默认的路由为某一个ISP运营商。

物理接网线:

整个PVE为单台台式机/工作站的独立环境,未配置PVE集群,故而,场景,还简单一点。

PVE 以太网卡1 — 网线 — 电信IP的路由器1(主管理PVE,管理地址)

PVE 以太网卡2 — 网线 — 联通IP的路由器2

假设,其中一个虚拟机VM,安装有Ubuntu 20.04 LTS,需要使用电信网络作为管理网络,使用联通网络为业务网络。

依据黑色加粗的需求,对PVE作出配置,登录PVE的WEB地址,进入数据中心内宿主机的网络选项

一般,初始时候,只有默认网络的桥接,这里我们需要对另一个桥接进行添加

创建 / Linux Bridge / 桥接端口 enp3s1 / 备注联通

完成添加的样子,PVE内,具备vmbr0(桥接电信网络),vmbr1(桥接联通网络)双ISP网络的能力了。

然后,就是对对应的虚拟机VM,增加网络设备

网络设备net1 ,桥接vmbr0,电信,限速5MB/s,管理网络

网络设备net0,桥接vmbr1,联通,限速30MB/s,业务网络

Linux系统内,按照我们需要的这个场景,还需要自定义一下路由表,让默认路由到 net0 联通网络,通过开机启动指定路由即可。

root@server:/etc/network/if-up.d# cat route.sh 
#!/bin/sh
# START
/sbin/ip  route del default via 电信网关IP地址 dev ens19  
/sbin/ip  route add default via 联通网关IP地址 dev ens18  
# END
root@server:/etc/network/if-up.d# 

# 其中,两个网关IP地址,需要自定义,按实际的来,网络在主机内部对应的名称,可能是ens18,ens19,ens3,ens5,eth0,eth1,根据实际来。

这样配置的好处是,即便是业务流量,在某个方向跑满带宽出现拥堵的场景,管理方向,永远可以保持一个空闲的可用状态。

苹果iOS,Shadowrocket进阶,基于小火箭自定义规则,配置微信/淘宝的直连规则,微信规则 2022-12-04

2023-10-11 更新淘宝APP的3个直连规则,于,段落3
2023-12-31 更新,增加淘宝APP的域名

段落1、需求描述

微信版本 >= 8.0.2

在默认的配置模式下,微信的两个分流域名qlogo.cn qpic.cn会走proxy,会造成可感知的微信卡顿现象,建议把这两个域名,添加到配置文件的domain-suffix direct规则

FINAL 在规则未匹配的情况下,默认走到了PROXY

段落2、增加规则

在下方菜单的{配置}栏目,选则中间位置的default.conf规则,选择右侧的info按钮,进入规则,右上角的加号,添加规则

qq.com
qpic.cn
qlogo.cn

alipayobjects.com

增加完成,点击default.conf,选择使用规则即可

段落3,增加淘宝的3个规则

淘宝APP的很多直连规则,在default.conf里面,原本就有,所以不必增加,如下的3个,只是走错方向的,需要校正调整到直连的。

在下方菜单的{配置}栏目,选则中间位置的default.conf规则,选择右侧的info按钮,进入规则,右上角的加号,添加规则。一次增加一个域名规则。

类型,DOMAIN

策略,DIRECT

域名:

amdc.alipay.com
apoll.m.taobao.com
amdc.m.taobao.com
# V2023-12-31 ADD
acs.m.taobao.com
adashx.m.taobao.com
applog.uc.cn
ark-handler-bottom.m.taobao.com
atoken.m.taobao.com
cdn.ynuf.aliapp.org
csearch.cloudvideocdn.taobao.com
eco.taobao.com
guide-acs.m.taobao.com
gw.alipayobjects.com
h-adashx.ut.taobao.com
heic.alicdn.com
loggw-ex.alipay.com
px.ucweb.com
rhdc-acs.m.taobao.com
trade-acs.m.taobao.com
wvcfg.alicdn.com
ynuf.aliapp.org

类型,DOMAIN-SUFFIX

策略,DIRECT

域名:

m.taobao.com
ucweb.com
ut.taobao.com

附录1、发现时间 2021-2-15

附录1、

博客内,所有教程为手打原创教程,如果技术教程对您有所帮助,欢迎打赏作者

对于博客内已提及的专业知识,如果需要技术指导,欢迎联系我,仅需支付工时费

Twitter: Dasmz

Youtube: @DasmzStudio

Donate
云乞讨

数据库 PostgreSQL,单库的备份及恢复 2022-12-03

段落1、需求描述

因业务迁移的需要,对在用的PostgreSQL数据库进行备份,且在新生产环境中,进行导入恢复操作

这里,主要就是涉及的PostgreSQL数据库

需要导出库中的所有表结构及数据文件

我这里的库相对简单,只有一个单库,几个表,索引,没有其他的,整体数据还是比较简单的

数据库版本,也升级了,原库 14.3 ,新库 15.1

段落2、在旧数据库,导出表机构、导出所有的数据

由于,我这里数据库,整体不大,故而,不只用gzip压缩数据

# 切换到用户 postgres
su - postgres
# 备份,表结构
pg_dump -s pdb > backup.schema.20221203.sql
# 备份,数据
pg_dump dbname > backup.databse.20221203.sql

将备份的文件,传输到新库的服务器上

段落3、在新数据库,导入表,导入所有数据

这里需要创建,同样的数据库名称,数据库用户,并有权限

psql dbname < backup.schema.20221203.sql
psql dbname < backup.databse.20221203.sql
# 如果需要把监听启动在 公网
cp /etc/postgresql/15/main/pg_hba.conf /etc/postgresql/15/main/bak.pg_hba.conf.20221203


# /etc/postgresql/15/main/pg_hba.conf 修改,增加
host all all 0.0.0.0/0 md5

cp /etc/postgresql/15/main/postgresql.conf /etc/postgresql/15/main/bak.postgresql.conf.20221203


# /etc/postgresql/15/main/postgresql.conf 修改
listen_addresses = '0.0.0.0'

systemctl restart postgresql

附录1、

博客内,所有教程为手打原创教程,如果技术教程对您有所帮助,欢迎打赏作者

对于博客内已提及的专业知识,如果需要技术指导,欢迎联系我,仅需支付工时费

Twitter: Dasmz

Youtube: @DasmzStudio

Donate
云乞讨

使用私钥方式SSH登录Linux服务器,免输入密码,免密码登录 2022-11-20

段落1、需求描述

开在公网的服务器,不管是Win还是Linux,常常会遭受到无聊的暴力破解攻击。这种情况下,自身密码如果复杂度是够的,也不必太过担心。不过,这种事情不胜其扰。要么通过防火墙过滤,要么就可以如题一般,配置Linux的SSH登录方式为私钥登录。

段落2、常见的算法格式

DSA(用于数字签名算法)的签名生成速度很快,验证速度很慢,加密时更慢,但解密时速度很快,一般仅用于签名。

RSA算法(可用于加密和数字签名)的安全性基于这样的事实,大整数的因式分解被认为是难以破解 ,而DSA安全性基于离散对数问题。今天已知用于分解大整数块的最快算法是通用数字场筛(可以理解为对简单合理筛或二次筛的改进算法),也是解决有限域中的离散对数问题的最快算法,该算法以DSA指定的大素数为模。

OpenSSH 7.0及以上版本默认禁用了ssh-dss(DSA)公钥算法。官方没有给出具体的解释,但其中可能有OpenSSH的DSA密钥位数生成的原因,同时生成签名时随机性差,可能会泄漏私钥,且以现在机算机的算力,DSA 1024-bit已经实际上可破解,建议不使用

ECDSA算法(椭圆曲线数字签名算法)

ECDSA是用于数字签名,是ECC与DSA的结合,整个签名过程与DSA类似,所不一样的是签名中采取的算法为ECC,最后签名出来的值也是分为r,s。而ECC(全称Elliptic Curves Cryptography)是一种椭圆曲线密码编码学。

ECDH每次用一个固定的DH key,导致不能向前保密(forward secrecy),所以一般都是用ECDHE(ephemeral)或其他版本的ECDH算法。ECDH则是基于ECC的DH( Diffie-Hellman)密钥交换算法。

ECC与RSA 相比,有以下的优点:

  • 相同密钥长度下,安全性能更高,如160位ECC已经与1024位RSA、DSA有相同的安全强度。
  • 计算量小,处理速度快,在私钥的处理速度上(解密和签名),ECC远 比RSA、DSA快得多。
  • 存储空间占用小 ECC的密钥尺寸和系统参数与RSA、DSA相比要小得多, 所以占用的存储空间小得多。
  • 带宽要求低使得ECC具有广泛得应用前景。

一般来说,普通人,选用RSA的就可以,兼容性,安全性都够了。通常,RSA,DSA,ECDSA,EdDSA和Ed25519都用于数字签名,但只有RSA也可以用于加密。

Key typePublic key file namePrivate key file name
DSA~/.ssh/id_dsa.pub~/.ssh/id_dsa
RSA~/.ssh/id_rsa.pub~/.ssh/id_rsa
ECDSA~/.ssh/id_ecdsa.pub~/.ssh/id_ecdsa
Ed25519 (Edwards-curve DSA)~/.ssh/id_ed25519.pub~/.ssh/id_ed25519

几种常见的密钥对生成

ssh-keygen -t rsa -b 4096
ssh-keygen -t dsa 
ssh-keygen -t ecdsa -b 521
ssh-keygen -t ed25519
ssh-keygen -f ~/tatu-key-ecdsa -t ecdsa -b 521   # 指定生成的名称

如果针对我们需要生成SSH密钥对的场景,仅是登录服务器需求,默认长度2048即可,要安全可靠一点,长度可选4096。

使用如下的命令,即可生成密钥对,如果是在服务器VPS上执行,下载私钥后,务必把服务器上的私钥文件删除。下载到本地,记得控制私钥文件的访问权限。

段落3、实际落地操作命令

3.1、使用4096长度,生成一个密钥对

ssh-keygen -t rsa -b 4096

生成的文件,id_rsa,为私钥,需要保存在自己手里,保存好。

生成的文件,id_rsa.pub,为公钥,一般放在服务器VPS的 ~/.ssh/ 目录下。

3.2、复制公钥的字符串,到服务器的~/.ssh/目录下

创建目录,复制id_rsa.pub文件中的内容,追加写入到~/.ssh/authorized_keys文件中

mkdir -p ~/.ssh/
echo "public_key_string" >> ~/.ssh/authorized_keys   

# public_key_string 为你id_rsa.pub文件中的全部字符串内容

3.3、本地使用私钥登录服务器

3.3.1、如果本地也是Linux系统,命令行模式下

其中id_rsa文件的路径,我这里放在当前目录下,可选全路径

ssh -i ./id_rsa root@23.11.55.166

3.3.2、如果本地是windows系统,使用putty/XShell/FinalShell之类的图形界面客户端,则直接调用私钥文件即可。

假设使用putty登录,输入IP,点开右方SSH加号,点击Auth,点击Browse加载私钥后点击open即可。

段落4、关闭密码登录,仅用私钥登录(此章节的操作,为可选)

修改SSH服务器上的配置文件 /etc/ssh/sshd_config ,增加或者修改如下的参数的配置值

# 禁用密码登录
PasswordAuthentication no

# 启用私钥登录
RSAAuthentication yes
PubkeyAuthentication yes

# 允许root登录
PermitRootLogin yes

修改参数完成后,重启SSHD服务即可

systemctl restart sshd

附录1、

博客内,所有教程为手打原创教程,如果技术教程对您有所帮助,欢迎打赏作者

对于博客内已提及的专业知识,如果需要技术指导,欢迎联系我,仅需支付工时费

Twitter: Dasmz

Youtube: @DasmzStudio

Donate
云乞讨

附录2、视频教程链接

000117. 免输入密码,使用私钥方式SSH登录Linux服务器 2022-11-20

本期博客地址 https://dasmz.com/?p=2898
本期视频地址 https://youtu.be/d9y9Kxl-4G0
博客地址 https://dasmz.com
Twitter  https://twitter.com/fdmove
Youtube  https://www.youtube.com/@DasmzStudio
全部视频的目录索引 https://dasmz.com/?p=1342

为Linux系统,添加IPv6地址 2022-11-09

段落1、需求描述

购买了 Inception Hosting 官网 https://inceptionhosting.com 这家的一台服务器,购买的2.5欧元/月的款式,配置规格如下

2 CPU Core (Equal Share)
1024 MB Ram
20 GB Pure NVMe SSD Disk space
3000 GB Bandwidth @ 1 gbit (shared)
1 x IPv4 address
1 x /64 IPv6

它是有 1个IPv6地址,和 /64个IPv6地址,那就太棒了,给的IPv6地址,非常富足,可以随意折腾了

如下操作示范,以 Inception Hosting 官网 https://inceptionhosting.com 官方给的Ubuntu 20.04 系统环境下,执行命令,其他操作系统类似。

一般而言,默认的系统模板初始化的Linux系统,已经有1个IPv6地址的,如果想要添加更多,就需要自己操作修改。

信息:

分到的IPv6地址段  2a04:92c7:abcd:481::1/64
网关 2a04:92c7:abcd::1

段落2、增加IPv6地址到VPS的Linux系统

先临时添加2个在它/64地址段的其他IP地址

/sbin/ip addr add 2a04:92c7:abcd:481:2126:6232:4691:21f1/64 dev eth0
/sbin/ip addr add 2a04:92c7:abcd:481:5fe4:268e:d1b4:ece0/64 dev eth0

段落3、添加IPv6路由

/sbin/ip -6 route add 2a04:92c7:abcd::1 dev eth0
/sbin/ip -6 route add default via 2a04:92c7:abcd::1

其中的2a04:92c7:abcd::1是 2a04:92c7:abcd:0000:0000:0000:0000:0001的简写

可以测试一下,当前添加的2个IPv6地址,是否已通

段落4、删除IPv6地址

/sbin/ip addr del 2a04:92c7:abcd:481:2126:6232:4691:21f1/64 dev eth0
/sbin/ip addr del 2a04:92c7:abcd:481:5fe4:268e:d1b4:ece0/64 dev eth0

段落5、配置持续生效的增加IPv6地址

修改 /etc/network/interfaces 文件,新增2行增加IP地址的命令,其中up参数表示网络启动后执行

up ip addr add 2a04:92c7:abcd:481::78bc/64 dev eth0
up ip addr add 2a04:92c7:abcd:481:2126:6232:4691:21f1/64 dev eth0
up ip addr add 2a04:92c7:abcd:481:5fe4:268e:d1b4:ece0/64 dev eth0
up ip -6 route add 2a04:92c7:abcd::1 dev eth0
up ip -6 route add default via 2a04:92c7:abcd::1

附录1、

博客内,所有教程为手打原创教程,如果技术教程对您有所帮助,欢迎打赏作者

对于博客内已提及的专业知识,如果需要技术指导,欢迎联系我,仅需支付工时费

Twitter: Dasmz

Donate
云乞讨

附录2、配套的视频教程

000116. 前缀长度64的公网IPv6地址,给Ubuntu服务器增加公网IPv6地址  2022-11-09

本期博客地址 https://dasmz.com/?p=2879
本期视频地址 https://youtu.be/v7_vynGTNAo
博客地址 https://dasmz.com
Twitter  https://twitter.com/fdmove
全部视频的目录索引 https://dasmz.com/?p=1342

Linux版本选择,Ubuntu,CentOS等Linux发行版比较 2022-10-30

段落1、前言

日常涉及计算机领域的,都离不开Linux服务器,Linux以其优异的性能,对比Windows的轻资源占用,深受服务器领域的喜爱、采用。

那么对于普通的人而言,我们该怎么选择一个适合自己的Linux系统呢。

当你点开一个云服务器商家,开通云服务器的时候,操作系统该选择哪个呢

段落2、常见的Linux发行版本

  • Ubuntu: 基于Debian,适合用于编译,配套的依赖包很全,预装的软件多,对Linux新手友好,apt 包管理。常见版本 Ubuntu 18.04 LTS,Ubuntu 20.04 LTS,Ubuntu 22.04 LTS
  • Debian:适合有一定Linux基础,相比Ubuntu,需要更少的内存,更少的资源占用,apt 包管理。常见版本 Debian 9, Debian 10, Debian 11
  • Fedora:
  • CentOS:CentOS 其实相当于是RHEL企业版的免费,适合国内一些生产项目,有历史包袱的项目,如常见的CentOS 7,CenOS 8 版本,初始的Linux内核已偏旧,适合习惯于对应版本的执行操作的人群,yum /dnf包管理
  • OpenSUSE
  • RockyLinux:CentOS初始发起人,重新开的一个板子,习惯于CentOS的,可以选择。
  • SUSE:较大规模类企业,核心项目,订阅服务
  • RHEL:较大规模类企业,核心项目,订阅服务

段落3、Linux适合的场景推荐

1、对于刚刚接触Linux的小伙伴,特别是用习惯windows,这里比较推荐使用Ubuntu桌面版本,对于新手而言,比较容易适应。

2、对于从事IT工作,习惯于CentOS工作环境的,比较推荐使用CentOS / RockyLinux,两者使用习惯类似,容易上手,没有学习其他分支的压力。个别场景,对于CentOS 7 可能需要更换更新的Linux内核。

3、对于编译程序,交叉编译的场景,推荐使用多核的Ubuntu Server版本,比较好的依赖环境支持,编译一次嗦哈

4、对于云上,需一个简单可靠的Linux环境而已,且,有一定的动手能力,Linux基础,推荐使用新版本的Debian 11

5、涉及硬件的,如显卡,FPGA卡,需要校验驱动支持的,以硬件发行商,可支持的Linux版本为准

附录1

博客内,所有教程为手打原创教程,如果技术教程对您有所帮助,欢迎打赏作者

Donate
云乞讨

附录2、配套的视频教程

000115. 常见Linux发行版本,开云主机的时候,系统选择 2022-10-30

本期博客地址 https://dasmz.com/?p=2861
本期视频地址 https://youtu.be/rthJwTcCp0A
博客地址 https://dasmz.com
全部视频的目录索引 https://dasmz.com/?p=1342