nhận openconnect vpn để làm việc thông qua quản lý mạng


9

đây là vấn đề tương tự như ở đây: Bắt openconnect vpn hoạt động thông qua gui , nhưng những bổ sung của tôi cho nó đã bị xóa và tôi được yêu cầu tạo một câu hỏi mới.

thực tế, có một số người hỏi những câu hỏi tương tự ở đây, tất cả đều có 0 câu trả lời.

phiên bản phần mềm: Ubuntu 14.04, openconnect 5.0

vấn đề chính: tôi đang cố gắng thêm kết nối vpn vào trình quản lý mạng, sử dụng openconnect. Khi tôi cung cấp tên người dùng và mật khẩu vpn của mình, nó sẽ kết nối thành công, nhưng tôi không thể giải quyết dns.

nếu tôi chạy openconnect trong thiết bị đầu cuối thông qua sudo, dns hoạt động.

sudo openconnect -u <username> https://<vpn concentrator name>

biết thêm chi tiết:

1a. khi kết nối qua openconnect và trình quản lý mạng mặc dù tôi đã thêm rõ ràng dns và miền tìm kiếm trong tab ipv4, chỉ có miền tìm kiếm kết thúc bằng /etc/resolv.conf. ngay cả khi tôi không cung cấp tên miền dns và tìm kiếm, tôi có thể thấy trong nhật ký rằng nó nhận được thông tin đó từ bộ tập trung vpn. một lần nữa, miền tìm kiếm được cập nhật đúng. [đăng nhập bên dưới]

1b. khi kết nối qua sudo trên thiết bị đầu cuối, độ phân giải được xác định đúng với dns và miền tìm kiếm mặc dù tôi chưa thêm thông tin đó trong dòng lệnh hoặc cung cấp đường dẫn đến tập lệnh vpnc. nó phải được lấy từ bộ tập trung vpn. [đăng nhập bên dưới]

2a. khi kết nối qua openconnect và trình quản lý mạng, giao diện mới 'vpn0' được tạo.

2b. khi kết nối qua sudo và dòng lệnh, giao diện mới 'tun0' được tạo.

đăng nhập khi kết nối qua trình quản lý mạng:

NetworkManager[784]: <info> Starting VPN service 'openconnect'...
NetworkManager[784]: <info> VPN service 'openconnect' started (org.freedesktop.NetworkManager.openconnect), PID 4513
NetworkManager[784]: <info> VPN service 'openconnect' appeared; activating connections
NetworkManager[784]: <info> VPN plugin state changed: init (1)

đây là nơi nó hỏi mật khẩu của tôi

