通过SSH隧道连接远程SQL Server的详细步骤

以下是通过SSH隧道将本地客户端(如SSMS、Azure Data Studio)安全连接到远程Linux服务器上SQL Server的操作指南,涵盖配置、连接和故障排查。


一、配置SSH隧道

  1. 建立SSH端口转发
    在本地计算机上执行命令,将本地端口(如11433)通过SSH隧道映射到远程服务器的SQL Server端口(默认1433):
  2. bashCopy Code# 命令格式: ssh -N -L <本地端口>:localhost:<远程SQL端口> <用户名>@<服务器IP> -p <SSH端口> # 示例(默认SSH端口22): ssh -N -L 11433:localhost:1433 user@192.168.1.100
  3. Windows用户使用PowerShell
    Windows 10及以上版本支持OpenSSH客户端:powershellCopy Code
  4. ssh -N -L 11433:localhost:1433 user@192.168.1.100 或使用PuTTY配置隧道:
    • 在PuTTY的Connection > SSH > Tunnels中,设置Source port: 11433Destination: localhost:1433,保存会话后连接。

二、本地客户端连接配置

  1. 使用SQL Server Management Studio (SSMS)
    • 打开SSMS,在连接对话框中填写:
      • 服务器名称‌:localhost,11433(逗号分隔本地端口)。
      • 身份验证‌:选择“SQL Server身份验证”。
      • 登录名/密码‌:输入SQL Server的账号(如SA)及其密码。
    • 点击“连接”即可通过隧道访问远程SQL Server。
  2. 使用Azure Data Studio
    • 新建连接,配置如下:
      • 服务器‌:localhost,11433
      • 认证类型‌:SQL登录
      • 用户名/密码‌:SQL Server账号信息。
  3. 其他工具(如DBeaver)
    • 在连接配置中,将主机名设为localhost,端口为11433,其余与常规SQL Server配置一致。

三、验证与故障排查

  1. 检查隧道是否生效
    • 在本地执行命令,验证端口是否监听:bashCopy Code# Linux/macOS netstat -an | grep 11433 # Windows netstat -ano | findstr 11433 若显示LISTENING状态,则隧道正常。
  2. 常见问题解决
    • 连接超时‌:
      • 确认SSH隧道命令未中断(保持终端窗口打开)。
      • 检查远程服务器的SQL Server服务是否运行:bashCopy Codesudo systemctl status mssql-server
    • 权限拒绝‌:
      • 确保SQL Server账号(如SA)已启用远程登录权限:sqlCopy CodeALTER LOGIN SA ENABLE;
      • 检查服务器防火墙是否允许SSH端口(默认22)和SQL Server本地访问:bashCopy Codesudo firewall-cmd --list-ports # 查看已开放端口 sudo firewall-cmd --add-port=1433/tcp --permanent # 仅需本地访问,无需公网开放
    • 端口冲突‌:
      • 若本地端口11433被占用,更换其他端口(如21433)。

四、安全增强建议

  1. 使用非默认端口
    • 修改SQL Server端口(如23456),降低扫描攻击风险:bashCopy Code# 编辑配置文件 sudo vi /var/opt/mssql/mssql.conf # 添加或修改以下行

[network]

tcpport = 23456 重启服务后,SSH隧道命令需同步修改目标端口:

bashCopy Codessh -N -L 11433:localhost:23453 user@192.168.1.100

SSH密钥认证
替代密码登录,提升安全性:

bashCopy Code# 本地生成密钥对
ssh-keygen -t ed25519
# 将公钥上传到服务器
ssh-copy-id user@192.168.1.100
# 建立隧道时无需输入密码
ssh -N -L 11433:localhost:1433 user@192.168.1.100 -i ~/.ssh/id_ed25519

加密传输

  • 在SQL Server中启用SSL加密,防止数据泄露:bashCopy Codesudo /opt/mssql/bin/mssql-conf set network.forceencryption 1 sudo systemctl restart mssql-server

