系统防止远程暴力破解方法
- 1、Linux 系统使用 fail2ban
- 2、Windows系统使用 IPBan ,链接:https://github.com/DigitalRuby/IPBan
- 3、Windows再使用Duo Security,开启两步验证
原理:读取系统相关登入、安全日志,调用防火墙禁止频繁登入失败的IP。
原理:读取系统相关登入、安全日志,调用防火墙禁止频繁登入失败的IP。
Nginx
配置 SSL
,透传到 后端。 根据不同的域名转发到不同的后端。
1 | user root; |
遇到的错误:
1 | curl: (60) SSL certificate problem: unable to get local issuer certificate |
说明 curl
在验证服务器证书时找不到对应的 CA 根证书,也就是说你的系统没有信任该网站所使用的证书签发机构(CA)。
你可能有一个 .crt
或 .pem
文件,例如:
1 | my-ca.crt |
如果没有,请从你的证书颁发机构获取。
以 root 权限执行以下命令:
1 | sudo cp my-ca.crt /usr/local/share/ca-certificates/ |
注意:
.crt
后缀;/usr/local/share/ca-certificates/
目录下。运行以下命令更新系统的 CA 信任列表:
1 | sudo update-ca-certificates |
输出类似:
1 | Updating certificates in /etc/ssl/certs... |
这表示你的证书已成功加入系统信任链。
再次运行你的 curl
命令:
1 | curl -v https://vpn.ownding.xyz |
如果一切正常,就不会再报 unable to get local issuer certificate
错误了。
--cacert
指定它:1 | curl --cacert /path/to/server.crt https://vpn.ownding.xyz |
--insecure
(即 -k
)参数虽然能绕过证书验证,但不建议在生产环境中使用。问题 | 解决方式 |
---|---|
curl 报错 unable to get local issuer certificate |
将根证书添加到系统信任库 |
有根证书怎么处理? | 复制到 /usr/local/share/ca-certificates/ 并运行 update-ca-certificates |
使用命令:tailscale debug via 7 192.168.6.0/24
其中 7
是 siteID
,可自行填写 0-60000
之间的数值。
生产 ipv6 子网后,需要在客户端重新宣告子网。
tailscale set --advertise-routes=ipv6子网
headscale
服务端允许 子网我使用 docker
部署的 headscale
服务端,使用如下命令开启子网。
docker exec headscale headscale routes enable -r 2
比如 192.168.4.146
对应的地址 ipv6
地址是 :fd7a:115c:a1e0:b1a:0:7:c0a8:692
点击 Trae AI
的“登入”,正常情况下,会自动打开浏览器进行登入,登入成功后浏览器会通知 Trae
登入完成,然后完成登入。 但是此次点击“登入”一直无法打开浏览器。
同时可扩展到其它软件点击登入后无法调用到windows系统浏览器的情况。
之前安装过 夸克网盘(后来删除),被修改了注册表 计算机\HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\https\UserChoice
中 ProgId
的值为 QuarkHTM
导致无法启动 Edge
浏览器。
将注册表中 计算机\HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\https\UserChoice
的 ProgId
值修改为 MSEdgeHTM
使用 ctr image import a.tar
后,crictl
查看没有显示刚刚导入的镜像。但是使用 ctr i list
可以查看镜像,不过也看不到 crictl
中的镜像。
使用的containerd不同导致的。
导入时指定k3s的containerd,ctr -n k8s.io -a /run/k3s/containerd/containerd.sock image import app2.tar
当tar包没有tag信息时,导入之后,无报错,errno 为0,但是 通过 ctr images ls
查看却没有相关的镜像。这种情况,需要添加 --digests=true
来导入:ctr image import --digests=true <path/to/images/file>
执行任何 kubectl
命令时都会报错,比如执行 kubectl get node
命令时提示错误信息: Unable to connect to the server: x509: certificate has expired or is not yet valid
1 | for i in `ls /var/lib/rancher/k3s/server/tls/*.crt`; do echo $i; openssl x509 -enddate -noout -in $i; done |
下面的命令不能更新 server-ca.crt ,可以轮换的证书:admin、api-server、controller-manager、scheduler、k3s-controller, k3s-server, cloud-controller, etcd, auth-proxy, kubelet,kube-proxy
1 | # 停止 K3s |
1 | #删掉 secret k3s-serving |
用户访问-----haproxy(docker部署)-----Nginx前端(docker部署)-----K8S后端
使用K8S部署的后端需要获取用户访问的IP地址(用户使用终端的IP)。
用户访问时,在Haproxy处添加添加一个自定义的X-Real-IP
请求头,后端通过这个请求头获取用户真实IP。
只需要配置Haproxy即可,不用修改Nginx配置,Haproxy配置示例:
1 | global |
在 haproxy
配置中添加 option forwardfor
及http-request set-header X-Real-IP %[src]
。
如果使用HTTPS访问,那么需要同时修改Haproxy配置及Nginx配置。
Haproxy配置如下:
1 |
|
使用mode tcp
以及send-proxy-v2
进行透传。
Nginx配置示例如下:
1 |
|
在 nginx.conf
中添加 proxy_protocol
以及proxy_set_header X-Real-IP $proxy_protocol_addr;
。
1 | @RestController |
本文最初2014年发表在新浪博客,由于博客关闭计划将其搬移到本网站。
本文说明如何使用matlab和.net进行混合编程。包括:
版本:Matlab2010b&VS2010
Matlab中需要以m文件Function形式,要有输出
deploytool
将编写好的函数文件拖入下图中的位置即可,编译的时候选择 .NET DLL
MWArray.dll
(在Matlab安装路径)在第一步时,你Class名称。在Matlab生成的文件路径下
上面两幅图,第一幅是Class_VB.cs文件内容,第二幅是在VB.NET 中的引用。
OK,基本功能实现!
版本:Matlab 2017b & VS Community2017
选Library Compiler
C#代码示例:
上图包含m文件的函数结构,以及m文件多个结果返回的处理方法。
输出结果:
其中9331是301*31的cell。
9、运行你编写的.net程序
本篇原先在2012年发表在新浪博客,因为后面博客关闭服务,转移到这里。
1 | 示例: |