NetworkManager[784]: <info> VPN plugin state changed: starting (3)
NetworkManager[784]:    SCPlugin-Ifupdown: devices added (path: /sys/devices/virtual/net/vpn0, iface: vpn0)
NetworkManager[784]:    SCPlugin-Ifupdown: device added (path: /sys/devices/virtual/net/vpn0, iface: vpn0): no ifupdown configuration found.
NetworkManager[784]: <warn> /sys/devices/virtual/net/vpn0: couldn't determine device driver; ignoring...
NetworkManager[784]: <info> VPN connection '<connection name>' (Connect) reply received.
openconnect[4544]: Attempting to connect to server <ip address>:443
openconnect[4544]: SSL negotiation with <correctly identified vpn server>
openconnect[4544]: Connected to HTTPS on <correctly identified vpn server>
openconnect[4544]: Got CONNECT response: HTTP/1.1 200 OK
openconnect[4544]: CSTP connected. DPD 30, Keepalive 20
NetworkManager[784]: <info> VPN connection '<connection name>' (IP Config Get) reply received.
NetworkManager[784]: <info> VPN connection '<connection name>' (IP4 Config Get) reply received.
NetworkManager[784]: <info> VPN connection '<connection name>' (IP6 Config Get) reply received.
NetworkManager[784]: <info> VPN Gateway: <ip address>
NetworkManager[784]: <info> Tunnel Device: vpn0
NetworkManager[784]: <info> IPv4 configuration:
NetworkManager[784]: <info>   Internal Address: 10.xxx.xxx.xxx
NetworkManager[784]: <info>   Internal Prefix: 19
NetworkManager[784]: <info>   Internal Point-to-Point Address: 10.xxx.xxx.xxx
NetworkManager[784]: <info>   Maximum Segment Size (MSS): 0
NetworkManager[784]: <info>   Forbid Default Route: no
NetworkManager[784]: <info>   Internal DNS: <ip address>
NetworkManager[784]: <info>   Internal DNS: <ip address>
NetworkManager[784]: <info>   DNS Domain: '(none)'
NetworkManager[784]: <info> IPv6 configuration:
NetworkManager[784]: <info>   Internal Address: <ipv6 ip>
NetworkManager[784]: <info>   Internal Prefix: 64
NetworkManager[784]: <info>   Internal Point-to-Point Address: <ipv6 ip>
NetworkManager[784]: <info>   Maximum Segment Size (MSS): 0
NetworkManager[784]: <info>   Forbid Default Route: no
NetworkManager[784]: <info>   DNS Domain: '(none)'
openconnect[4544]: Connected vpn0 as <ip address> + <ipv6 ip>, using SSL
openconnect[4544]: Established DTLS connection (using OpenSSL)
NetworkManager[784]: <info> VPN connection '<connection name>' (IP Config Get) complete.
NetworkManager[784]: <info> Policy set '<connection name>' (vpn0) as default for IPv4 routing and DNS.
NetworkManager[784]: <info> Policy set '<connection name>' (vpn0) as default for IPv6 routing and DNS.
NetworkManager[784]: <info> Writing DNS information to /sbin/resolvconf
dnsmasq[1027]: setting upstream servers from DBus
dnsmasq[1027]: using nameserver 127.0.0.1#53 for domain 10.in-addr.arpa
dnsmasq[1027]: using nameserver 127.0.0.1#53 for domain <home search domain>
dnsmasq[1027]: using nameserver 127.0.0.1#53 for domain <vpn search domain>
dnsmasq[1027]: using nameserver <ip address>#53 for domain 10.in-addr.arpa
dnsmasq[1027]: using nameserver <ip address>#53 for domain <home search domain>
dnsmasq[1027]: using nameserver <ip address>#53 for domain <vpn search domain>
dnsmasq[1027]: using nameserver <ip address>#53 for domain 10.in-addr.arpa
dnsmasq[1027]: using nameserver <ip address>#53 for domain <home search domain>
dnsmasq[1027]: using nameserver <ip address>#53 for domain <vpn search domain>
dbus[471]: [system] Activating service name='org.freedesktop.nm_dispatcher' (using servicehelper)
NetworkManager[784]: <info> VPN plugin state changed: started (4)
NetworkManager[784]:    keyfile: updating /etc/NetworkManager/system-connections/<connection name>-6a503043-13b0-4ce7-9749-29cd3054cae3
dbus[471]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'

mặc dù tất cả các tạp âm trong nhật ký về việc cập nhật độ phân giải. Nó sẽ loại bỏ các máy chủ tên nhưng không thay thế chúng bằng các địa chỉ IP trong nhật ký. nó cập nhật miền tìm kiếm chính xác, do đó có thể không phải là vấn đề về quyền.

đăng nhập khi kết nối bằng sudo openconnect trong terminal:

NetworkManager[784]:    SCPlugin-Ifupdown: devices added (path: /sys/devices/virtual/net/tun0, iface: tun0)
NetworkManager[784]:    SCPlugin-Ifupdown: device added (path: /sys/devices/virtual/net/tun0, iface: tun0): no ifupdown configuration found.
NetworkManager[784]: <warn> /sys/devices/virtual/net/tun0: couldn't determine device driver; ignoring...
dbus[471]: [system] Activating service name='org.freedesktop.hostname1' (using servicehelper)
kernel: [ 3258.725774] systemd-hostnamed[4927]: Warning: nss-myhostname is not installed. Changing the local hostname might make it unresolveable. Please install nss-myhostname!
dbus[471]: [system] Successfully activated service 'org.freedesktop.hostname1'

không có gì về việc cập nhật độ phân giải, và nó cập nhật đúng các máy chủ tên và miền tìm kiếm.

cập nhật nếu tôi bỏ qua tất cả các cảnh báo trong độ phân giải và thêm các máy chủ tên tập trung vpn vào nó, tôi có thể duyệt ngay lập tức. Tất nhiên ngay khi tôi ngắt kết nối, những thay đổi đó sẽ bị ghi đè.

có một lỗi về điều này , trở lại vào năm 2012, nhưng nó đã hết hạn. vấn đề dường như là kịch bản vpnc.

tôi đã thử cập nhật thủ công các tập lệnh vpnc của mình lên các phiên bản mới nhất nhưng không có kết quả.

