softether on docker(作業中) docker(45) , Ethernet(12)

# softEther
SoftEtherを知る
https://qiita.com/kaizen_nagoya/items/7a4062f845ebb2539e25
softether on docker(作業中)
https://qiita.com/kaizen_nagoya/items/fd8778bc768f2be734e2
softether on docker(cantos)　作業中
https://qiita.com/kaizen_nagoya/items/8afc39c6a4b1d17d1f76
「ソフトイーサ　PacketiX VPN入門」を読む
https://qiita.com/kaizen_nagoya/items/3b1d330b2cddaacfa5b8

dockerに入れようと思った。
Redhat系なら簡単。Debian系はなぜか対応していない。

## 課題
Debian系は、chkconfigがなくなっている。
代替のsysv-rc-confもなくなっている。

# downloads

PacketiX VPN 2.0
https://www2.softether.jp/jp/vpn2/download/


```
$ mkdir softether
$ cd softether
$ docker run -v ~/softether -it ubuntu /bin/bash
```

```
# ls
Users  bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@8f519ef35221:/# ls Users
administrator
root@8f519ef35221:/# cd Users
root@8f519ef35221:/Users# cd administrator
root@8f519ef35221:/Users/administrator# ls
softether
root@8f519ef35221:/Users/administrator# cd softether

 wget https://www2.softether.jp/jp/download/file.aspx/0CA5B39072485AB9712063585167748AA1277B64/vpnserver-5280-rtm-linux-x64.tar.gz
--2019-02-18 12:01:37--  https://www2.softether.jp/jp/download/file.aspx/0CA5B39072485AB9712063585167748AA1277B64/vpnserver-5280-rtm-linux-x64.tar.gz
Resolving www2.softether.jp (www2.softether.jp)... 42.124.126.8
Connecting to www2.softether.jp (www2.softether.jp)|42.124.126.8|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10468806 (10.0M) [application/octet-stream]
Saving to: 'vpnserver-5280-rtm-linux-x64.tar.gz'

vpnserver-5280-rtm-linux-x64.tar.gz      100%[================================================================================>]   9.98M  6.67MB/s    in 1.5s    

2019-02-18 12:01:39 (6.67 MB/s) - 'vpnserver-5280-rtm-linux-x64.tar.gz' saved [10468806/10468806]

# wget https://www2.softether.jp/jp/download/file.aspx/5BE3B9C2B96740427B40E5716DC6AF9F1495E447/vpnclient-5280-rtm-linux-x64.tar.gz
--2019-02-18 12:02:12--  https://www2.softether.jp/jp/download/file.aspx/5BE3B9C2B96740427B40E5716DC6AF9F1495E447/vpnclient-5280-rtm-linux-x64.tar.gz
Resolving www2.softether.jp (www2.softether.jp)... 42.124.126.8
Connecting to www2.softether.jp (www2.softether.jp)|42.124.126.8|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10463204 (10.0M) [application/octet-stream]
Saving to: 'vpnclient-5280-rtm-linux-x64.tar.gz'

vpnclient-5280-rtm-linux-x64.tar.gz      100%[================================================================================>]   9.98M  2.59MB/s    in 3.9s    

2019-02-18 12:02:16 (2.59 MB/s) - 'vpnclient-5280-rtm-linux-x64.tar.gz' saved [10463204/10463204]

```

第7章 PacketiX VPN Server 2.0 の導入
https://www2.softether.jp/jp/vpn2/manual/web/7.aspx

7.3 Linux へのインストールと初期設定
https://www2.softether.jp/jp/vpn2/manual/web/7-3.aspx#vpn_7_3_1

>インストールするコンポーネントを選択するフェーズでは、少なくとも「開発ツール (コンパイラなど)」、「開発用ライブラリ」などを同時にインストールしてください。VPN Server のインストール時には make や gcc、binutils などのユーティリティと、libc (glibc)、zlib、openssl、readline および ncurses の各開発用ライブラリバージョン (devel と呼ばれる場合もあります) が必要です。


