openvpnスクリプトにユーザーとパスワードを自動的に追加する

openvpnスクリプトにユーザーとパスワードを自動的に追加する

VPN接続を作成できるジョブスクリプトがあります。次のようになります。

openvpn --config VPNBook.com-OpenVPN-Euro1/vpnbook-euro1-tcp443.ovpn

すべてが問題ありませんが、このスクリプトを実行するたびに公開されているVPNとパスワードを入力する必要があります。 (心配しないでください。私は無料のVPNを使用して銀行業務や重要なことをしません。これは学習のためです。)

そのウェブサイトで一般公開されているユーザー名とパスワードは次のとおりです。

Username: vpnbook

Password: he2qv5h

起動すると、スクリプトはユーザー名とパスワードを入力するように求められます。今すぐコピーして貼り付ける必要があります。

Tue Aug 15 11:54:51 2017 library versions: OpenSSL 1.0.2l  25 May 2017, LZO 2.08
Enter Auth Username: vpnbook
Enter Auth Password: 

スクリプトに値自体を入力させる方法はありますか?

エコーを試しましたが、簡単ではありません。

それとも、ファイルのどこかでコマンド自体を編集する必要がありますか?それでは、誰かが私にこれを行う正しい方向を教えてもらえますか?

答え1

2つのオプションがあります。 1つはプレーンテキストのユーザー名とパスワード(推奨されていません)を含むファイルを使用すること、もう1つは証明書認証を使用することです。

ファイルでユーザー名とパスワードを使用するには、最初の行にユーザー名を含め、2行目にパスワードを含むJesse_bの推奨に従って--auth-user-pass <file>whereを使用してください(community.openvpn.net/openvpn/wiki/Openvpn23ManPage)。<file>

しかし、私はこれが悪い習慣だと思います(本当に!!!!!!!!)。証明書認証を実行して、第三者が証明書を検索しても少なくとも変更されないようにすることをお勧めします。ルートパスワードを持たないユーザーパスワードなど、特にルートパスワードがあり、sudoユーザーがsudoersリストにある場合など。

読む:https://openvpn.net/community-resources/how-to/#setting-up-your-own-certificate-authority-ca-and-generate-certificates-and-keys-for-an-openvpn-server-and - 複数のクライアント

次の情報を送信する必要があります。

init config

次に、PKIを初期化します。 Linux/BSD/Unix の場合:

. ./vars
./clean-all
./build-ca

Windowsの場合:

vars
clean-all
build-ca

上記の手順では、ほとんどのクエリパラメータはvarsまたはvars.batファイルに設定された値にデフォルト設定されています。明示的に入力する必要がある唯一のパラメータは一般名です。

次に、サーバーの証明書と秘密鍵を生成します。 Linux/BSD/Unix の場合:

./build-key-server server

Windowsの場合:

build-key-server server

クライアント証明書の生成は前のステップと非常に似ています。 Linux/BSD/Unix の場合:

./build-key client1
./build-key client2
./build-key client3

Windowsの場合:

build-key client1
build-key client2
build-key client3

各クライアントに対してメッセージが表示されたら、適切な一般名(「client1」、「client2」、または「client3」など)を入力する必要があります。常に各顧客に一意の一般名を使用してください。

これは、プレーンテキストのユーザー名とパスワードを使用するよりも簡単で安全です。私を信じてください!

関連情報