Настройка более мягкого VPN-клиента
Я загрузил более мягкий vpn-клиент для своего xubuntu 14.04 (32 бит), но после этого я не могу продолжить.
И у них также нет руководства по установке для vpnclient (они есть для сервера).
Поэтому, пожалуйста, объясните мне, как успешно настроить более мягкий vpnclient?
Спасибо.
2 ответа
Как настроить VPN-клиент Softehter под Linux: через vpngate.net
Процедура настройки клиента под Linux
- Скачать VPN-клиент с сайта softether.org
- Моя платформа - Debian 7 X64
- скомпилируйте vpn-клиент на вашей платформе в несжатом каталоге vpn-клиента
- просто наберите "make" и примите все лицензионные соглашения, и вы должны быть в порядке
- запустить службу vpnclient от имени пользователя root
sudo ./vpnclient start
- подключитесь к локальному vpnclient с помощью "vpncmd" (обычный пользовательский режим, не требуются права суперпользователя "), создайте локальный виртуальный сетевой адаптер.
vpncmd
VPN Client>remoteenable
RemoteEnable command - Allow Remote Management of VPN Client Service
The command completed successfully.
VPN Client>niccreate
NicCreate command - Create New Virtual Network Adapter
Virtual Network Adapter Name: se
The command completed successfully.
VPN Client>niclist
NicList command - Get List of Virtual Network Adapters
Item |Value
----------------------------+-----------------------------------
Virtual Network Adapter Name|se
Status |Enabled
MAC Address |00ACDD071970
Version |Version 2.00 Build 9387 (English)
The command completed successfully.
зайдите на "vpngate.net", найдите подходящий сервер vpn
Настройте учетную запись vpn в vpncmd.
Я экспортирую файл конфигурации учетной записи vpn ниже, вы можете настроить его для своих нужд.
VPN Client>accountimport
AccountImport command - Import VPN Connection Setting
Import Source File Name: /home/luke/japan0.vpn
The VPN Connection Setting "japan0" was imported.
The command completed successfully.
VPN Client>accountget japan0
AccountGet command - Get Setting of VPN Connection Setting
Item |Value
-----------------------------------------------------+------------------------
VPN Connection Setting Name |japan0
Destination VPN Server Host Name |222.228.120.128
Destination VPN Server Port Number |1950
Destination VPN Server Virtual Hub Name |vpngate
Proxy Server Type |Direct TCP/IP Connection
Verify Server Certificate |Disable
Device Name Used for Connection |se
Authentication Type |Anonymous Authentication
User Name |vpn
Number of TCP Connections to Use in VPN Communication|1
Interval between Establishing Each TCP Connection |1
Connection Life of Each TCP Connection |Infinite
Use Half Duplex Mode |Disable
Encryption by SSL |Enable
Data Compression |Disable
Connect by Bridge / Router Mode |Disable
Connect by Monitoring Mode |Disable
No Adjustment for Routing Table |Disable
Do not Use QoS Control Function |Disable
The command completed successfully.
VPN Client>accountlist
AccountList command - Get List of VPN Connection Settings
Item |Value
----------------------------+-----------------------------------------------
VPN Connection Setting Name |japan0
Status |Offline
VPN Server Hostname |222.228.120.128:1950 (Direct TCP/IP Connection)
Virtual Hub |vpngate
Virtual Network Adapter Name|se
The command completed successfully.
VPN Client>accountconnect japan0
AccountConnect command - Start Connection to VPN Server using VPN Connection Setting
The command completed successfully.
VPN Client>accountlist
AccountList command - Get List of VPN Connection Settings
Item |Value
----------------------------+-----------------------------------------------
VPN Connection Setting Name |japan0
Status |Connected
VPN Server Hostname |222.228.120.128:1950 (Direct TCP/IP Connection)
Virtual Hub |vpngate
Virtual Network Adapter Name|se
The command completed successfully.
файл экспорта учетной записи "/home/luke/japan0.vpn":
# VPN Client VPN Connection Setting File
#
# This file is exported using the VPN Client Manager.
# The contents of this file can be edited using a text editor.
#
# When this file is imported to the Client Connection Manager
# it can be used immediately.
declare root
{
bool CheckServerCert false
uint64 CreateDateTime 0
uint64 LastConnectDateTime 0
bool StartupAccount false
uint64 UpdateDateTime 0
declare ClientAuth
{
uint AuthType 0
string Username vpn
}
declare ClientOption
{
string AccountName japan0
uint AdditionalConnectionInterval 1
uint ConnectionDisconnectSpan 0
string DeviceName se
bool DisableQoS false
bool HalfConnection false
bool HideNicInfoWindow false
bool HideStatusWindow false
string Hostname 222.228.120.128
string HubName vpngate
uint MaxConnection 1
bool NoRoutingTracking false
bool NoTls1 false
bool NoUdpAcceleration false
uint NumRetry 4294967295
uint Port 1950
uint PortUDP 0
string ProxyName $
byte ProxyPassword $
uint ProxyPort 0
uint ProxyType 0
string ProxyUsername $
bool RequireBridgeRoutingMode false
bool RequireMonitorMode false
uint RetryInterval 15
bool UseCompress false
bool UseEncrypt true
}
}
- Теперь учетная запись vpn подключена. В Linux таблица маршрутизации не изменяется автоматически, как в Windows. Нам нужно вручную настроить информацию о маршрутизации, чтобы заставить работать SoftEther VPN.
- Ключевой момент здесь: DHCP виртуальный сетевой адаптер для получения виртуального IP-адреса от VPN-сервера; добавьте маршрут к серверу VPN через исходный обычный шлюз и измените маршрут по умолчанию, чтобы использовать VPN NIC и шлюз VPN (виртуальный адрес).
Перед настройкой таблицы маршрутизации включите ip forward в "/etc/sysctl.conf"
net.ipv4.ip_forward=1
и загрузите его:
sysctl -p
Теперь мы собираемся изменить таблицу маршрутизации.
luke@luke-debian:~$ ip addr show vpn_se
10: vpn_se: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 500
link/ether 00:ac:dd:07:19:70 brd ff:ff:ff:ff:ff:ff
inet6 fe80::2ac:ddff:fe07:1970/64 scope link
valid_lft forever preferred_lft forever
luke@luke-debian:~$ sudo dhclient vpn_se
luke@luke-debian:~$ ip addr show vpn_se
10: vpn_se: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 500
link/ether 00:ac:dd:07:19:70 brd ff:ff:ff:ff:ff:ff
inet 10.211.1.63/16 brd 10.211.255.255 scope global vpn_se
inet6 fe80::2ac:ddff:fe07:1970/64 scope link
valid_lft forever preferred_lft forever
luke@luke-debian:~$ ip neigh
192.168.100.1 dev wlan0 lladdr 00:1c:f0:4d:a0:a8 REACHABLE
10.211.254.254 dev vpn_se lladdr 00:ac:50:16:c8:27 REACHABLE
172.31.224.99 dev vpn_se lladdr 00:ae:df:62:34:d9 STALE
После процесса dhcp vpn_se получает виртуальный IP-адрес "inet 10.211.1.63/16" от сервера vpn, и из "ip lie" видно, что виртуальный IP-адрес сервера vpn равен "10.211.254.254".
Теперь мы собираемся добавить два маршрута, чтобы облегчить весь трафик через новый create VPN. Мой ноутбук подключен к маршрутизатору 192.168.100.1 через беспроводную сеть "wlan0".
$ ip route
default via 192.168.100.1 dev wlan0
10.211.0.0/16 dev vpn_se proto kernel scope link src 10.211.1.63
169.254.0.0/16 dev wlan0 scope link metric 1000
172.16.125.0/24 dev vmnet1 proto kernel scope link src 172.16.125.1
192.168.86.0/24 dev vmnet8 proto kernel scope link src 192.168.86.1
192.168.100.0/24 dev wlan0 proto kernel scope link src 192.168.100.101
$ sudo ip route add 222.228.120.128/32 via 192.168.100.1 dev wlan0
$ sudo ip route del default
$ sudo ip route add default via 10.211.254.254 dev vpn_se
$ ip route show
default via 10.211.254.254 dev vpn_se
10.211.0.0/16 dev vpn_se proto kernel scope link src 10.211.1.63
192.168.100.0/24 dev wlan0 proto kernel scope link src 192.168.100.101
222.228.120.128 via 192.168.100.1 dev wlan0
luke@luke-debian:~$ ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_req=1 ttl=47 time=263 ms
64 bytes from 8.8.8.8: icmp_req=2 ttl=47 time=270 ms
^C
--- 8.8.8.8 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 263.462/266.788/270.114/3.326 ms
$ ping youtube.com
PING youtube.com (74.125.235.201) 56(84) bytes of data.
64 bytes from kix01s01-in-f9.1e100.net (74.125.235.201): icmp_req=1 ttl=55 time=209 ms
64 bytes from kix01s01-in-f9.1e100.net (74.125.235.201): icmp_req=2 ttl=55 time=214 ms
64 bytes from kix01s01-in-f9.1e100.net (74.125.235.201): icmp_req=3 ttl=55 time=253 ms
64 bytes from kix01s01-in-f9.1e100.net (74.125.235.201): icmp_req=4 ttl=55 time=207 ms
luke@luke-debian:~$ traceroute 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 60 byte packets
1 * * *
2 * * *
3 * * *
4 * * *
5 * * *
6 *^C
После того, как маршрут настроен правильно, мы видим, что маршрутизация по умолчанию была направлена на VPN-туннель. Мы можем подтвердить это по выводу "traceroute", поскольку все прыжки больше не могут отображаться.
Скрипт Bash сэкономит много печатать.
$ cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
auto-hotplug vpn_se
iface vpn_se inet dhcp
$ cat route.sh
#!/bin/bash
if [ "x$2" == "x" ];
then
echo "vpn server ip missing! ./route.sh add/del vpn_server_ip "
else
case "$1" in
add)
# restore default route to home network
ip route delete default
ip route add default via 192.168.100.1 dev wlan0
# obtain ip address for vpn_se
ifdown vpn_se
ifup vpn_se
# add route to vpn server
ip route add $2/32 via 192.168.100.1 dev wlan0
ip route delete default
ip route add default via 10.211.254.254 dev vpn_se
;;
del)
ip route del $2/32
ip route del default
ip route add default via 192.168.100.1 dev wlan0
ifdown vpn_se
;;
esac
fi
Даже я столкнулся с той же проблемой, но следующий шаг за шагом по этой ссылке сделал мой день. Внутри файла.vpn необходимо внести небольшие изменения, такие как информация о вашей учетной записи и удаленный сервер, на который вы хотите направлять трафик от и до. Выберите из множества удаленных серверов и создайте учетную запись, посетив эту страницу. Добавление моей пользовательской конфигурации сервера для пояснения ради.
declare root
{
bool CheckServerCert false
uint64 CreateDateTime 0
uint64 LastConnectDateTime 0
bool StartupAccount false
uint64 UpdateDateTime 0
declare ClientAuth
{
uint AuthType 1
string Username fastssh.com-server-sp
}
declare ClientOption
{
string AccountName se-singapore
uint AdditionalConnectionInterval 1
uint ConnectionDisconnectSpan 0
string DeviceName se
bool DisableQoS false
bool HalfConnection false
bool HideNicInfoWindow false
bool HideStatusWindow false
string Hostname se-singapore.serverip.co
string HubName FastSSH
uint MaxConnection 1
bool NoRoutingTracking false
bool NoTls1 false
bool NoUdpAcceleration false
uint NumRetry 4294967295
uint Port 443
uint PortUDP 0
string ProxyName $
byte ProxyPassword $
uint ProxyPort 0
uint ProxyType 0
string ProxyUsername $
bool RequireBridgeRoutingMode false
bool RequireMonitorMode false
uint RetryInterval 15
bool UseCompress false
bool UseEncrypt true
}
}
Надеюсь это поможет!!