首先 uname -r 查看下查看当前内核版本

添加Debian官方源,一般情况下你的主机商应该不会给你改的

vim /etc/apt/sources.list.d/backports.list
deb http://deb.debian.org/debian buster-backports main
#如果有就不用修改,没有就添加此内容

更新仓库
sudo apt update

搜索一下当前的可安装的内核版本
apt search linux-image
Test
当前最新的版本是linux-image-5.10.0-0.bpo.9-amd64 ,我们安装这个
(cloud内核没有常规驱动(包括网卡驱动),所以一定要安装普通版本的内核!)
apt install linux-image-5.10.0-0.bpo.9-amd64

同理安装hearders
apt search linux-image
apt install linux-headers-5.10.0-0.bpo.9-amd64

输入reboot重启,重启后链接输入 uname -r 看到版本为5.10.0-0.bpo.9-amd64即可
Test

卸载旧内核版本 输入uname -r即可看到内核版本已经是5.10.0-0.bpo.7-cloud-amd64;输入以下命令查看当前系统已经安装的内核版本;
dpkg --list | grep linux-image
Test

使用apt purge命令卸载旧的内核版本(按实际卸载的内核版本修改命令):
apt purge linux-image-4.19.0-5-amd64

输入以下命令查看当前系统已经安装的内核头文件
dpkg --list | grep linux-headers

使用apt purge命令卸载,命令如下(按实际卸载的内核头文件版本修改命令):
apt purge linux-headers-4.19.0-5-amd64

最后再动更新一下启动内核版本,可以看到,只剩下5.10内核了。
update-grub
Test

搞定!收工!

VPN:

eevpn.cc:https://api.eejsq.org/api/v1/client/subscribe?token=192e8020494866c944288dcd3835b1de
CCCAT-US:trojan://RV4UEQ3KE4H73JLT@usugaki.ssss.monster:443?security=tls&type=tcp#CCCAT-US
CCCAT-JP:trojan://RV4UEQ3KE4H73JLT@mokuba.ssss.monster:443?security=tls&type=tcp#CCCAT-JP

DDNS:
DNSPOD:
名称:DDNS
ID:227764
Token:807a9f55226d128d77332193a676dd7c

名称:DNSPOD
ID:227767
Token:f572e9e2d6cfcdd6c63bfc33bf17dd32

钉钉机器人:
P30 Pro:

Webhook:https://oapi.dingtalk.com/robot/send?access_token=1e36f01b2a76d9640619233105dacf5aac2bf052f2cb08ec6dc428ff8d729362
SEC:SECb9351c780a7441ff8aa705cb1e3faf16112639d3370e16e3c961c6f72beeb8c6

P20 Pro:

Webhook:https://oapi.dingtalk.com/robot/send?access_token=d97feb03872fb235aa4e246a3d40cdca08d1e860f1e371a024c8f515ef8ac70f
SEC:SEC25bbc424eed22951bdaf0b77adb8cc75b57af47ec10dfbb84a231f0f79c5091d

荣耀9:

Webhook:https://oapi.dingtalk.com/robot/send?access_token=14820f2884a5f647f27058f970dfd502be8b1892e0f84d19796669cdf334be58
SEC:SEC91572d813ad5a1399813630823cf72e8114e908a68eab66f52a935fefe7bfa97

荣耀10:

Webhook:https://oapi.dingtalk.com/robot/send?access_token=55e84cfdb61b07ffb4b2284da07b3a1312d1290882efaf27bacc4822c31695b9
SEC:SECb9ab2a23a07edd06f43012370e243d852a4dbb4f9ef30aaf0cd0678dbbf59724

V20:

Webhook:https://oapi.dingtalk.com/robot/send?access_token=b243055d80ec798ab5cdc622af99e5e4d180f6ce6997837d913ccbe16d881489
SEC:SEC7e18735803b46c1c0655bf6ad25733a9bfb9d3f553924a376db6a5942d726726

410棒子176:

Webhook:https://oapi.dingtalk.com/robot/send?access_token=c0253897e7a8d3d45ce5a58905faf446534494569caeb1fc368443d502cfb059
SEC:SECa41d193c830849f9a4adec471dabd6ff06728372004e7a561f806a7423f1320f

410棒子:

