SoftEther起動時のIPアドレス設定について

ちょっと必要があって自社のサーバーとVPSをVPN接続しようと思い、
簡単なのでSoftEtherを使うことにしました。

VPS側はNICが2本ありOSはUbuntuです。

SoftEtherのインストール方法はちまたに溢れているので割愛しますが、
インストールし起動してもNICにはIPが割り当てられません。

なので、固定で使いたい場合は”ip add”コマンドとかで追加してやる必要がありますが、
サーバーがなんかの理由で再起動したりしたときはまた手動で追加せねばいけません。
それはめんどくさすぎるのでスタートスクリプトをシェルで書いてサービス実行時に
シェルを実行させたら良い!っていう記事がいくつか見つかります。

でも、シェルすら作るのめんどいしブリッジタップの名前も変えねぇしな・・・
っていうズボラな筆者はスタートスクリプト側に書いちゃいました。

よかったらご参考にどうぞ

[Unit]
Description=SoftEther VPN Server
After=network.target auditd.service

[Service]
Type=forking
TasksMax=16777216
EnvironmentFile=-/etc/defaults/softether-vpnserver
ExecStart=/usr/libexec/softether/vpnserver/vpnserver start
ExecStartPost=/bin/sleep 3
ExecStartPost=/sbin/ip addr add 192.168.XXX.XXX/24 dev tap_vpn
ExecStartPost=/sbin/ip link set mtu 1280 dev tap_vpn
ExecStartPost=/sbin/ip route add 192.168.XXX.0/24 via 192.168.0.1 dev tap_vpn
ExecStartPost=/sbin/ip route add 192.168.XXX.0/24 via 192.168.0.1 dev tap_vpn
ExecStop=/usr/libexec/softether/vpnserver/vpnserver stop
KillMode=process
Restart=on-failure

# Hardening
PrivateTmp=yes
ProtectHome=yes
ProtectSystem=strict
RuntimeDirectory=softether
StateDirectory=softether
LogsDirectory=softether
CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE CAP_NET_BROADCAST CAP_NET_RAW CAP_SYS_NICE CAP_SYSLOG CAP_SETUID

[Install]
WantedBy=multi-user.target

あとは仕上げに”systemctl daemon-reload”を実行してあげてください。

これでIP固定とMTUの値、Static routeが設定できちゃいます。
ほんとはStop時にIPを削除すべきだとか言われますが、
SfotEtherの仕様でStopするとブリッジタップも消えるので消さなくてもいいじゃんっていう
考え方なので好ましいか?と言われるとつっこみもあるかと思いますが、
動作には問題ないのでご家庭や社内のちょっとした環境では十分じゃないでしょうか。

当社ではVPN環境の構築も承っております。
お気軽にお問い合わせください!

FreePBXのFirewallで自分がロックアウトされる

FreePBXを初期設定中に結構な頻度で自分自身がBANされてしまうことがあります。
こうなるとWEBコンソールどころかSSHすらできないので詰みます。
その際はコンソール接続すればサーバーにアクセスできるのでFirewallを無効にすれば良いのですが、
信頼済みのネットワークにする方法ないのかな?と探したところ簡単にできるようでした。

fwconsole firewall trust x.x.x.x

X.X.X.XはIPアドレス

ぜひお試しください。

FreePBX 17のお手軽インストール

久々に技術的なことでもないですがFreePBXのインストールが
ものすごく楽になるスクリプトができていたのでご紹介しておきます。
ただし、debian12.X限定です。

なので、弊社でよく使うUbuntuやAlmaLinuxはいつも通り手作業です。

ちょうど社内のVoIPサーバを更新しようと思っていたので、
Conoha VPSに構築したdebian12でやってみました。

まずは、普通にVPSコンソールでdebina12をインストールし起動させます。

次に最新の状態に整えておきましょう。

apt -y update
apt -y upgrade

他にOSの初期設定としてお好みでホストネームの設定やTimezoneを変更します。
そして再起動を終えたら公式のGitからインストールスクリプトを取得します。

cd /tmp
wget https://raw.githubusercontent.com/FreePBX/sng_freepbx_debian_install/master/sng_freepbx_debian_install.sh
chmod +x sng_freepbx_debian_install.sh
./sng_freepbx_debian_install.sh

こんな感じで始まるので気長に待ちましょう。割と時間かかります。
待ってる間に必要なポートを開けたりDNS登録などしてても良いかもしれません。

root@host1:/tmp# ./sng_freepbx_debian_install.sh
2025-02-19 20:52:36 - Performing version check...
Perfect! You're already running the latest version.
2025-02-19 20:52:36 - Starting installation.
.
.
.

最終的に以下の文字が出たら終わりです。
(MACアドレスとIPアドレス部はマスクしてます)

NOTICE! You have 3 notifications! Please log into the UI to see them!
Current Network Configuration
+-----------+-------------------+------------------------------------+
| Interface | MAC Address | IP Addresses |
+-----------+-------------------+------------------------------------+
| eth0 | FA:00:00:00:00:00 | XXX.XXX.XXX.XXX |
| | | 2400                |
+-----------+-------------------+------------------------------------+

Please note most tasks should be handled through the GUI.
You can access the GUI by typing one of the above IPs in to your web browser.
For support please visit:
http://www.freepbx.org/support-and-professional-services

+---------------------------------------------------------------------+
| This machine is not activated. Activating your system ensures that |
| your machine is eligible for support and that it has the ability to |
| install Commercial Modules. |
| |
| If you already have a Deployment ID for this machine, simply run: |
| |
| fwconsole sysadmin activate deploymentid |
| |
| to assign that Deployment ID to this system. If this system is new, |
| please go to Activation (which is on the System Admin page in the |
| Web UI) and create a new Deployment there. |
+---------------------------------------------------------------------+

ただ、このままだとapacheのデフォルトページが残っていたりして気持ち悪いので消しておきましょう。
そしてOSごと再起動をおすすめします。

root@host1:~# rm /var/www/html/index.html
root@host1X:~# shutdown -r now

これでブラウザから設定したドメインかIPアドレスにアクセスすればFreePBXの画面がでるかと思いますが、
結構ダッシュボード上にエラーや警告が出るのでスクリプトで綺麗に完璧とはいかないようですが、
個別にそこだけ修正、変更すればよいのでまあまあ楽ですね!

ぜひお試しになってみてください!

当社ではFreePBXの構築サービスなんかもやっておりますのでお気軽にご相談ください。

腰袋

本日はとある六本木にあるオフィスのレイアウト変更現場です。
オフィスのレイアウト変更に伴ってキャビネットとフリーアドレスのデスクを分解、再組み立てして欲しいとのことで作業にきました。

なので腰袋はいつものITエンジニア仕様とは異なり家具類の組み立てに特化してたバージョンです。

これ腰袋が薄めなので狭いところでも通りやすくビットが複数本収納して取り出しやすいので気に入ってます。

こんな感じで私は作業に応じた腰袋を用意する派です。