本文使用的服务器
- 1CPU,1G, 优惠码
- CentOS 7.5
- OpenVPN 2.4.6
安装 OpenVPN
1 2 3 4 5 6 7 8 |
#下载安装脚本 wget https://raw.githubusercontent.com/Angristan/OpenVPN-install/master/openvpn-install.sh |
CentOS 8 安装请移步 《CentOS 8 使用 Strongswan IPsec IKEv2 搭梯》
本文介绍使用 StrongSwan 搭建 VPN 的过程,适合有一定 linux 基础的用户。
本文使用的服务器
StrongSwan 是基于 OpenSource IPsec 的 VPN 解决方案,官方网站:https://www.strongswan.org/ ,如果无法访问请使用科学上网,原因你懂的。
StrongSwan 运行于 Linux 系统上,本文使用 CentOS 7 系统。
由于基于源码自行编译安装过于繁琐,这里只介绍使用 yum 的安装方式。
首先,配置 StrongSwan 的源,此软件已包含在 EPEL 源中,关于配置 yum 源,请参考 《CentOS 7 配置 LNMP + FTP 环境》文中的 “添加常用软件源” 部分。
安装 StrongSwan
1 |
yum install strongswan |
启用开机启动
1 |
systemctl enable strongswan |
StrongSwan IPsec IKEv2 连接需要用到服务器证书,用于验证服务器身份。由于自签发证书不受操作系统信任,我们需要申请 Let’s Encrypt 免费证书。
申请方式参考《CentOS 7 Nginx Let’ s Encrypt SSL 证书安装配置》, 申请的域名必须是明确的,不能用通配符证书代替。例如,vpn.xxx.com,… 阅读全文
当前最新 .net core 版本为 2.1
打开 .net core 下载页面,https://www.microsoft.com/net/download/linux ,页面包含 .net core sdk 及 .net core runtime 两个安装包。
如果需要在 linux 上进行开发,要安装 .net core sdk 版本,不需要开发推荐安装 .net core runtime 版本。
点击 install .NET Core 2.1 Runtime ,进入下载页面,在下拉框中选择 Centos。
按提示输入以下命令
在 VMware 中最小化安装完 CentOS 7, 正常安装 VMware Tools, 发现在设置主机共享目录的时候提示”无法更新运行时文件夹共享状态:在客户机操作系统内装载共享文件夹文件系统时出错” , 找了很久终于搞定.
VMware Workstation Pro 12.5.2
CentOS 7.3 minimal
如按菜单上的 “安装 VMware Tools” 安装到最后会看到几处错误提示, 都是有关 “wait_on_bit” 的, 最终结果就是 vmhgfs 组件编译出错, 不能共享文件夹.
FirewallD 提供了支持网络/防火墙区域(zone)定义网络链接以及接口安全等级的动态防火墙管理工具。它支持 IPv4, IPv6 防火墙设置以及以太网桥接,并且拥有运行时配置和永久配置选项。它也支持允许服务或者应用程序直接添加防火墙规则的接口。
更全面的内容可以查看 FirewallD 官网文档
firewalld 最重要的是 zone 区域的概念
什么是区域?
网络区域定义了网络连接的可信等级。这是一个一对多的关系,这意味着一次连接可以仅仅是一个区域的一部分,而一个区域可以用于很多连接。
预定义的区域列表如下, 每个区域都是一个 xml 文件, 保存在 /usr/lib/firewalld/zones/ 中, 不要编辑这里的文件
自定义区域则保存在 /etc/firewalld/zones/ 中, 可以编辑这里的文件, 这里的设置将覆盖 /usr/lib/firewalld/zones/ 中的设置
区域列表, public 是默认区域, 由 firewalld 提供的区域按照从不信任到信任的顺序排序。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
drop(丢弃) 任何接收的网络数据包都被丢弃,没有任何回复。仅能有发送出去的网络连接。 block(阻塞) 任何进入的网络连接都被拒绝,并返回 IPv4 的 icmp-host-prohibited 报文或者 IPv6 的 icmp6-adm-prohibited 报文。只允许由该系统初始化的网络连接。 public(公开) 用以可以公开的部分。你认为网络中其他的计算机不可信并且可能伤害你的计算机。只允许选中的连接接入。 external(外部) 用在路由器等启用伪装的外部网络。你认为网络中其他的计算机不可信并且可能伤害你的计算机。只允许选中的连接接入。 dmz(隔离区) 用以允许隔离区(dmz)中的电脑有限地被外界网络访问。只接受被选中的连接。 work(工作) 用于工作网络。您可以基本相信网络内的其他电脑不会危害您的电脑。仅仅接收经过选择的连接。 home(家庭) 用于家庭网络。您可以基本信任网络内的其他计算机不会危害您的计算机。仅仅接收经过选择的连接。 internal(内部) 用于内部网络。您可以基本上信任网络内的其他计算机不会威胁您的计算机。仅仅接受经过选择的连接。 trusted(信任) 可接受所有的网络连接。 |
什么是接口?… 阅读全文