总结

通过SSH隧道连接远程SQL Server,既能绕过公网暴露端口的风险,又可利用SSH加密保障传输安全。按上述步骤配置后,本地客户端工具可直接通过localhost:<端口>访问远程数据库,适用于开发调试、生产维护等场景。遇到问题时,优先检查隧道状态、服务运行及防火墙规则。

iredmail修改邮件附件大小

修改 postfix 中邮件大小的设置

Postfix 是一个邮件传送代理(MTA),因此,要修改配置以使它能传送大附件的邮件。

假设要修改附件大小为 20MB,需对 message_size_limit 和 mailbox_size_limit 做如下修改,发送的大小一定要大于20M,如设为50M:

postconf -e message_size_limit=’52428800′

postconf -e mailbox_size_limit=’52428800′

之后重启 Postfix 服务,使上述修改生效:

/etc/init.d/postfix restart

注意:

52428800 是由 50 (MB) x 1024 (KB) x 1024 (Bit) 计算得到的结果。

修改 Roundcube 网页邮箱的附件上传大小

如果使用 Roundcube 网页邮箱,需要额外更改两个地方:

修改 PHP 设置允许上传大附件

修改 PHP 配置文件 /etc/php.ini 中的 memory_limit, upload_max_filesize 和 post_max_size 三个参数:

在 RHEL/CentOS 系统上: 配置文件路径是 /etc/php.ini

在 Debian/Ubuntu 系统上,配置文件路径是 /etc/php5/apache2/php.ini

在 FreeBSD 系统上,配置文件路径是 /usr/local/etc/php.ini (Apache),或者是 /etc/php5/fpm/php.ini (Nginx)。

在 OpenBSD 系统上,配置文件路径是 /etc/php-5.4.ini。如果你运行的 PHP 版本号为 5.4 ,路径将会不一样。

memory_limit = 200M;
upload_max_filesize = 20M;
post_max_size = 20M;

修改 Roundcube 网页邮箱设置以允许上传大附件

修改 roundcube 目录下的 .htaccess 文件:

在 RHEL/CentOS 系统上,此文件路径为 /opt/www/roundcubemail-1.6.9/.htaccess

在 Debian/Ubuntu 系统上,此文件路径为 /usr/share/apache2/roundcubemail/.htaccess 或者 /opt/www/roundcubemail/.htaccess.

在 FreeBSD 系统上,此文件路径为 /usr/local/www/roundcubemail/.htaccess

在 OpenBSD 系统上,此文件路径为 /var/www/roundcubemail/.htaccess

注意:某些 Linux/BSD 发行版本可能没有 .htaccess 文件,此时你可以忽略此步骤。

php_value memory_limit 200M
php_value upload_max_filesize 20M
php_value post_max_size 20M

roundcube还有其他地方对附件大小进行了设置,查看roundcube配置
vi /opt/www/roundcubemail/config/config.inc.php
修改配置
$config[‘max_message_size’] = ’26M’;
将其改为100M测试一下,web端显示变成了75M,看来roundcube是取max_message_size的75%作为附件大小限制,那么我们想限定附件大小1024M,设为1366M即可。

重启 Apache 或 php-fpm 服务以使上述修改生效。

限制 Nginx 上传文件大小

在配置文件vi /etc/nginx/conf-enabled/client_max_body_size.conf  中找到参数 client_max_body_size ,按需要修改大小:

client_max_body_size 20m;

限制 SOGo 上传文件大小

SOGo-3.x 引入新参数 WOMaxUploadSize 用于限制上传文件的大小,请将它添加到 SOGo 配置文件 /etc/sogo/sogo.conf 里并设置一个合适的附件大小。

// set the maximum allowed size for content being sent to SOGo using a PUT or
// a POST call. This can also limit the file attachment size being uploaded
// to SOGo when composing a mail.
//
// – The value is in kilobyte.
// – By default, the value is 0, or disabled so no limit will be set.
WOMaxUploadSize = 20480;

