
$ apt-get install -y \
ca-certificates \
ssl-cert \
openssl \
iproute2 \
iputils-ping \
libgmp10
$ VERSION="5.9.8" && \
DEV_PACKAGES="wget bzip2 make gcc libssl-dev libgmp-dev" && \
apt-get install -y $DEV_PACKAGES && \
mkdir -p strongswan-build && \
cd strongswan-build && \
wget --no-check-certificate https://download.strongswan.org/strongswan-$VERSION.tar.bz2 && \
tar -xjf strongswan-$VERSION.tar.bz2 && \
cd strongswan-$VERSION && \
./configure --prefix=/usr --sysconfdir=/etc \
--enable-charon --enable-ikev2 --enable-nonce --enable-random \
--enable-openssl --enable-pem --enable-x509 --enable-pubkey \
--enable-constraints --enable-pki --enable-socket-default \
--enable-kernel-netlink --enable-swanctl --enable-resolve \
--enable-eap-identity --enable-eap-md5 --enable-eap-mschapv2 --enable-eap-dynamic \
--enable-eap-tls --enable-updown --enable-vici \
--enable-silent-rules && \
make -j4 all && make install && \
ln -s /usr/libexec/ipsec/charon charon
$ ipsec version Linux strongSwan U5.9.8/K5.15.0-53-generic University of Applied Sciences Rapperswil, Switzerland => 이후 "/etc/strongswan.d/charon.conf" (기본 값 사용해도 무관), "/etc/ipsec.secrets" (IKE ID에 따른 Pre-shared key 등), "/etc/ipsec.conf" (SA1, SA2설정) 을 적절히 수정 => 다음과 같은 명령으로 debug 실행할 수 있음. $ /usr/sbin/ipsec start --nofork --debug-all => 일반 데몬 실행은 다음과 같이 실행할 수 있음. $ /usr/sbin/ipsec start => 재시작 명령 $ /usr/sbin/ipsec restart => 종료 명령 $ /usr/sbin/ipsec stop



Boost network performance with libevent and libev
(http://www.ibm.com/developerworks/aix/library/au-libev/)
libevent(an event notification library) project home page
(http://libevent.org/)
Programming with Libevent documentation
(http://www.wangafu.net/~nickm/libevent-book/)
libevent man page
(http://monkey.org/~provos/libevent/event3.html)
libevent 및 libev로 네트워크 성능 향상
(https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/W5fe5344f8b4f_4651_b0cd_4d270afdc036/page/libevent%20%EB%B0%8F%20libev%EB%A1%9C%20%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC%20%EC%84%B1%EB%8A%A5%20%ED%96%A5%EC%83%81)
Chrome browser 에서 사용하는 event.c
(https://github.com/danielconnor/chrome-node/blob/master/np_node/deps/uv/src/unix/ev/event.c)
Initiator(행위의 시작) Responder(행위를 받는 입장)
TASK->build_i
=====================message===================>
TASK->process_r
TASK->build_r
<====================message====================
TASK->process_i
strongSwan에서 지원하는 crypto
(https://wiki.strongswan.org/projects/strongswan/wiki/PublicKeySpeed)
GMP - The GNU Multiple Precision Arithmetic Library
(https://gmplib.org/)
ZLIB - A Massively Spiffy Yet Delicately Unobtrusive Compression Library
(http://zlib.net/)
OpenSSL - Cryptography and SSL/TLS Toolkit
(https://www.openssl.org/)
OpenLDAP Software
(http://www.openldap.org/)
CURL library - command line tool and library for transferring data with URLs
(https://curl.haxx.se/)
OpenVPN
(https://openvpn.net/)
Openswan(IPsec implementation for Linux)
(https://www.openswan.org/)
strongSwan(OpenSource IPsec implementation.)
(https://www.strongswan.org/)
strongSwan Source Code Documentation (doxygen)
(https://www.strongswan.org/apidoc/)
Required Kernel Modules - strongSwan
(http://wiki.strongswan.org/projects/strongswan/wiki/KernelModules)
strongSwan 2.8 - Installation
(https://www.strongswan.org/docs/install2.htm)
strongSwan 4.2 - Installation
(https://www.strongswan.org/docs/install42.htm)
Autoconf options for the most current strongSwan release
(https://wiki.strongswan.org/projects/strongswan/wiki/Autoconf)
https://en.wikipedia.org/wiki/StrongSwan
IPSEC VPN on Ubuntu 16.04 with StrongSwan
(https://raymii.org/s/tutorials/IPSEC_vpn_with_Ubuntu_16.04.html)
Connecting AWS Virtual Private Clouds using VPN 'Strongswan'
(http://www.cakesolutions.net/teamblogs/connecting-aws-virtual-private-clouds-using-vpn-strongswan)
Connect Containers From Two Docker Hosts Using IPsec
(https://www.purplesrl.com/en/connect-two-docker-hosts-using-ipsec/)