Một số nghiên cứu tiếp theo cho thấy rằng vào ngày 12.04 Nghị quyết không còn là nơi các máy chủ tên đi đến độ phân giải dns khi sử dụng trình quản lý mạng. đó là lý do tại sao nó hoạt động khi tôi sử dụng dòng lệnh, nhưng không phải khi sử dụng trình quản lý mạng. thay vào đó, máy chủ tên 127.0.1.1 [dnsmasq] được thêm vào và máy chủ tên đó được cho biết địa chỉ IP của máy chủ tên thực tế.

Ưu điểm lớn là nếu bạn kết nối với VPN, thay vì có tất cả lưu lượng DNS của bạn được chuyển qua VPN như trước đây, thay vào đó, bạn sẽ chỉ gửi các truy vấn DNS liên quan đến mạng con và các miền được VPN thông báo

cập nhật vô hiệu hóa dnsmasq như được giải thích trong liên kết ở trên giải quyết vấn đề vì /etc/resolv.conf được điền.

đây không phải là một giải pháp thực sự mặc dù nó là một dự phòng.


Tại sao NetworkManager liệt kê 127.0.0.1 ngoài hai địa chỉ IP được xử lý lại khác? Máy chủ tên nào đang chạy cục bộ và nghe ở 127.0.0.1 và có thể phân giải tên VPN?
jdthood

Tôi nghĩ rằng đó chỉ là cho bộ nhớ đệm dns. nó không phải là một máy chủ tên "thực".
zee

Địa chỉ 127.0.0.1 được liệt kê dưới dạng địa chỉ máy chủ tên mà NetworkManager có được. NetworkManager chuyển địa chỉ này đến dnsmasq để sử dụng làm địa chỉ chuyển tiếp. Dnsmasq sẽ cố gắng chuyển tiếp các truy vấn đến địa chỉ này là địa chỉ loopback. Có thực sự có một máy chủ tên chạy trên máy cục bộ lắng nghe các truy vấn tại địa chỉ đó không? Và thậm chí nếu vậy, tại sao NetworkManager báo cáo địa chỉ trong khi bắt đầu VPN? Theo tôi thì dường như máy chủ VPN của bạn bị định cấu hình sai để cung cấp 127.0.0.1 làm địa chỉ máy chủ tên trên VPN.
jdthood

Thật thú vị khi tôi đã thử kết nối của mình sáng nay, dòng đó đã biến mất, vì vậy nó chỉ là máy chủ 2 dns từ bộ tập trung.
zee

Và bây giờ bạn có thể giải quyết tên Internet? Tên VPN? Tên địa phương? Vui lòng gửi nội dung thực tế của độ phân giải mà bạn nói không được cập nhật đúng. Bạn có biết rằng Trình quản lý mạng theo mặc định chạy một máy chủ tên chuyển tiếp - một phiên bản của dnsmasq - lắng nghe ở 127.0.1.1 và chuyển tiếp các truy vấn đến máy chủ tên tại các địa chỉ được cung cấp bởi NetworkManager qua DBus? Khi máy chủ tên chuyển tiếp này được sử dụng, chỉ có địa chỉ nghe của nó được liệt kê trên một nameserverdòng trong /etc/resolv.conf, bất kể có bao nhiêu máy chủ tên được chuyển tiếp đang sử dụng.
jdthood

Câu trả lời:


0

Kiểm tra xem có sự không phù hợp giữa máy chủ mà bạn đang cố gắng giải quyết thông qua VPN và "Tên miền DNS" mà máy chủ VPN của Cisco đang gửi không.

Để kiểm tra điều này, hãy mở một thiết bị đầu cuối và chạy:

tail -f /var/log/syslog

Sau đó bắt đầu openconnect thông qua quản lý mạng. Bạn sẽ thấy một loạt các đầu ra đi qua, bao gồm một số dòng như thế này:

Ngày 5 tháng 12 12:54:31 Canoe NetworkManager [1266]: DNS nội bộ: 10.0.20.21

Ngày 5 tháng 12 12:54:31 ca nô NetworkManager [1266]: DNS nội bộ: 10.10.3.32

Ngày 5 tháng 12 12:54:31 ca nô NetworkManager [1266]: Tên miền DNS: 'Internal.example.com'

Và xa hơn nữa bạn sẽ thấy

Ngày 5 tháng 12 12:54:31 canoe dnsmasq [1871]: sử dụng máy chủ tên 10.0.20.21 # 53 cho tên miền Internal.example.com

