我正在使用 SoftEther VPN 客户端连接到远程计算机。为了通过 ssh 进入远程计算机,我首先必须执行以下步骤:
cd ~/vpnclient
sudo ./vpnclient start
./vpncmd
2 (asked to pick an option)
Enter "" (with no input)
accountconnect
<my_name_1>
exit
sudo dhclient <my_name_2>
之后,我就可以 ssh 了。但每次重启时我都必须这样做。
我确信一定有一种方法可以自动完成所有这些操作,但我不知道从哪里开始。我可以编写一个 shell 脚本来执行此操作吗,即使它运行一个程序然后在程序中输入内容?或者我应该使用 Python 来执行此操作?
任何帮助都将非常有帮助。
答案1
如果你以 root 身份运行 Linux,你应该能够添加如下命令
cd /home/username/vpnclient
./vpnclient start
到 /etc/rc.local(如果存在,则在“exit 1”语句之前)。理论上,您只需运行一次 vpncmd 即可设置您的帐户,然后它会将该配置保存在 vpn_client 配置中。
也就是说,如果你确实需要输入这个 vpncmd,你可以用 bash 来执行此操作,例如将以下几行添加到 bash 脚本(或 rc.local)中 -
(
echo "2"
echo ""
echo "accountconnect"
echo <my_name_1>
echo "exit" ) | ./vpncmd
dhclient <my_name_2>
(由于您是 root 用户,因此不需要 Sudo)。
答案2
命令: ./vpncmd vpnclient> AccountStartupSet
即使在重启系统后,它也会连接你的账户。你可以使用 /etc/network/interfaces 文件来自动化你的 dhclient
答案3
当我遇到同样的请求时,Google 给了我这个表单。然后我找到了一个最好的方法:#vpncmd 2(要求选择一个选项)输入“”(不输入任何内容)AccountStartupSet <you_name> exit
下次只需运行:vpnclient start