修改后需要重启 SOGo 服务。

修改 Outlook 程序的附件大小限制

Outlook 有自己的附件大小限制,如果超出限制会弹出错误信息 The attachment size exceeds the allowable limit.

如需要在 Windows 系统上修改 Outlook 程序的附件大小限制,请参照以下步骤:

退出 Outlook 程序

运行注册表编辑器:开始 -> 运行 -> 输入 “regedit”

找到并选择以下任意一个条目:

如果不存在可自行创建。

14.04 表示 Outlook 的版本号,在你的系统上可能不一样。

HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Outlook\Preferences
HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\14.0\Outlook\Preferences

在以上条目底下添加注册表项:类型:DWORD名称:MaximumAttachmentSize值:一个用于表示最大附件大小的整数。例如,30720 表示 30MB 限制。注意:

设置为 0 表示无限制。

默认限制为 20MB。可设置小于 20MB 的附件大小。

退出注册表编辑器。

启动 Outlook。

参考文档: https://support.microsoft.com/en-us/kb/2222370port.microsoft.com/en-us/kb/2222370

原文参考链接:https://docs.iredmail.org/change.mail.attachment.size-zh_CN.html

国内其他人解决方案:https://www.gaoxiaobo.com/xd/195.html

参考各大邮件服务厂家的附件大小限制:

1. QQ 邮箱

  • 附件大小限制:普通用户 50MB,QQ 邮箱会员 2GB
  • 说明:超过限制的附件可以通过“超大附件”功能上传到腾讯微云,并发送下载链接。

2. 163 网易邮箱

  • 附件大小限制:普通用户 50MB,VIP 用户 2GB
  • 说明:超过限制的附件可以通过“超大附件”功能上传到网易云存储,并发送下载链接。

3. 126 网易邮箱

  • 附件大小限制:普通用户 50MB,VIP 用户 2GB
  • 说明:与 163 邮箱类似,支持“超大附件”功能。

4. 新浪邮箱

  • 附件大小限制:普通用户 50MB,VIP 用户 2GB
  • 说明:超过限制的附件可以通过“超大附件”功能上传到新浪微盘,并发送下载链接。

5. 阿里云邮箱

  • 附件大小限制:普通用户 50MB,企业用户 100MB
  • 说明:超过限制的附件可以通过“超大附件”功能上传到阿里云盘,并发送下载链接。

6. 腾讯企业邮箱

  • 附件大小限制:普通用户 50MB,企业用户 100MB
  • 说明:超过限制的附件可以通过“超大附件”功能上传到腾讯微云,并发送下载链接。

国外邮件服务商

1. Gmail(Google 邮箱)

  • 附件大小限制25MB
  • 说明:超过限制的附件可以通过 Google Drive 上传,并发送下载链接。

2. Outlook(微软邮箱)

  • 附件大小限制20MB
  • 说明:超过限制的附件可以通过 OneDrive 上传,并发送下载链接。

3. Yahoo 邮箱

  • 附件大小限制25MB
  • 说明:超过限制的附件可以通过 Yahoo Drive 上传,并发送下载链接。

4. ProtonMail

  • 附件大小限制:免费用户 25MB,付费用户 5GB
  • 说明:ProtonMail 注重隐私保护,附件大小限制较为严格。

5. Zoho Mail

  • 附件大小限制:免费用户 25MB,付费用户 1GB
  • 说明:超过限制的附件可以通过 Zoho WorkDrive 上传,并发送下载链接。

6. iCloud 邮箱

  • 附件大小限制20MB
  • 说明:超过限制的附件可以通过 iCloud Drive 上传,并发送下载链接。

企业邮件服务商

1. Microsoft Exchange(Office 365)

  • 附件大小限制:默认 25MB,管理员可调整至 150MB
  • 说明:超过限制的附件可以通过 OneDrive 上传,并发送下载链接。

