共通設定:起動不能を復旧

s50

起動不能を復旧.

下記のサイトで「Boot-Repair-Disk」をダウンロードします。

ダウンロードサイト

boot-repair-disk-64bit.iso
s51

インストールDVD作成.

ImgBurnを使いboot-repair-disk-64bit.isoでインストールディスクを作成します。

ライブ起動.

起動しないサーバーにインストールDVDを入れてライブ起動します。(日本語は文字化けしますので英語(English)を選択します。

s52「No」をクリックします。

s53「No」をクリックします。

s54「OK」をクリックします。

s55「Recommended repair」を選択して「Quit」をクリックします。

s56「Forward」をクリックします。

s57「OK」をクリックします。

s58「OK」をクリックします。

s59「シャットダウン」をクリックして再起動します。

s60「ENTER」を押下して再起動すれば成功です。

共通設定:VPNサーバー設定(Soft Ether VPN Saver)

s50

インターフェース名を確認.

インターフェース名を確認します。

[root@www ~]# 50_1nmcli device
DEVICE TYPE STATE CONNECTION
enp2s0 ethernet 接続済み enp2s0

s51

Soft Ether VPN Serverインストール.

Soft Etherダウンロードセンターで「ダウンロードするソフトウェアを選択」→「Soft Ether VPN Server」、「コンポーネントを選択」→「Soft Ether VPN Server」、「プラットフォームを選択」→「Linux」、「CPU を選択」→「(お使いのサーバーのCPU)」を選択し「ダウンロード可能なファイル」をクリックしてダウンロードします。

Soft Etherダウンロードセンター

Soft Etherダウンロードセンター

s52Tera Termを起動して、「webmaster」ユーザーで「ファイル」→「SSH SCP…」を選択します。

SSH SCP...

s53「SSH SCP…」をクリックして、「Soft Ether-vpnserver-*****.tar.gz」を選択し「Send」をクリックして転送します。

Send

s55rootでログインして、「Soft Ether-vpnserver-*****.tar.gz」をrootホームに転送します。

root@www:~# 55_1mv /home/webmaster/Soft Ether-vpnserver-*****.tar.gz /root/Soft Ether-vpnserver-*****.tar.gz

s56Soft Ether VPN Serverを展開します。

root@www:~# 56_1tar zxvf Soft Ether-vpnserver-*****.tar.gz

s57Soft Ether VPN Server展開先ディレクトリへ移動します。

root@www:~# 57_1cd vpnserver/

s58実行可能ファイルを生成します。

root@www:~# 58_1make

s60ホームディレクトリへ戻る

root@www:vpnserver~# 60_1cd

s61Soft Ether VPN Server展開先ディレクトリを所定のディレクトリへ移動します。

root@www:vpnserver~# 61_1mv vpnserver/ /usr/local/

s62Soft Ether VPN Serverディレクトリへ移動します。

root@www:vpnserver~# 62_1cd /usr/local/vpnserver/

s63root以外アクセスできないようにします。

root@www:vpnserver~# 63_1chmod 600 *

s64vpncmdに実行権限を付加します。

root@www:vpnserver~# 64_1chmod 700 vpncmd

s65vpnserverに実行権限を付加します。

root@www:vpnserver~# 65_1chmod 700 vpnserver

s66vpncmdを実行します。

root@www:vpnserver~# 66_1./vpncmd

s673で応答します。

vpncmd コマンド - Soft Ether VPN コマンドライン管理ユーティリティ
Soft Ether VPN コマンドライン管理ユーティリティ (vpncmd コマンド)
Version 4.30 Build 9696   (Japanese)
Compiled 2019/07/08 12:48:32 by yagi at pc33
Copyright (c) Soft Ether VPN Project. All Rights Reserved.

vpncmd プログラムを使って以下のことができます。

1. VPN Server または VPN Bridge の管理
2. VPN Client の管理
3. VPN Tools コマンドの使用 (証明書作成や通信速度測定)

1 - 3 を選択: 67_13

s68checkで応答します。

VPN Tools を起動しました。HELP と入力すると、使用できるコマンド一覧が表示できます。

VPN Tools>68_1check

s69合格を確認します。

すべてのチェックに合格しました。このシステム上で Soft Ether VPN Server / Bridge  が正しく動作する可能性が高いと思われます。

コマンドは正常に終了しました。

s70exitで応答して終了します。

VPN Tools>70_1exit

s71ホームディレクトリへ戻る

root@www:vpnserver~# 71_1cd

s72「Soft Ether-vpnserver-*****.tar.gz」を削除します。

root@www:~# 72_1rm -f Soft Ether-vpnserver-*****.tar.gz

s73

Soft Ether VPN Server起動.

起動スクリプトを作成します。

root@www:~# 73_1vi /etc/systemd/system/vpnserver.service
73_2[Unit]
Description=Soft Ether VPN Server
After=network.target network-online.target

[Service]
Type=forking
ExecStart=/usr/local/vpnserver/vpnserver start
ExecStop=/usr/local/vpnserver/vpnserver stop

[Install]
WantedBy=multi-user.target

s74起動します。

root@www:~# 74_1systemctl start vpnserver

s75自動起動設定します。

root@www:~# 75_1systemctl enable vpnserver

s76

UDP500番ポート、UDP4500番ポート開放.

ルーターの設定で、UDP500番ポート、UDP4500番ポートを開放します。(設定方法はご自身の環境に合わせて調べてください。)

ポート開放テスト

ポート開放確認サイトで「ホスト名」、「ポート番号(500、4500)」の開放確認をします。

ホスト名:76_1linuxserver.jp

ポート開放確認サイト
s77

Soft Ether VPN Server設定.

Soft Ether VPN Serverを停止します。

root@www:~# 77_1systemctl stop vpnserver

s78vpn_server.configを設定します。

root@www:~# 78_1vi /usr/local/vpnserver/vpn_server.config

s7919行目:ダイナミックDNS機能を無効化します。

        declare DDnsClient
        {
                bool Disabled 79_1true

s8044行目:ポート443での待ち受けを無効化します。

                declare Listener0
                {
                        bool DisableDos false
                        bool Enabled 80_1false
                        uint Port 443

s8150行目:ポート992での待ち受けを無効化します。

                declare Listener1
                {
                        bool DisableDos false
                        bool Enabled 81_1false
                        uint Port 992

s8256行目:ポート1194での待ち受けを無効化します。

                declare Listener2
                {
                        bool DisableDos false
                        bool Enabled 82_1false
                        uint Port 1194

s83起動します。

root@www:~# 83_1systemctl start vpnserver

s84ログローテーションスクリプトを作成します。

root@www:~# 84_1vi /etc/cron.daily/vpnserver
84_2#!/bin/bash
# 30日以前のログを削除
find /usr/local/vpnserver/*_log -name '*.log' -mtime +30 -delete

s85ログローテーションスクリプトへ実行権限を付加します。

root@www:~# 85_1chmod +x /etc/cron.daily/vpnserver

s86

Soft Ether VPN Serverダウンロード、インストール.

Soft Etherダウンロードセンターから「ダウンロードするソフトウェアを選択」→「Soft Ether VPN (Freeware)」、「コンポーネントを選択」→「Soft Ether VPN Server Manager for Windows」、「プラットフォームを選択」→「Windows」、「CPU を選択」→「(お使いのWindowsPCのCPU)」を選択し「ダウンロード可能なファイル」をクリックしてダウンロードします。

Soft Etherダウンロードセンター

Soft Ether VPN Serverダウンロード、インストール

s87インストールします。

インストール

s88「次へ」をクリックします。

「次へ」をクリック

s89「次へ」をクリックします。

「次へ」をクリック

s90「使用許諾契約書に同意します」を選択し、「次へ」をクリックします。

使用許諾契約書に同意します

s91「次へ」をクリックします。

「次へ」をクリック

s92「次へ」をクリックします。

「次へ」をクリック

s93「次へ」をクリックします。

「次へ」をクリック

s94「完了」をクリックします。

「完了」をクリック
s95

Soft Ether VPN Server初期設定.

「新しい接続設定」をクリックします。

「新しい接続設定」をクリック

s96「接続設定名」、「ホスト名」、「ポート番号」を選択し、「OK」をクリックします。

接続設定名:96_1linuxserver.jp

ホスト名:96_2linuxserver.jp

ポート番号:96_35555(SE-VPNポート)

接続設定名

s97作成した接続設定を選択して「接続」をクリックします。

作成した接続設定を選択

s98管理者パスワードを設定して「OK」をクリックします。

管理者パスワードを設定

s99「IPsec/L2TP設定」をクリックします。

IPsec/L2TP設定

s100「L2TPサーバー機能を有効にする(L2TP over IPsec)」を選択、「L2TPサーバー機能を有効にする(暗号化されていないL2TP)」を選択解除、「IPsec事前共有鍵」を設定し、「OK」をクリックします。

IPsec事前共有鍵:100_1vpn

L2TPサーバー機能を有効にする(L2TP over IPsec)

s101仮想HUB(DEFAULT)を選択して「削除」をクリックします。

仮想HUB(DEFAULT)を選択

s102「仮想HUBの作成」をクリックします。

仮想HUBの作成

s103「仮想HUB名」に、任意の名前を入力し、「OK」をクリックします。

仮想HUB名

s104「ローカルブリッジ設定」をクリックします。

ローカルブリッジ設定

s105「仮想HUB」→作成した仮想HUBを選択、「作成する種類」→「物理的な既存のLANカードとのブリッジ接続」を選択、「LANカード」→「enp2s0」を選択し、「ローカルブリッジを追加」をクリックします。

ローカルブリッジを追加

s106作成した仮想HUBを選択して「仮想HUBの管理」をクリックします。

仮想HUBの管理

s107「ユーザーの管理」をクリックします。

ユーザーの管理

s108「新規作成」をクリックします。

新規作成

s109「ユーザー名」→任意のユーザー名を入力、「パスワード」→任意のパスワードを入力し、「OK」をクリックします。

ユーザー名:109_1vpn_name

パスワード:109_2vpn_pass

ユーザー名

s110接続を有効にするためルーターを再起動します。

ルーターを再起動するとIPアドレスが変更されるので、DiCEを再起動しましす。

root@www:~# 110_1setarch `uname -m` /usr/local/bin/DiCE/diced
=-=-=- DiCE DynamicDNS Client -=-=-=
Version 0.19 for Japanese
Copyright(c) 2001 sarad

:110_2ex 0
+ 4/8 17:00 にVALUEDOMAIN-linuxserver.jpが実行されました
  IPアドレスを更新しました
:110_3quit

s111

外部から固定ひかり電話子機接続.

AGEphoneのダウンロード、インストール.

スマートフォンにします。「AGEphone」ダウンロード、インストールして、固定ひかり電話の子機にします。

AGEphone

AGEphone

s112AGEphoneの初期設定をします。

 

AGEphoneの初期設定

s113スマートフォンのVPN接続でVPNサーバーを利用して固定ひかり電話子機接続をします。

L2TP over IPsecを選択

ホスト名:112_1linuxserver.jp

IPsec事前共有鍵:112_2vpn

ユーザー名:112_3vpn_name

パスワード:112_4vpn_pass

共通設定:ディスクのクローン作成

s50

Ubuntu Desktopダウンロード

Ubuntu Desktopをダウンロードします。

https://www.ubuntulinux.jp/home

s51

ライブDVD作成

ImgBurnを使って、インストールディスクイメージでライブディスクを作成し、サーバーにライブDVDを入れて起動します。

ImgBurn

s52

ディスクのクローン作成

サーバーにクローンHDDを投入して「Gparted」、「デスク管理」などで内容がすべて削除されていることを確認し、コピー元ディスクのHDDパス名(例:/dev/sda )、コピー先ディスクのHDDパス名(例:/dev/sdc )を記録し、端末を開きます。

「root」に移行します。

ubuntu@ubuntu:~$ 52_1sudo su -

s53ディスク(例:/dev/sda)をディスク(例:/dev/sdc)へコピーします。(100gb当たり約1時間かかります。)

root@ubuntu:~# 53_1dd if=/dev/sda of=/dev/sdc bs=4096 conv=sync,noerror

s54進捗状況を確認するには、新しく端末を開き下記のコマンドを入力します。

root@ubuntu:~# 54_1sudo pkill -USR1 dd

s55元の端末に下記の進捗状況が表示されます。

33132801+0 レコード出力
68163994112 バイト (68 GB) コピーされました、 18593.9 秒、 3.7 MB/秒

s56定期的(例:60秒間隔)に進捗状況を表示するには、下記のように入力します。

root@ubuntu:~# 56_1watch -n 60 "pkill -USR1 dd"

s57コピーが終了したらシャットダウンしてクローンHDDを取り外します。(注意:クローンHDDを付けたままサーバーを再起動しないでください。

共通設定:ドメイン設定

s50

IPアドレス取得スクリプト作成.

IPアドレス取得スクリプトを作成します。

[root@www ~]# 50_1vi /var/www/html/ip_add.php
50_2<?php
$ip_address = $_SERVER['REMOTE_ADDR'];
echo $ip_address ;
?>

s51

ドメインIPアドレス取得スクリプト作成.

ドメインのIPアドレス取得スクリプトを作成します。

[root@www ~]# 51_1vi /var/www/html/ip_host.php
51_2<?php
$ip_host_address = empty($_GET['host'])?null:gethostbyname($_GET['host']);
echo $ip_host_address;
?>s52

s51

ドメインIPアドレス更新スクリプト作成.

ドメインのIPアドレス更新スクリプトを作成します。

[root@www ~]# 52_1vi /usr/local/bin/dns-update.sh
52_2#!/bin/bash

UPIPURLMODE=${0}
SCRIPT=${1}
DNSUPURL=${2}

DOMAIN_LOG=${3}
DOMAIN=${4}
if [ "${DOMAIN_LOG}" = "" ]; then
    DOMAIN_JOB=""
else
    DOMAIN_JOB="?${DOMAIN_LOG}=${DOMAIN}"
fi

PASS_LOG=${5}
PASS=${6}
if [ "${PASS_LOG}" = "" ]; then
    PASS_JOB=""
else
    PASS_JOB="&${PASS_LOG}=${PASS}"
fi

IPGET_LOG=${7}

if [ "${UPIPURLMODE}" = "0" ]; then
    HOST_LOG=${8}
    HOST=${9}
elif [ "${UPIPURLMODE}" = "1" ]; then
    OTHERS1_LOG=${8}
    OTHERS1=${9}
    HOST_LOG=${10}
    HOST=${11}
elif [ "${UPIPURLMODE}" = "2" ]; then
    OTHERS1_LOG=${8}
    OTHERS1=${9}
    OTHERS2_LOG=${10}
    OTHERS2=${11}
    HOST_LOG=${12}
    HOST=${13}
else
    HOST_LOG=${8}
    HOST=${9}
fi

if [ "${OTHERS1_LOG}" = "" ]; then
    OTHERS1_JOB=""
else
    OTHERS1_JOB="&${OTHERS1_LOG}=${OTHERS1}"
fi

if [ "${OTHERS2_LOG}" = "" ]; then
    OTHERS1_JOB=""
else
    OTHERS1_JOB="&${OTHERS1_LOG}=${OTHERS1}"
fi

if [ "${HOST_LOG}" = "" ]; then
    HOST_JOB=""
else
    HOST_JOB="&${HOST_LOG}=${HOST}"
fi

#################################################################################

if [ "${HOST}" = "" ]; then
    FQDN=${DOMAIN}
else
    FQDN="${HOST}.${DOMAIN}"
fi

# Get domain ip address
IPGET=`curl /var/www/html/ip_host.php?host=${FQDN} 2>&1`
DOMAINIP=`echo "${IPGET}"|grep "has address"|awk '{ print $NF }'|egrep ^[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+$`
if [ $? -ne 0 ]; then
    echo "${FQDN} Domain ip address detection error" | logger -t $(basename $0)
    echo ${IPGET} | logger -t $(basename $0)
    exit
fi
IPGET_JOB="&${IPGET_LOG}=${IPGET}"

# Server ip address acquisition
IPGET=`curl /var/www/html/ip_add.php 2>&1`
echo "${IPGET}" | egrep ^[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9]\+$ > /dev/null 2>&1
if [ $? -eq 0 ]; then
    SERVERIP=`echo "${IPGET}" | tail -n 1 | awk '{ print $NF }'`
else
    echo "${DOMAIN} Server ip address detection error" | logger -t $(basename $0)
    echo "${IPGET}" | logger -t $(basename $0)
    exit
fi

# Domain ip address update
if [ "${DOMAINIP}" != "${SERVERIP}" ]; then
    IPUPDATE=`wget -q -O - "${DNSUPURL}${DOMAIN_JOB}${PASS_JOB}${HOST_JOB}${SERVERIP_JOB}${OTHERS1_JOB}${OTHERS2_JOB}${IPGET_JOB}"`
    echo ${IPUPDATE}|grep -q OK
    if [ $? -eq 0 ]; then
        echo "${FQDN} Ip address update success ${DOMAINIP} to ${SERVERIP}" | logger -t $(basename $0)
    else
        echo "${FQDN} Ip address update error" | logger -t $(basename $0)
        echo ${IPUPDATE} | logger -t $(basename $0)
        (
        echo IP ADDRESS UPDATE ERROR
        echo ${IPUPDATE}
        )|mail -s "${SCRIPT##*/} ERROR on ${FQDN}" root
        exit 1
    fi
fi
exit

[root@www ~]# 52_2chmod +x /usr/local/bin/dns-update.sh

s53

IPアドレス更新スクリプト実行.

IPアドレス更新スクリプトを実行します。

[root@www ~]# 53_1/usr/local/bin/dns-update.sh           

IPアドレス更新スクリプト定期自動実行設定.

IPアドレス更新スクリプト定期自動設定を実行します。

[root@www ~]# 54_1 vi /etc/cron.d/dns-update
54_2/usr/local/bin/dns-update.sh           

共通設定:サーバーの自動起動

s50

BIOS設定.

BIOS起動.

BIOSの起動方法はご自身の環境に合わせてお調べください。

例:起動直後に画面に表示される場合があります。

メーカー 操作キー
富士通 「F2」
NEC 「F2」
Lenovo 「F1」または「F2」
HP 「F10」または「Esc」
Dell 「F2」 または「F12」

s51停電があったとき、電源が復旧したらサーバが起動するようにBIOSを設定します。

BIOSの設定方法はご自身の環境に合わせてお調べください。

メーカー 操作手順
富士通 「Power」→「Power Failure Recovery」 →「Always On」
NEC 「Boot」→「After Power Failure」→「Power On」
Lenovo 「Config」→「Power」→「 Power on with AC attached」
HP 「Power」→「After Power Failure」→「Power On」
Dell 「SystemSecurity」→「AC Power Recovary」