Webhook:https://oapi.dingtalk.com/robot/send?access_token=ececddfc687fd101cf41c923b1832d8dd272ed15cd25a81da0cef03eaf8f8982
SEC:SECfc34723951f80070a289653874f52563a00b985d70fd94ad6dcff42774fff2ad

群晖
启用open switch
打开SSH
创建macnet

docker network create -d macvlan --subnet=10.0.0.0/24 --gateway=10.0.0.1 -o parent=ovs_eth0 -o macvlan_mode=bridge macnet

部署Docker A

docker run -itd \
  -v /volume1/docker/ttnodeA:/mnts \
  --name ttnodeA \
  --hostname ttnodeA \
  --net=macnet --ip=10.0.0.71 --dns=114.114.114.114 --mac-address 0C:69:C6:C7:C4:02 \
  --privileged=true \
  --restart=always \
  ericwang2006/ttnode

部署Docker B

docker run -itd \
  -v /volume1/docker/ttnodeB:/mnts \
  --name ttnodeB \
  --hostname ttnodeB \
  --net=macnet --ip=10.0.0.72 --dns=114.114.114.114 --mac-address B6:FF:EB:0B:32:9F \
  --privileged=true \
  --restart=always \
  ericwang2006/ttnode

OpenWRT
创建macnet

docker network create -d macvlan --subnet=10.0.0.0/24 --gateway=10.0.0.1 -o parent=br-lan -o macvlan_mode=bridge macnet

部署Docker A

docker run -itd \
  -v /opt/ttnodeA:/mnts \
  --name ttnodeA \
  --hostname ttnodeA \
  --net=macnet \
  --ip=10.0.0.81 \
  --mac-address E8:DC:DC:F9:D3:93 \
  -p 10432:1043 \
  --privileged=true \
  --restart=always \
  ericwang2006/ttnode

部署Docker B

docker run -itd \
  -v /opt/ttnodeB:/mnts \
  --name ttnodeB \
  --hostname ttnodeB \
  --net=macnet \
  --ip=10.0.0.82 \
  --mac-address C3:E7:D1:DF:83:61 \
  -p 10432:1043 \
  --privileged=true \
  --restart=always \
  ericwang2006/ttnode

注意:
不要用 root 用户进行编译!!!
国内用户编译前最好准备好梯子
默认登陆IP 192.168.1.1 密码 password

编译命令如下:
首先装好Debian或Ubuntu 64bit,推荐 Ubuntu 18 LTS x64

命令行输入 sudo apt-get update ,然后输入 sudo apt-get -y install build-essential asciidoc binutils bzip2 gawk gettext git libncurses5-dev libz-dev patch python3 python2.7 unzip zlib1g-dev lib32gcc1 libc6-dev-i386 subversion flex uglifyjs git-core gcc-multilib p7zip p7zip-full msmtp libssl-dev texinfo libglib2.0-dev xmlto qemu-utils upx libelf-dev autoconf automake libtool autopoint device-tree-compiler g++-multilib antlr3 gperf wget curl swig rsync

coolsnowwolf/lede
使用 git clone https://github.com/coolsnowwolf/lede 命令下载好源代码,然后 cd lede 进入目录

openwrt/openwrt
使用 git clone https://github.com/openwrt/openwrt 命令下载好源代码,然后 cd openwrt 进入目录

./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig

支持 iPv6:
Extra packages —-> ipv6helper (选定这个后下面几项自动选择了)
Network —-> odhcp6c
Network —-> odhcpd-ipv6only
LuCI —-> Protocols —-> luci-proto-ipv6
LuCI —-> Protocols —-> luci-proto-ppp

编译丰富插件时,建议修改下面两项默认大小,留足插件空间。( x86/64 )!!!
Target Images —-> (16) Kernel partition size (in MB) #默认是 (16) 建议修改 (256)
Target Images —-> (160) Root filesystem partition size (in MB) #默认是 (160) 建议修改 (512)

make -j8 download V=s 下载dl库(国内请尽量全局科学上网)

输入 make -j1 V=s (-j1 后面是线程数。第一次编译推荐用单线程)即可开始编译你要的固件了。

二次编译:
cd lede或者cd openwrt
git pull
./scripts/feeds update -a && ./scripts/feeds install -a
make defconfig
make -j8 download
make -j$(($(nproc) + 1)) V=s