2. G Suite(Google Workspace)

  • 附件大小限制25MB
  • 说明:超过限制的附件可以通过 Google Drive 上传,并发送下载链接。

3. Zimbra

  • 附件大小限制:默认 10MB,管理员可调整至更高。
  • 说明:超过限制的附件可以通过 Zimbra Drive 上传,并发送下载链接。

在 Red Hat Enterprise Linux 或 CentOS 系统上安装 iRedMail

Check out the lightweight on-premises email archiving software developed by iRedMail team: Spider Email Archiver.

系统要求

Warning

阿里云、腾讯云均禁止使用邮件服务所必须的 25 端口提供邮件服务,因此您不能在 它们的云服务器部署邮件服务器。

Warning

iRedMail 只针对全新安装的操作系统设计,它要求你的操作系统上 没有 事先 安装邮件服务相关的组件,例如 MySQL,OpenLDAP,Postfix,Amavisd,等。 iRedMail 会自动安装和配置邮件服务所需的组件,因此如果操作系统上已有相关 组件,iRedMail 可能会打乱你的配置并造成服务无法正常启动。

要在 Red Hat Enterprise Linux (以下简称 RHEL)或 CentOS 上安装 iRedMail,你需要:

  • 一个全新安装的 RHEL 或 CentOS 系统。支持的版本号在下载页面有注明。
  • 要运行一个低流量的邮件服务器,要求至少4 GB 内存才能使用完整的垃圾邮件和病毒扫描功能。

准备

为服务器设置一个完整域名(FQDN)的主机名

不管你的服务器将用于实际运行还是仅仅用作测试,都建议设置一个完整域名(FQDN)的主机名。

输入命令 hostname -f 查看当前的主机名

$ hostname -f
mx.example.com

在 RHEL/CentOS 系统上,主机名需要在两个文件里设置:

  1. 对于 RHEL/CentOS 7 和 8,主机名定义在 /etc/hostname.mx.example.com
  2. 在 /etc/hosts 里定义主机名和 IP 地址的对应关系。注意:一定要将 FQDN 主机名列在第一个。127.0.0.1 mx.example.com mx localhost localhost.localdomain

确认系统已使用设置好的 FQDN 作为主机名。如果没有生效,请重启系统。

$ hostname -f
mx.example.com

禁用 SELinux

iRedMail 不支持 SELinux,所以需要在 /etc/selinux/config 文件里禁用它。

SELINUX=disabled

如果不希望禁用 SELinux,可以设置为让它打印警告信息但不强制限制:

SELINUX=permissive

也可以无须重启服务就禁用它:

# setenforce 0

启用必须的 yum 仓库

  • 对于 CentOS 系统,必须启用 /etc/yum.repos.d/CentOS-Base.repo 里定义的所有 CentOS 官方 yum 仓库。同时 禁用 所有第三方yum 仓库,以避免软件包冲突。
  • 对于 RHEL,请启用 Red Hat Network 以便安装软件包。

下载最新的 iRedMail

  • 访问下载页面下载最新的版本。
  • 上传 iRedMail 到服务器上。假设上传后的路径是 /root/iRedMail-x.y.z.tar.gz (这里以 x.y.z 代替实际的版本号)。
  • 解压缩 iRedMail 安装包:
# cd /root/
# tar zxf iRedMail-x.y.z.tar.gz

运行 iRedMail 安装程序

现在可以运行 iRedMail 安装程序了,它会问你几个简单的问题,仅此而已。

cd /root/iRedMail-x.y.z/
bash iRedMail.sh

如果是在 CentOS 8 系统上安装,iRedMail 安装程序会使用 pip2 命令安装几个 Python-2 的模块,国内用户请指定镜像站点完成安装,否则很大可能会因网络问题 导致安装失败:

