OpenVPN部署
简介VPN直译就是虚拟专用通道,是提供给企业之间或者个人与公司之间安全数据传输的隧道,OpenVPN无疑是Linux下开源VPN的先锋,提供了良好的性能和友好的用户GUI。
1、安装docker
2、拉取openvpn镜像
docker pull kylemanna/openvpn:2.4
3、创建一个工作目录
mkdir -p /data/openvpn
4、生成配置文件(120.78.170.64这个ip是当前服务器的公网IP)
docker run -v /data/openvpn:/etc/openvpn --rm kylemanna/openvpn:2.4 ovpn_genconfig -u tcp://120.78.170.64
5、生成密钥文件
docker run -v /data/openvpn:/etc/openvpn --rm -it kylemanna/openvpn:2.4 ovpn_initpki
6、生成客户端证书
docker run -v /data/openvpn:/etc/openvpn --rm -it kylemanna/openvpn:2.4 easyrsa build-client-full admin nopass
7、导出客户端配置
mkdir -p /data/openvpn/conf
docker run -v /data/openvpn:/etc/openvpn --rm kylemanna/openvpn:2.4 ovpn_getclient admin > /data/openvpn/conf/admin.ovpn
8、启动OpenVPN服务
docker run --name openvpn -v /data/openvpn:/etc/openvpn -d -p 1194:1194/tcp --cap-add=NET_ADMIN kylemanna/openvpn:2.4
9、保存防火墙规则
iptables-save > /etc/sysconfig/iptables
10、设置防火墙
关闭firewalld防火墙,关闭开机自启
systemctl stop firewalld.service
systemctl disable firewalld.service
安装iptables防火墙,设置开机自启
yum -y install iptables-services net-tools
systemctl enable iptables.service
编辑防火墙配置
vim /etc/sysconfig/iptables
在最后COMMIT前添加以下规则
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited #可不加
-A FORWARD -j REJECT --reject-with icmp-host-prohibited #可不加
11、重启防火墙
systemctl restart iptables
12、将登录的证书下载到本地
在openvpn的安装目录下,有个config目录,将服务器上的admin.ovpn,放在该目录下,运行OpenVPN GUI,右键admin连接connect
在Mac电脑中,如何对Git的用户名和密码进行修改呢?起初不懂Mac,所以整了很久,本文将记录如何对这个进行操作,以便后期使用。
网页扫描二维码库:Html5-Qrcode,官网地址:https://scanapp.org/html5-qrcode-docs/
很多公共的Registry不能满足我们的需要,比团队想搭建一个自己的私有仓库,那么可以搭建本的Registry来解决。但是简单的搭建Registry仓库有也不太友好,不能很好的解决多用户的问题,所以本文使用了Harbor来搭建企业级的Docker仓库。
gzip命令用于将一个大的文件通过压缩算法变成一个小的文件。gzip不能直接压缩目录,因此目录需要tar进行打包成一个文件,然后tar再调用gzip进行压缩。
OpenCV-Python图像加法有两种方式,一种是直接使用+号进行相加,一种是cv2.add函数进行加法运算,但是两种加法的计算方式有差别,+运算是取模运算,cv2.add用的则是饱和运算,所进行相加后图片的样式会有一定的差别。
快速生成表格
Electron页面跳转、浏览器打开链接和打开新窗口
在使用Git的过程中,不想每次都输入用户名和密码去拉取代码,所以就需要保存这些信息,那么既然有保存了,就必须有清除功能。
Docker编译镜像出现:fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.12/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.2c4ac24e.tar.gz: No such file or directory问题