コミュニティ

OpenVpnのsystemdユニットファイル

OpenVpnをインストールするとsystemdファイルが、3つ配置される。

それぞれのファイルの内容ついて記載する。

openvpn@.service

/etc/openvpn/配下のconfファイルをロードして、実行する。

現在は非推奨となっている。

  ExecStart=/usr/sbin/openvpn --cd /etc/openvpn/ --config %i.conf
  • 実行形式
systemctl start openvpn@server.service

openvpn-server@.service

/etc/openvpn/server配下のconfファイルをロードして、実行する。

WorkingDirectory=/etc/openvpn/server
ExecStart=/usr/sbin/openvpn --status %t/openvpn-server/status-%i.log --status-version 2 --suppress-timestamps --config %i.conf
  • 実行形式
systemctl start openvpn-server@server.service

openvpn-client@.service

/etc/openvpn/clientにあるconfファイルをロードして、openvpnを起動する

WorkingDirectory=/etc/openvpn/client
ExecStart=/usr/sbin/openvpn --suppress-timestamps --nobind --config %i.conf
  • 実行形式
systemctl start openvpn-client@client.service

アットマークについて

各ユニットファイルに@がついてる。

@がついたユニットファイルはsystemctlの実行時に@の後ろに文字列を指定すると、ユニットファイルに定義した%iを@の後ろに設定した文字列で置換できる。

# 下記を実行すると
systemctl start openvpn-server@server.service

# %iがserverに設定される
ExecStart=/usr/sbin/openvpn --status %t/openvpn-server/status-%i.log --status-version 2 --suppress-timestamps --config %i.conf

参考

https://community.openvpn.net/openvpn/wiki/Systemd

11ohina017
ユーザー登録して、Qiitaをもっと便利に使ってみませんか。
  1. あなたにマッチした記事をお届けします
    ユーザーやタグをフォローすることで、あなたが興味を持つ技術分野の情報をまとめてキャッチアップできます
  2. 便利な情報をあとで効率的に読み返せます
    気に入った記事を「ストック」することで、あとからすぐに検索できます
ユーザーは見つかりませんでした