PIP_MIRROR_SITE='http://pypi.douban.com/simple/' PIP_TRUSTED_HOST=pypi.douban.com bash iRedMail.sh

安装过程的截图

  • 欢迎和感谢使用
  • 指定用于存储用户邮箱的路径。默认是 /var/vmail/
  • 选择用于存储邮件账号的数据库。

Note

各个数据库之间没有太大区别,建议使用自己熟悉的数据库,便于后期维护。

  • 如果选择 OpenLDAP 数据库用于存储邮件账号,安装程序会要求你输入 LDAP 前缀:

MySQL/MariaDB/PostgreSQL 用户

如果选择 MySQL/MariaDB/PostgreSQL 用于存储邮件账号, 安装程序会为数据库的 root 用户生成一个随机的强密码,安装完成后可以在 iRedMail.tips 文件里找到。

  • 添加第一个邮件域名
  • 设置邮件管理员的密码

Note

该账号即是邮件管理员,也是普通的邮件账号,可以登录管理后台和 webmail。

  • 可选的组件

回答完上面的几个问题之后,安装程序给出本次安装的基本信息并要求确认是否实际 执行安装,请输入 y 或 Y 并按回车键确认,或 nN 并按回车键中止安装。

安装完成后你必须知道的几个重要事项

访问 webmail 和其它 web 程序

安装完成后,可以通过以下 URL 访问相关程序。注意:请将 <server\> 替换为实际的 服务器地址。

原文链接:https://docs.iredmail.org/install.iredmail.on.rhel-zh_CN.html

.NET Core Web API部署到Anolis8系统

rpm -Uvh https://packages.microsoft.com/config/centos/8/packages-microsoft-prod.rpm
dnf install -y aspnetcore-runtime-8.0

文件传输到服务器‌
使用 scp 或 xftp 将 publish 目录上传至服务器(如 /opt/webapi)‌14。
‌服务器配置与运行‌:
‌配置工作目录权限‌
useradd www-data
sudo mkdir -p /opt/webapi
sudo chown -R www-data:www-data /opt/webapi

‌启动应用程序‌
进入发布目录:

cd /opt/webapi
运行项目(默认监听 5000/5001 端口):

dotnet YourWebApi.dll
若需后台运行,使用 nohup 或 systemd 托管‌12。

基本命令与操作‌
‌启动应用并挂载到后台‌
在项目发布目录下,执行以下命令(需替换实际路径和端口):

nohup dotnet /opt/webapi/YourWebApi.dll –urls “http://*:5000” > /dev/null 2>&1 &
nohup:确保进程在终端关闭后持续运行‌12。

/dev/null 2>&1:丢弃标准输出和错误日志(生产环境建议保留日志,可替换为文件路径,如 >nohup.out)‌12。
&:后台运行‌12。

‌验证进程状态‌

ps -ef | grep YourWebApi.dll
若进程存在,表示托管成功‌15。

进阶脚本管理‌
‌编写自动化部署脚本‌
创建 deploy.sh 文件,内容示例:

!/bin/bash

app_name=”YourWebApi.dll”
deploy_dir=”/opt/webapi”
port=5000

终止旧进程

启动新进程

pid=$(ps -ef | grep $app_name | grep -v grep | awk ‘{print $2}’)
if [ -n “$pid” ]; then
kill $pid
echo “已终止旧进程: $pid”
fi

cd $deploy_dir
nohup dotnet $app_name –urls=”http://*:$port” > nohup.out 2>&1 &
echo “应用已启动,日志输出至 $deploy_dir/nohup.out”


脚本功能:自动终止旧进程并重新部署‌12。
使用权限:chmod +x deploy.sh 后执行 ./deploy.sh‌15。

日志管理与问题排查‌
‌查看实时日志‌

tail -f /opt/webapi/nohup.out
实时监控日志输出,快速定位启动错误(如端口冲突、依赖缺失等)‌12。

