Làm thế nào để tự động bắt đầu openvpn (client) trên ubfox cli?


16

Tôi đang sử dụng Ubuntu 12.04 64 bit. Tôi có một *.ovpntệp hoạt động nếu tôi gõ:

sudo openvpn client.ovpn

Bây giờ tôi muốn khởi động openvpnkhi tôi khởi động máy tính.

Tôi có thể làm cái này như thế nào?

Câu trả lời:


22
  1. Tải về OpenVPNConfigFile.ovpn. Lưu ý rằng bạn có thể đổi tên tệp thành bất cứ thứ gì bạn thích.

  2. Di chuyển tệp ovpn sang /etc/openvpn

  3. cd /etc/openvpn thư mục và nhập sudo nano yourserver.txt

    your_server_user_name
    your_server_passowrd
    

    Lưu và Đóng

  4. sudo nano OpenVPNConfigFile.ovpn

    Tìm auth-user-passvà thêm yourserver.txtbên cạnh nó để nó trở thành

    auth-user-pass yourserver.txt
    

    Điều này sẽ cho phép bạn bỏ qua việc nhập thông tin đăng nhập của bạn mỗi khi bạn bắt đầu kết nối openvpn

  5. Đổi tên OpenVPNConfigFile.ovpnthànhOpenVPNConfigFile.conf

    sudo mv OpenVPNConfigFile.ovpn OpenVPNConfigFile.conf
    
  6. sudo nano /etc/default/openvpn

    Thất bại AUTOSTART="all"

  7. sudo service openvpn start

    Bạn sẽ thấy một thông báo nói rằng bạn đã kết nối. Kết nối sẽ được thiết lập mỗi khi bạn khởi động máy tính.


5
Nếu bạn đang chạy systemd, bạn sẽ cần chạy systemctl daemon-reloadtrước khi khởi động lại dịch vụ
Mario Campa

6

Các openvpn gói đi kèm với một init script /etc/init.d/openvpn. Tập lệnh này tự động thiết lập kết nối cho mọi .conftệp (lưu ý phần mở rộng) trong /etc/openvpn.

Tìm thấy điều này dựa trên thông tin ở đây: https://openvpn.net/index.php/open-source/documentation/howto.html#startup

Nếu bạn cài đặt OpenVPN thông qua gói RPM hoặc DEB trên Linux, trình cài đặt sẽ thiết lập một bản initscript. Khi được thực thi, initscript sẽ quét các tệp cấu hình .conf trong / etc / openvpn và nếu được tìm thấy, sẽ khởi động một trình nền OpenVPN riêng cho mỗi tệp.


2

Sẽ rất tốt nếu có một cách thức không hack của hacker, nhưng điều này sẽ phải làm ngay bây giờ.

1) Tạo tập tin myopenvpn trong /etc/init.d/

nano /etc/init.d/myopenvpn

2) Chèn vào myopenvpn và lưu:

# OpenVPN autostart on boot script

start on runlevel [2345]
stop on runlevel [!2345]

respawn

exec /usr/sbin/openvpn --status /var/run/openvpn.client.status 10 --cd /etc/openvpn --config /etc/openvpn/client.conf --syslog openvpn

NGUỒN: http://www.hackerway.ch/2012/12/11/how-to-auto-start-openvpn-client-in-debian-6-and-ubfox-12-04/#comment-79


2

Tôi đã có một chút bế tắc về điều này và cuối cùng đã viết ra tất cả các hướng dẫn để thiết lập nó với systemd bằng tay.

Điều này làm việc với tôi bằng Ubuntu 16.10 và openvpn 2.3.11

Thiết lập vpn của bạn để chạy từ bash

Các ví dụ này sử dụng expressvpn nhưng hầu hết sẽ hoạt động theo cùng một cách

Tải xuống tệp cấu hình ovpn của nhà cung cấp vpn của bạn, ví dụ my_express_vpn_amsterdam_2 .trứng

di chuyển đến /etc/openvpn/và đổi tên nó kết thúc trong conf

sudo mv ~/Downloads/my_express_vpn_amsterdam_2.ovpn /etc/openvpn/amsterdam-2.conf

Nhà cung cấp VPN của bạn sẽ cung cấp cho bạn tên người dùng và mật khẩu để kết nối qua openvpn. Lưu tên người dùng và sau đó nhập mật khẩu trên mỗi dòng riêng của họ

sudo vim /etc/openvpn/express-vpn-crednetials.txt
# add these lines
YOUR_VPN_USERNAME
YOUR_VPN_PASSWORD
# save the file

Bây giờ /etc/openvpn/amsterdam-2.conf hãy chỉnh sửa tìm một dòng có nội dung auth-user-passvà thay thế nó bằng đường dẫn đến tệp tin xác thực của bạn

auth-user-pass /etc/openvpn/express-vpn-crednetials.txt

Kiểm tra cấu hình của bạn! Bắt đầu openvpn như thế này

sudo openvpn --config /etc/openvpn/amsterdam-2.conf

openvpn nên kết nối mà không yêu cầu tên người dùng hoặc mật khẩu

Xóa cấu hình dịch vụ (bị hỏng) hiện có cho openvpn

sudo rm /etc/systemd/system/multi-user.target.wants/openvpn.service

Thiết lập openvpn để chạy như một dịch vụ systemd

Cấu hình đi kèm với openvpn đã bị hỏng nên tôi đã gỡ bỏ nó và tạo một cái mới dựa trên câu trả lời này

Tạo dịch vụ systemd cho openvpn

sudo vim /usr/lib/systemd/system/openvpn@service

thêm cấu hình này:

[Unit]
Description=OpenVPN Robust And Highly Flexible Tunneling Application On %I
After=syslog.target network.target

[Service]
PrivateTmp=true
Type=forking
PIDFile=/var/run/openvpn/%i.pid
ExecStart=/usr/sbin/openvpn --daemon --writepid /var/run/openvpn/%i.pid --cd /etc/openvpn/ --config %i.conf

[Install]
WantedBy=multi-user.target

những %iđược sử dụng như một ký tự đại diện để dịch vụ này có thể được sử dụng cho nhiều cấu hình VPN. Thiết lập nó cho amsterdam-2.conftập tin mà chúng ta đã tạo trước đó

sudo systemctl start openvpn@amsterdam-2.service

dịch vụ systemd sẽ chạy trên amsterdam vpn. kiểm tra tình trạng của nó như vậy

sudo systemctl status openvpn@amsterdam-2.service

bạn sẽ thấy một vài dòng đầu ra kết thúc Initialization Sequence Completedvà vpn của bạn sẽ chạy.

Hi vọng điêu nay co ich! đọc liên quan:

/unix/206058/how-to-start-2fa-USE-openvpn-with-systemd/206490#206490

Cách khởi động dịch vụ khách OpenVPN trên Ubuntu 15.04

/unix/136190/USE-openvpn-with-systemd/149003#149003?newreg=53ca53879fcc361f94304f91bbc82ab3

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.