12.1 PacketiX VPN Server 2.0 仕様
https://www2.softether.jp/jp/vpn2/manual/web/12-1.aspx#vpn_12_1_1
> ※5	ディストリビューションのインストール時にすべてのパッケージを選択することを推奨します。なお、特に zlib, openssl, readline, ncurses の各開発用ライブラリおよび gcc, binutils などの開発ツールがインストールされている環境でのみサポートされます。

```
# apt install -y make gcc binutils openssl   
# apt install -y libreadline6-dev libncursesw5-dev  zlib1g-dev  libpthread-stubs0-dev
```

```
# tar xzvf vpnserver-5280-rtm-linux-x64.tar.gz 
# tar xzvf vpnclient-5280-rtm-linux-x64.tar.gz 
```

```
# make
./.install.sh
PacketiX Software Install Utility
Copyright (C) 2004-2006 SoftEther Corporation. All Rights Reserved.


Do you want to read the License Agreement for this software ?

 1. Yes
 2. No

Please choose one of above number: 
1

*** This text file is encoded with EUC-JP in Japanese.


Did you read and understand the License Agreement ?
(If you couldn't read above text, Please read License_ReadMeFirst.txt
 file with any text editor.)

 1. Yes
 2. No

Please choose one of above number: 
1


Did you agree the License Agreement ?

1. Agree
2. Do Not Agree

Please choose one of above number: 
1

make[1]: Entering directory '/Users/administrator/softether/vpnserver'
ranlib libssl.a
ranlib libcrypto.a
ranlib vpnserver.a
gcc vpnserver.a -pthread -lrt -lm -lz libssl.a libcrypto.a -lpthread -ldl -lreadline -lcurses -m64 -DCPU_64 -o vpnserver
/usr/bin/ld: cannot find -lcurses
collect2: error: ld returned 1 exit status
Makefile:13: recipe for target 'vpnserver' failed
make[1]: *** [vpnserver] Error 1
make[1]: Leaving directory '/Users/administrator/softether/vpnserver'
```

```
# apt install -y build-essential 
# make

前略

gcc vpnserver.a -pthread -lrt -lm -lz libssl.a libcrypto.a -lpthread -ldl -lreadline -lcurses -m64 -DCPU_64 -o vpnserver
/usr/bin/ld: vpnserver.a(vpnserver.o): relocation R_X86_64_32 against symbol `StopProcess' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: vpnserver.a(Unix.o): relocation R_X86_64_32 against `.data' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: vpnserver.a(Cedar.o): relocation R_X86_64_32 against symbol `PacketiX_VPN_GetHttpDateStr' can not be used when making a PIE object; recompile with -fPIC
中略
```


```
$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
8f519ef35221        ubuntu              "/bin/bash"         6 minutes ago       Up 6 minutes                            eloquent_panini

$ docker commit 8f519ef35221   kaizenjapan/softether
sha256:700d71a1b2101d5db25bd8335ab39c835c4328205f554d40f7218c49203a67e7



$ docker push kaizenjapan/softether
The push refers to repository [docker.io/kaizenjapan/softether]
90851a404188: Pushed 
4b7d93055d87: Mounted from library/ubuntu 
663e8522d78b: Mounted from library/ubuntu 
283fb404ea94: Mounted from library/ubuntu 
bebe7ce6215a: Mounted from library/ubuntu 
latest: digest: sha256:999e3692a5b7eb2686e95bea00325afb4adc0c548466d991b9caf22764fe9e9f size: 1362
```


# 参考資料(reference)

ubuntu版chkconfigのsysv-rc-confを使う
https://qiita.com/muraikenta/items/df0082b7f7d0f310d942

Ubuntu 16.10でsysv-rc-confが入らないので手動で入れた話
https://qiita.com/hirohiro77/items/dbe4554144fb4e232ac3

Ethernet 記事一覧　Ethernet(0)
https://qiita.com/kaizen_nagoya/items/88d35e99f74aefc98794

# 文書履歴(document history)
ver. 0.01 初稿 20190218
ver. 0.02 初稿 20190219
ver. 0.03 初稿 20190220
ver. 0.04 標題追記 20190813
### 最後までおよみいただきありがとうございました。
いいね　💚、フォローをお願いします。
####  Thank you very much for reading to the last sentence.
Please press the like icon 💚　and follow me for your happy life.