Điều này có nghĩa là máy chủ VPN đang hướng dẫn khách hàng rằng các máy chủ DNS nên được sử dụng để giải quyết các máy chủ bên trong internal.example.com, chẳng hạn như server.internal.example.com.

Trong trường hợp của tôi, tôi cần phải giải quyết server.example.com(và không nhận được bất kỳ kết quả nào).

Giải pháp cho tôi là đi vào cài đặt VPN và thêm example.comdưới dạng miền tìm kiếm bổ sung:

nhập mô tả hình ảnh ở đây

Đừng quên ngắt kết nối VPN và sau đó kết nối lại để cài đặt có hiệu lực.


0

Vì vậy, tôi đã giải quyết điều này cho bản thân mình đủ thỏa đáng. Tôi đang dùng Mint 18 / Ubuntu 16.04

Vấn đề của tôi là một khi tôi đã kết nối với Openconnect VPN thông qua NetworkManager, tôi không còn có thể giải quyết DNS cho các tên miền bên ngoài miền công việc của mình. Tức là tôi bị mất internet!

Cách khắc phục của tôi là:

  1. Trong NetworkManager, tôi đã chỉnh sửa Kết nối VPN trong phần "Kết nối mạng".
  2. Trong tab IPv4, phương thức đã thay đổi thành "Chỉ địa chỉ (VPN)"
  3. Đã thêm máy chủ DNS công việc của tôi (ví dụ: 10.10.10.100) và "Miền tìm kiếm" của "mywork.tld"
  4. Nhấp vào "Tuyến đường".
  5. Thêm tuyến đường bao phủ mạng công việc của tôi, ví dụ 10.10.0.0 / 255.255.0.0 và cổng 10.10.10.253 <- Cổng VPN tôi nhận được từ "traceroute".
  6. Sau đó, tôi đánh dấu cả hai lựa chọn: i. "Bỏ qua các tuyến đường tự động" ii. "Chỉ sử dụng kết nối này cho các tài nguyên trên mạng của nó"

Hoạt động trên máy tính của tôi.

Sự hiểu biết của tôi về những gì đã xảy ra là:

  1. /Etc/resolv.conf của tôi được thiết lập với dnsmasq và đang trỏ đến 127.0.1.1
  2. dnsmasq đang sử dụng các máy chủ DNS của ISP của tôi để phân giải DNS chung trên internet. Ví dụ: ISP DNS là giả sử 8.8.8.8.
  3. Tôi kết nối với VPN, máy chủ DNS của 10.10.10.100 được thêm dưới dạng máy chủ bổ sung vào dnsmasq để sử dụng cho độ phân giải DNS "mywork.tld".
  4. Khi tôi sử dụng VPN, tường lửa công việc của tôi không còn cho phép tôi sử dụng cổng 53 đến 8.8.8.8 để độ phân giải internet chung của tôi biến mất. DNS nên hết thời gian và đi đến máy chủ DNS thứ cấp, nhưng vì lý do nào đó?
  5. Tôi chỉ còn lại quyền truy cập vào độ phân giải DNS cho "server01.mywork.tld" vì truy vấn này chuyển đến 10.10.10.100 mà tôi có quyền truy cập qua VPN.
  6. Nếu tôi truy vấn www.google.com thì không thành công, mặc dù DNS nội bộ của tôi có thể chuyển tiếp. Tôi chỉ có thể giả định rằng DNS nội bộ của tôi không bao giờ được yêu cầu.

Khắc phục sự cố của tôi dường như vẫn hoạt động miễn là công việc của tôi không thay đổi địa chỉ IP máy chủ DNS hoặc mạng của họ.

Tôi hơi mơ hồ về điều đó, nhưng tôi nghĩ rằng nó hoạt động với tôi bởi vì một khi điều này được thực hiện thì NIC không dây của tôi trở thành kết nối mạng mặc định của tôi. Vì vậy, các truy vấn DNS đi đến 8.8.8.8 qua wifi. Bất kỳ truy vấn nào cho "xyz.mywork.tld" được dnsmasq cho biết để đi đến 10.10.10.100. Tôi đã đặt một lộ trình cho điều đó, để đi qua "vpn0" NIC trả về địa chỉ IP 10.10.10.x chính xác cho "xyz.mywork.tld". Bingo bango DNS độ phân giải cho các mạng bên trong và bên ngoài và mọi người đều hài lòng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.