‌常见错误处理‌

‌依赖未安装‌:确保服务器已安装 .NET Core 运行时(参考命令 sudo yum install dotnet-sdk-8.0 或 sudo apt-get install aspnetcore-runtime-8.0)‌34。
‌文件权限不足‌:

sudo chmod 755 /opt/webapi/YourWebApi.dll
sudo chown -R www-data:www-data /opt/webapi
确保执行用户对目录和文件有读写权限‌35。
‌四、停止与重启服务‌
‌终止进程‌
bash
Copy Code

查找进程 PID

ps -ef | grep YourWebApi.dll | grep -v grep | awk ‘{print $2}’

终止进程

kill
‌重启服务‌
直接执行部署脚本或手动运行 nohup 命令‌

nuxt项目迁移到阿里云服务器(AnolisOS8)

使用nvm(Node Version Manager)

NVM允许你安装多个Node.js版本,并可以轻松切换版本。

1. 安装nvm

对于Debian/Ubuntu:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

# 或者使用wget

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

对于CentOS/Fedora:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

# 或者使用wget

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

2. 使用nvm安装Node.js

安装nvm后,你可以使用以下命令安装Node.js:

nvm install node # 安装最新版本的Node.js

nvm install 18 # 安装特定版本的Node.js,例如版本18

3. 使用nvm切换Node.js版本

nvm use 18 # 切换到版本18

npm使用国内镜像源

npm config set registry https://registry.npmmirror.com/

服务器里安装,只需要安装一次,目前公司的服务器已安装

1.npm i pm2 -g  // npm安装

2.pm2 list // 查看是否安装成功,如果不成功看3

3.whereis pm2  // 查看pm2 位置

ln -s   /root/.nvm/versions/node/v20.18.3/bin/pm2  /usr/bin/pm2  // 使用 ln -s 挂一下软连接

PS:若安装时太久没有动静,可ctrl+C停止命令,再重新执行,速度可能会快点

项目部署

1.把本地项目打包后的.nuxt文件夹、static文件夹、nuxt.config.js文件、package.json文件)上传到服务器

2.进入项目所在的文件夹,执行 npm install(或者npm i) 安装依赖

测试运行:npm start,可以用ip+端口号进行访问(该操作当你关闭软件时,项目会立即停止运行)

正式部署:pm2 start npm –name “mzt” — run start // (my-nuxt为项目名) 推荐用pm2启动

nginx代理配置:

map $sent_http_content_type $expires {

    “text/html”                 epoch;

    “text/html; charset=utf-8”  epoch;

    default                     off;

}

server {

    listen          80;             # the port nginx is listening on

    server_name     your-domain;    # setup your domain here

    gzip            on;

    gzip_types      text/plain application/xml text/css application/javascript;

    gzip_min_length 1000;

    location / {

        expires $expires;

        proxy_redirect                      off;

        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_read_timeout          1m;

        proxy_connect_timeout       1m;

        proxy_pass                          http://127.0.0.1:3050; # set the address of the Node.js instance here

    }

}

注意事项

1. 服务器迁移后,项目需重新安装依赖包(如果之前有则需要先删除再npm install)

2. 权限问题,可通过linux命令行 chmod -R 777 [文件] 来修改权限

3. Pm2 开机自启动项目

3-1 通过pm2 save保存当前进程状态。
3-2 通过pm2 startup [platform]生成开机自启动的命令。(记得查看控制台输 出)
3-3 将步骤2生成的命令,粘贴到控制台进行,搞定。

pm2 删除已部署的项目

在Linux环境下使用PM2(Process Manager 2)来管理Node.js应用程序时,有时候你可能会需要删除已部署的项目。PM2提供了一个简单的方法来停止、删除和重启你的应用程序。以下是删除已部署的Node.js项目的基本步骤:

1. 停止项目

在删除项目之前,首先应该停止该项目的运行。你可以使用以下命令来停止项目:

