web-dev-qa-db-ja.com

クライアントVPN接続が成功した後、ネットワーク共有をマップするにはどうすればよいですか?

私は最近、職場の一部の「ロードウォリアー」にVPN機能を提供する任務を負っています。 CentOS 5.4Linuxサーバーを実行しています。 VPNサーバーとしてOpenVPNを選択し、いくつかのWindows XPおよび7つのクライアントを正常に展開してテストしました。したがって、ネットワーク共有を手動でマッピングできました。この時点で、すべての接続成功し、安定しています。

私が目指しているのは、VPNトンネルが正常にセットアップされると、ネットワーク共有を作成するバッチファイルを自動的に実行できるようにすることです。どうすればよいですか?

OpenVPNのマニュアルページ からupまたはroute-upコマンドについて少し読みましたが、バッチファイルの呼び出し方法がわからないようです。どんな援助も役に立ちます。

1
Kismet Agbasi

共有名が常に同じである場合は、OS内で常にそれらをマップでき、ユーザーがVPNに接続するまで、共有は切断された状態になります。これが私たちのやり方であり、うまく機能します。

マニュアルページを見ると、これがコマンドラインで必要なものだと思います

--up c:\script.bat

以下はセクションです

--up cmd
Shell command to run after successful TUN/TAP device open (pre --user UID change). The up script is useful for specifying route commands which route IP traffic destined for private subnets which exist at the other end of the VPN connection into the tunnel.
For --dev tun execute as:

cmd tun_dev tun_mtu link_mtu ifconfig_local_ip ifconfig_remote_ip [ init | restart ]

For --dev tap execute as:

cmd tap_dev tap_mtu link_mtu ifconfig_local_ip ifconfig_netmask [ init | restart ]

See the "Environmental Variables" section below for additional parameters passed as environmental variables.

Note that cmd can be a Shell command with multiple arguments, in which case all OpenVPN-generated arguments will be appended to cmd to build a command line which will be passed to the Shell.

Typically, cmd will run a script to add routes to the tunnel.

Normally the up script is called after the TUN/TAP device is opened. In this context, the last command line parameter passed to the script will be init. If the --up-restart option is also used, the up script will be called for restarts as well. A restart is considered to be a partial reinitialization of OpenVPN where the TUN/TAP instance is preserved (the --persist-tun option will enable such preservation). A restart can be generated by a SIGUSR1 signal, a --ping-restart timeout, or a connection reset when the TCP protocol is enabled with the --proto option. If a restart occurs, and --up-restart has been specified, the up script will be called with restart as the last parameter.

The following standalone example shows how the --up script can be called in both an initialization and restart context. (NOTE: for security reasons, don't run the following example unless UDP port 9999 is blocked by your firewall. Also, the example will run indefinitely, so you should abort with control-c).

openvpn --dev tun --port 9999 --verb 4 --ping-restart 10 --up 'echo up' --down 'echo down' --persist-tun --up-restart

Note that OpenVPN also provides the --ifconfig option to automatically ifconfig the TUN device, eliminating the need to define an --up script, unless you also want to configure routes in the --up script.

If --ifconfig is also specified, OpenVPN will pass the ifconfig local and remote endpoints on the command line to the --up script so that they can be used to configure routes such as:

route add -net 10.0.0.0 netmask 255.255.255.0 gw $5

次に、マップされたドライブを削除するためのダウン用の1つ

1
Epaphus