如果需要重新配置:
rm -rf ./tmp && rm -rf .config
make menuconfig
make -j$(($(nproc) + 1)) V=s
编译完成后输出路径:bin/targets

一、安装SSH服务
1.安装ssh服务
sudo apt-get update #更新软件源
sudo apt-get install ssh #安装

2.启动SSH服务,命令为:/etc/init.d/ssh start // 或者service ssh start

3.验证SSH服务状态,命令为:/etc/init.d/ssh status

4.添加开机自启动 update-rc.d ssh enable

二、开启root远程登录
1.编辑sshd_config文件,
vi /etc/ssh/sshd_config
将#PasswordAuthentication no的注释去掉,改为PasswordAuthentication yes
将#PermitRootLogin prohibit-password的注释去掉,并改为PermitRootLogin yes

2.启动SSH服务,命令为:/etc/init.d/ssh start // 或者service ssh start

3.验证SSH服务状态,命令为:/etc/init.d/ssh status

4.添加开机自启动 update-rc.d ssh enable

懒人模式
直接使用cat命令在sshd_config文件尾部追加所需要的内容就行,反正上面都是#注释的,不会造成任何冲突。
cat >> /etc/ssh/sshd_config << EOF
PasswordAuthentication yes
PermitRootLogin yes
EOF
service ssh restart

三、配置静态IP
1.使用root登录系统后编辑如下2个文件
/etc/network/interfaces(配置IP和网关)
/etc/resolv.conf(配置DNS服务器)

2.编辑/etc/network/interfaces
vi /etc/network/interfaces

3.将interface内容
-# The primary network interface
allow-hotplug enp1s0
iface enp1s0 inet dhcp dhcp表述使用动态ip
替换为
-# The primary network interface
allow-hotplug enp1s0
iface enp1s0 inet static #static表示使用固定ip
address 192.168.0.120 #ip地址
netmask 255.255.255.0 #子网掩码
gateway 192.168.0.1 #网关

4.编辑/etc/resolv.conf设置DNS
vi /etc/resolv.conf
nameserver 8.8.8.8 #设置首选dns
nameserver 114.114.114.114 #设置备用dns

5.重启网络
service networking restart

小提示1:配置时可去掉注释,因为有时候加了注释导致网卡无法起来;
小提示2:如果使用SHH远程配置一定要使用auto参数,不然系统重启后网卡不自启。

四、打开关闭防火墙
查看防火墙现有规则:
ufw status

开启/关闭防火墙:
ufw enable //开启
ufw disable //关闭

开启指定tcp或者udp端口:
ufw allow 22/tcp

同时开启tcp与udp端口:
ufw allow 445

删除53端口:
ufw delete allow 53

拒绝指定tcp或者udp端口:
allow/deny 20/tcp
allow/deny 20/udp

五、设置网络代理
通过设置代理,利用其他主机的梯子翻墙

http_proxy
为http变量设置代理;默认不填开头以http协议传输
例如:192.168.1.1:8080
user:pass@192.168.1.1:8080
socks4://192.168.1.1:8080
socks5://192.168.1.1:1080

https_proxy
为https变量设置代理,例子同上

ftp_proxy
为ftp变量设置代理,例子同上

all_proxy
全部变量设置代理,设置了这个时候上面的不用设置,例子同上

no_proxy
无需代理的主机或域名;可以使用通配符;多个时使用“,”号分隔;
列如:.aiezu.com,10…,192.168..,*.local,localhost,127.0.0.1

开启代理

export http_proxy=http://IP地址:端口号

export https_proxy=http://user:password@IP地址:端口号

export ftp_proxy=http://IP地址:端口号

export no_proxy="localhost,127.0.0.1"

# 永久配置需要配置/etc/profile

取消代理

unset http_proxy
unset https_proxy
unset ftp_proxy
unset no_proxy

六、宝塔面板绕过强制绑定官网账号
rm -f /www/server/panel/data/bind.pl

宝塔安装docker管理器后仍提示未安装处理方法
服务器终端执行以下命令,然后刷新面板

Compose_Download_Url="http://download.bt.cn/install/src/docker-compose-$(uname -s)-$(uname -m)"
Compose_Path="/usr/local/bin/docker-compose"
Compose_lin="/usr/bin/docker-compose"
curl -sSL $Compose_Download_Url -o $Compose_Path
ln -sf $Compose_Path $Compose_lin