pm2 stop 项目名或ID

例如,如果你的项目名为myapp,你可以使用:

pm2 stop myapp

或者,如果你知道项目的ID,可以使用:

pm2 stop 0

2. 删除项目

一旦项目被停止,你就可以安全地删除它了。使用以下命令来删除项目:

pm2 delete 项目名或ID

例如,继续使用myapp为例:

pm2 delete myapp

或者使用ID:

pm2 delete 0

3. 清理PM2的进程列表(可选)

如果你想要彻底清除PM2的进程列表中的所有痕迹,包括日志文件和配置文件,你可以使用:

pm2 unstartup   # 取消开机自启设置(如果你之前设置了的话)

pm2 save        # 保存当前进程状态到ecosystem.config.js(如果你使用的是PM2的配置文件)

pm2 reset       # 重置PM2的状态,这将删除所有进程和日志文件,但不删除配置文件。

4. 确认项目已被删除(可选)

为了确认项目是否真的被删除,你可以列出所有当前运行的PM2进程:

pm2 list

你应该看不到你的项目出现在列表中。

5. 手动删除日志文件(可选)

如果你想要手动删除与你的项目相关的日志文件,你可以找到PM2的日志目录(通常是~/.pm2/logs),然后手动删除相关的日志文件。例如:

rm -rf ~/.pm2/logs/myapp*

注意:

确保在执行删除操作前,你已经保存了所有重要的数据或配置。

使用pm2 delete命令时,请确保你有足够的权限(通常需要root权限或sudo)。如果遇到权限问题,可以尝试在命令前加上sudo。

在生产环境中操作时,建议先在测试环境验证命令的正确性。

反向代理参考网站:https://www.nuxtjs.cn/faq/nginx-proxy/

Win11恢复Win10右键菜单三步搞定

Win11恢复Win10右键菜单三步搞定
如果你对Win11的右键菜单设计感到不习惯,想要恢复Win10的经典右键菜单,只需简单三步即可实现!以下是详细步骤:
打开Windows终端?
按下快捷键Win+X,选择「Windows终端(管理员)」。
在终端中输入以下命令:

reg add “HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32” /f /ve

然后按回车键。如果看到“操作成功完成”的提示,说明命令执行成功。
重新启动Windows资源管理器
按下快捷键Shift+Ctrl+Esc打开任务管理器。
右键点击「Windows资源管理器」,选择「重新启动」。
恢复Win11右键菜单
如果你想要恢复Win11的右键菜单,只需将上述命令中的添加操作改为删除操作:

reg delete “HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32” /va /f

同样按回车键即可。

SQL Server 2008~2022版本序列号/密钥/激活码

SQL Server 2022#

Enterprise: J4V48-P8MM4-9N3J9-HD97X-DYMRM
Enterprise Core: 2Q48Q-PB48J-DRCVN-GB844-X2H4Q
Standard: FG86G-CHH2T-CB7NJ-XT7D2-V8V4X
Web: 2R97W-F4XNT-T6MYV-3TKB7-6X3JM
Developer: 22222-00000-00000-00000-00000

SQL Server 2019#

Enterprise:HMWJ3-KY3J2-NMVD7-KG4JR-X2G8G
Strandard:PMBDC-FXVM3-T777P-N4FY8-PKFF4

SQL Server 2017#

Enterprise:TDKQD-PKV44-PJT4N-TCJG2-3YJ6B
Enterprise Core:6GPYM-VHN83-PHDM2-Q9T2R-KBV83
Strandard:PHDV4-3VJWD-N7JVP-FGPKY-XBV89
Web:WV79P-7K6YG-T7QFN-M3WHF-37BXC

SQL Server 2016#

Enterprise:MDCJV-3YX8N-WG89M-KV443-G8249
Enterprise Core:TBR8B-BXC4Y-298NV-PYTBY-G3BCP
Standard:B9GQY-GBG4J-282NY-QRG4X-KQBCR
Web:BXJTY-X3GNH-WHTHG-8V3XK-T8243

