文档章节

strongswan ikev2 server on ubuntu 14.04

李有常
 李有常
发布于 2016/09/05 09:10
字数 454
阅读 61
收藏 0

https://quericy.me/blog/699/

for vpn in /proc/sys/net/ipv4/conf/*; do echo 0 > $vpn/accept_redirects; echo 0 > $vpn/send_redirects; done

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o venet0 -j MASQUERADE

Basic Strongswan ikev2 server setup

  • paltform: atlantic.net ubuntu 14.04 x64
  • the commands below are run with root account

Strongswan

apt-get install strongswan
apt-get install iptables iptables-persistent

ca

root ca

cd ~
mkdir swan
cd swan
ipsec pki --gen --outform pem > ca_key.pem
ipsec pki --self --in ca_key.pem --dn "C=CN, O=strongswan, CN=strongswan ca" --ca --outform pem > ca_cert.pem

server ca

ipsec pki --gen --outform pem > server_key.pem
ipsec pki --pub --in server_key.pem | ipsec pki --issue --cacert ca_cert.pem --cakey ca_key.pem --dn "C=CN, O=strongswan, CN=vpn.strong.com" --san="vpn.strong.com" --outform pem > server_cert.pem

client ca

ipsec pki --gen --outform pem > client_key.pem
ipsec pki --pub --in client_key.pem | ipsec pki --issue --cacert ca_cert.pem --cakey ca_key.pem --dn "C=CN, O=strongSwan, CN=client" --outform pem > client_cert.pem

implement ca

cp ca_cert.pem /etc/ipsec.d/cacerts/
cp server_cert.pem /etc/ipsec.d/certs/
cp server_key.pem /etc/ipsec.d/private/

conf

  • /etc/ipsec.conf
config setup
	# strictcrlpolicy=yes
	# uniqueids = no

conn %default
        leftcert=server_cert.pem
        auto=add
        dpdaction=clear
        dpddelay=300s
        dpdtimeout=1h

conn rw
        leftfirewall=yes
        leftsubnet=0.0.0.0/0
        right=%any
        rightsourceip=10.0.0.0/24
  • /etc/ipsec.secerts
: RSA server_key.pem
  • /etc/strongswan.conf
charon {
	load_modular = yes
	install_virtual_ip = yes

	dns1 = 8.8.8.8
	dns2 = 8.8.4.4 
	# use the dns provided by vps

	plugins {
		include strongswan.d/charon/*.conf
	}
}

system conf

net.ipv4.ip_forward = 1
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE
COMMIT
# Completed on Mon Jul 22 14:53:31 2013
# Generated by iptables-save v1.4.18 on Mon Jul 22 14:53:31 2013
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [432:67301]
-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -p udp -m udp --dport 500 -j ACCEPT
-A INPUT -p udp -m udp --dport 4500 -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p esp -j ACCEPT
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -s 127.0.0.0/24 -d 127.0.0.0/24 -j ACCEPT
-A INPUT -p tcp -j REJECT --reject-with tcp-reset
-A INPUT -p udp -j REJECT --reject-with icmp-port-unreachable
-A INPUT -j REJECT --reject-with icmp-proto-unreachable
COMMIT

client settings

  • ss_cert.pem
  • client_key.pem
  • client_cert.pem

Download these files to client, with scp or ftp. Use them for Strongswan vpn connection.

Referenece

本文转载自:

上一篇: 备忘录
下一篇: mysql 备份
李有常
粉丝 5
博文 126
码字总数 31866
作品 0
威海
后端工程师
私信 提问
strongSwan 4.3.6 发布

strongSwan是一个完整的2.4和2.6的Linux内核下的IPsec和IKEv1 的实施。它也完全支持新的IKEv2协议的Linux 2.6内核。它互均IKEv1和IKEv2模式与大多数其他基于IPSec的VPN产品。的重点项目是str...

红薯
2010/02/13
1K
0
strongSwan 4.6.0 发布,Linux的IPsec项目

strongSwan 4.6.0 发布,strongSwan是一个完整的2.4和2.6的Linux内核下的IPsec和IKEv1 的实现。它也完全支持新的IKEv2协议的Linux 2.6内核。结合IKEv1和IKEv2模式与大多数其他基于IPSec的VPN...

小卒过河
2011/11/08
596
0
strongSwan 5.0.4 发布,Linux 的 IPsec 项目

strongSwan 5.0.4 修复了一个严重的安全漏洞 (CVE-2013-2944),该漏洞存在于 4.3.5 到 5.0.3 的所有版本中。如果 strongSwan 的 openssl 插件用于 ECDSA 签名验证,一个空的、无效的签名会被...

oschina
2013/05/01
616
0
解决:deepin连接预共享秘钥的L2TP/IPSec的VPN下,出现“连接vpn失败,原因未知”

背景:公司的vpn是有预共享秘钥的l2tp/ipsec,使用deepin连接时,一直连接不成功,因为这个原因,不得不回归windows阵营。但对于一个爱好linux的折腾者,还是时不时会找找解决办法,功夫不负...

Funcy1122
2018/09/01
0
0
Strongswan 服务端配置

首先编译安装Strongswan 1. 安装必须的库 2. 下载Strongswan并解压(代表当前版本号,这里采用最新的版本) wget http://download.strongswan.org/strongswan.tar.gz tar xzf strongswan.tar...

赵延康
2015/07/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

JWT学习总结

官方 https://jwt.io 英文原版 https://www.ietf.org/rfc/rfc7519.txt 或 https://tools.ietf.org/html/rfc7519 中文翻译 https://www.jianshu.com/p/10f5161dd9df 1. 概述 JSON Web Token(......

冷基
今天
3
0
AOP的学习(1)

AOP 理解AOP编程思想(面向方法、面向切面) spring AOP的概念 方面 -- 功能 目标 -- 原有方法 通知 -- 对原有方法增强的方法 连接点 -- 可以用来连接通知的地方(方法) 切入点 -- 将用来插入...

太猪-YJ
今天
4
0
一张图看懂亮度、明度、光度、光亮度、明亮度

亮度、明度、光亮度,Luminance和Brightness、lightness其实都是一个意思,只是起名字太难了。 提出一个颜色模型后,由于明度的取值与别人的不同,为了表示区别所以就另想一个词而已。 因此在...

linsk1998
昨天
8
0
Python应用:python链表示例

前言 python链表应用源码示例,需要用到python os模块方法、函数和类的应用。 首先,先简单的来了解下什么是链表?链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是...

python小白1
昨天
4
0
Source Insight加载源码

Source Insight是一个图形化的源代码查看工具(当然也可以作为编译工具)。如果一个项目的源代码较多,此工具可以很方便地查找到源代码自建的依赖关系。 1.创建工程 下图为Snort源代码的文件...

天王盖地虎626
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部