私のDebianコンピュータが起動したときにOpenVPNを実行したいと思います。これにより、サーバーログインとパスワードも自動的に入力されます。 SSHを介して起動し、tuxから切り離して継続的に実行する必要がありましたが、すべての面倒をなくしたいと思います。
以下は、実行に必要なコマンドと情報を理解するためにSSHログを貼り付けたものです。
/etc/openvpn$ sudo openvpn server.vpn.com.tcp443.ovpn
Tue Aug 15 18:54:42 2017 OpenVPN 2.3.4 arm-unknown-linux-gnueabihf [SSL (OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] built on Jun 26 2017
Tue Aug 15 18:54:42 2017 library versions: OpenSSL 1.0.1t 3 May 2016, LZO 2.08
Enter Auth Username: ******************
Enter Auth Password: ********
どんな助けでも大変感謝します。
答え1
パスワードの代わりに公開鍵を使用するように設定を変更できます。例については、以下を参照してください。OpenVPNユーザーガイド。
現在の設定を維持するには、の説明に従って--auth-user-pass [up]
オプションを使用して、ファイルにユーザー名とパスワードを入力できます。文書:
--auth-ユーザーパスワード[up]
ユーザー名/パスワードを使用してサーバーに認証します。 upは、ユーザー名/パスワードの2行を含むファイルです(注:OpenVPNのみがそのファイルからパスワードを読みます。H)。
upを省略すると、コンソールにユーザー名/パスワードの入力を求められます。
サーバー構成では、クライアントが提供したユーザー名/パスワードを確認するために--auth-user-pass-verifyスクリプトを指定する必要があります。
システムでsystemdを実行している場合は、OpenVPNインスタンスを起動する必要があります(root / sudoを使用)。に設定ファイルを保存する必要があります。systemctl start [email protected]
/etc/openvpn/NAME.conf
答え2
wanted by
SystemDを含むDebianで実行している場合は、起動時にサービスが開始されるように、ターゲットのパラメータを使用して新しいサービスを定義する必要があります。 SystemVを使用している場合/etc/rc.d/rc.local
。
systemD の場合、まずシステムサービスをコピーして新しいサービスを構成するテンプレートがあります。
$ cp /usr/lib/systemd/system/ssh.service /etc/system/systemd/myservice.service
$ vim /etc/systemd/system/myservice.service
次に、openvpnスクリプトを使用してパラメータを更新する必要があります(openvpnスクリプトは、ユーザーのパスワードをファイルに入力するのと同じExecStart
くらい簡単です)。cat user-pass-file | openvpn config.ovp
また、WantedBy=graphical.target
グラフィックターゲットでサービスを開始する機能を追加します。次に、次のコマンドを挿入してサービスを開始してアクティブにします。
$ systemctl enable myservice.service
$ systemctl start myservice.service