SQL Server 2014#

Business Intelligence:GJPF4-7PTW4-BB9JH-BVP6M-WFTMJ
Developer:82YJF-9RP6B-YQV9M-VXQFR-YJBGX
Enterprise:27HMJ-GH7P9-X2TTB-WPHQC-RG79R
Enterprise Core:TJYBJ-8YGH6-QK2JJ-M9DFB-D7M9D
Strandard:P7FRV-Y6X6Y-Y8C6Q-TB4QR-DMTTK
Web:J9MBB-R8PMP-R8WTW-8JJRD-C6GGW

SQL Server 2012#

DEVELOPER 版(开发版) 序列号:YQWTX-G8T4R-QW4XX-BVH62-GP68Y
ENTERPRISE /CAL 版(服务器/ CAL版) 序列号:748RB-X4T6B-MRM7V-RTVFF-CHC8H
STANDARD 版(标准版)序列号:YFC4R-BRRWB-TVP9Y-6WJQ9-MCJQ7
WEB 版(WEB 版)序列号:FB3W8-YRXDP-G8F8F-C46KG-Q998F
ENTERPRISE CORE 版(企业版)序列号:FH666-Y346V-7XFQ3-V69JM-RHW28
BUSINESS INTELLIGENCE 版(企业版)序列号:HRV7T-DVTM4-V6XG8-P36T4-MRYT6

SQL Server 2008 R2#

开发版32位:MC46H-JQR3C-2JRHY-XYRKY-QWPVM
开发版64位:FTMGC-B2J97-PJ4QG-V84YB-MTXX8
工组版:XQ4CB-VK9P3-4WYYH-4HQX3-K2R6Q
WEB版:FP4P7-YKG22-WGRVK-MKGMX-V9MTM
数据中心版32位:PTTFM-X467G-P7RH2-3Q6CG-4DMYB
数据中心版64位:DDT3B-8W62X-P9JD6-8MX7M-HWK38
企业版32位:R88PF-GMCFT-KM2KR-4R7GB-43K4B
企业版64位:GYF3T-H2V88-GRPPH-HWRJP-QRTYB
标准版32位:CXTFT-74V4Y-9D48T-2DMFW-TX7CY
标准版64位:B68Q6-KK2R7-89WGB-6Q9KR-QHFDW

SQL Server 2008#

Developer: PTTFM-X467G-P7RH2-3Q6CG-4DMYB
Enterprise: JD8Y6-HQG69-P9H84-XDTPG-34MBB

原文链接:https://www.cnblogs.com/cqpanda/p/16148822.html

Docker配置国内镜像加速器

1.配置镜像加速器

cat <<EOF>> /etc/docker/daemon.json

{

  “dns”: [“8.8.8.8”, “8.8.4.4”],

  “registry-mirrors”:

   [

      “https://docker.rainbond.cc“,

      “https://docker.mirrors.sjtug.sjtu.edu.cn“,

      “https://docker.m.daocloud.io“,

      “https://docker.itelyou.cf“,

      “https://noohub.ru“,

      “https://docker.fxxk.dedyn.io“,

      “https://huecker.io“,

      “https://dockerhub.timeweb.cloud“,  

      “https://registry.cn-hangzhou.aliyuncs.com“,

      “https://dockerproxy.com“,

      “https://docker.mirrors.ustc.edu.cn“,

      “https://docker.nju.edu.cn“,

      “https://xx4bwyg2.mirror.aliyuncs.com“,

      “https://f1361db2.m.daocloud.io“,

      “https://registry.docker-cn.com“,

      “https://hub-mirror.c.163.com

   ]

}

EOF

2、重启Docker

systemctl daemon-reload

systemctl restart docker

原文链接:https://blog.csdn.net/weixin_72819498/article/details/139919364