เซิร์ฟเวอร์ Ubuntu 16.04 - OpenVPN ดูเหมือนจะไม่เริ่มไม่มีบันทึกที่เขียน


13

ฉันติดตั้งและ oepnvpn บนเซิร์ฟเวอร์ Ubuntu 16.04 โดยทำตามแนวทางต่อไปนี้ วิธีติดตั้งและเปิดใช้งาน openvpn-server-on-Ubuntu

เมื่อฉันเริ่มต้นเซิร์ฟเวอร์ openVPN ด้วย: service openvpn startดูเหมือนว่าจะเริ่มต้น แต่ฉันไม่ได้เขียนล็อกไฟล์แม้ว่าฉันจะเปิดใช้งานตัวเลือกบันทึกก็ตาม

status /var/log/openvpn-status.log
log  /var/log/openvpn.log    

มีคำแนะนำอะไรที่ฉันจะลองได้บ้าง

  • ฉันจะตรวจสอบได้อย่างไรว่ากระบวนการ / บริการกำลังทำงานอยู่จริง ๆ ?
  • ฉันจะทราบได้อย่างไรว่าบริการขัดข้องทุกครั้งหรือไม่
  • ความคิดใดที่ว่าทำไมไฟล์บันทึกไม่ได้ถูกเขียน?

เอาท์พุทเมื่อเริ่มบริการ

root@Diabolo:/etc/openvpn# service openvpn stop
root@Diabolo:/etc/openvpn# service openvpn start
root@Diabolo:/etc/openvpn# service openvpn status
openvpn.service - OpenVPN service
Loaded: loaded (/lib/systemd/system/openvpn.service; enabled; vendor preset: enabled)
Active: active (exited) since Sat 2016-06-25 19:04:12 CEST; 3s ago
Process: 3956 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 3956 (code=exited, status=0/SUCCESS)
Jun 25 19:04:12 Diabolo systemd[1]: Starting OpenVPN service...
Jun 25 19:04:12 Diabolo systemd[1]: Started OpenVPN service.

เอาต์พุตบน syslog

Jun 25 19:04:12 Diabolo systemd[1]: Starting OpenVPN service...
Jun 25 19:04:12 Diabolo systemd[1]: Started OpenVPN service.

config ไฟล์ server.conf

port 1194
proto udp
dev tun
ca /etc/openvpn/ca.crt
cert /etc/openvpn/server.crt
key /etc/openvpn/server.key 
dh /etc/openvpn/dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
keepalive 10 120
comp-lzo
max-clients 100
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log
log  /var/log/openvpn.log
verb 3

คำตอบ:


16

ปัญหาคือการกำหนดค่าบริการ/lib/systemd/system/openvpn.serviceเพียงโทร/bin/true(ฉันไม่รู้ว่าทำไมมันไม่ได้ลบออกไป) อาจพบการกำหนดค่าที่ใช้งานได้/lib/systemd/system/openvpn@.serviceแต่ยังคงต้องแฮ็กอยู่บ้าง

โซลูชันที่เหมาะกับฉัน:

1. สร้างการพึ่งพาบริการเครือข่าย

เพื่อป้องกันไม่ให้เขียนทับสร้างในไฟล์แยกต่างหากในไดเรกทอรีย่อย:

 mkdir -p /lib/systemd/system/openvpn\@.service.d

สร้างไฟล์ในไดเรกทอรีนี้ ชื่อจะต้องลงท้ายด้วย.confตัวอย่างเช่น:

 vi /lib/systemd/system/openvpn\@.service.d/local-after-ifup.conf

ใส่เนื้อหาต่อไปนี้ในไฟล์นี้:

[Unit]
Requires=networking.service
After=networking.service

2. ลองเริ่มเซิร์ฟเวอร์

systemctl start openvpn@<CONF_NAME>.service

โดยที่ CONF_NAME เป็นชื่อ.confไฟล์ของคุณใน/etc/openvpnไดเรกทอรี ในกรณีของคุณ:

systemctl start openvpn@server.service

3. เปิดใช้งานบริการเริ่มอัตโนมัติถ้าทุกอย่างทำงาน

systemctl enable openvpn@server.service

13

หลังจากค้นหาทั่วฉันพบลิงค์นี้:

https://a20.net/bert/2016/09/27/openvpn-client-connection-not-started-on-ubuntu-16-04/

edit /etc/default/openvpn, uncomment AUTOSTART=”all”
sudo systemctl daemon-reload
sudo service openvpn restart

ฉันต้มลงไปอีกเล็กน้อย:

echo 'echo "AUTOSTART="\"all"\"" >> /etc/default/openvpn' | sudo -s
sudo systemctl daemon-reload
sudo service openvpn restart

1
เคยทำงานกับระบบของฉันเมื่อหลายเดือนก่อน ไม่มีการเปลี่ยนแปลงที่เด่นชัดในระบบยกเว้นว่าฉันไม่ต้องการ openvpn สักพัก และตอนนี้มันไม่ทำงาน สิ่งนี้ช่วยแก้ปัญหา ... ขอบคุณ! +1
gissehel

1

เนื่องจากข้อผิดพลาดใน /etc/init.d/openvpn?

# check if automatic startup is disabled by AUTOSTART=none
if test "x$AUTOSTART" = "xnone" -o -z "$AUTOSTART" ; then
  log_warning_msg " Autostart disabled."
  exit 0
fi
if test -z "$AUTOSTART" -o "x$AUTOSTART" = "xall" ; then
  # all VPNs shall be started automatically
  ...

ดูเหมือนว่าถ้า AUTOSTART ว่างเปล่าใน / etc / default / openvpn สคริปต์ก็จะออก ดังนั้นคุณเลือกโซลูชันของ Phillip หรือคุณลบในบรรทัดที่ 119 เงื่อนไขที่สอง:

-o -z "$AUTOSTART"

อะไรคือ "บั๊ก" ความจริงที่ว่าถ้าคุณไม่บอกให้ทำอะไรก็ไม่ทำอะไรเลย? คุณกำลังแนะนำว่ามันเป็นความคิดที่ดีที่จะปรับเปลี่ยนระบบเพื่อให้มันเริ่มต้นแม้ว่าคุณจะไม่บอกมัน คุณแนะนำว่ามีบางอย่างผิดปกติกับคำตอบที่ระบุว่าผู้ใช้ควรกำหนดค่าซอฟต์แวร์เพื่อให้เริ่มทำงานหรือไม่
G-Man กล่าวว่า 'Reinstate Monica'

2
ไม่ฉันแค่แนะนำว่าเหมือนคนอื่น ๆ ฉันเข้าใจผิดเอกสารที่บอกว่า: ถ้าว่างเปล่า "ทั้งหมด" จะถือว่า คุณเคยเห็นจำนวนคำขอสำหรับเครื่องมือค้นหาด้วย "openvpn ไม่เริ่มโดยอัตโนมัติ" หรือไม่?
อเล็กซ์


-1

ทางเลือกอื่นสำหรับคำตอบของ Phillip Moxleyคุณสามารถแก้ไข/etc/default/openvpnไฟล์และเปลี่ยนAUTOSTARTบรรทัดเป็น

AUTOSTART="server"

(1) นี่คือสิ่งที่คุณหมายถึง? (1a) ถ้าใช่โปรดเขียนคำตอบของคุณในอนาคต พวกเขาควรจะพอเพียง - คือใครควรจะสามารถอ่านคำถามและคำตอบของคุณคนเดียว ,และคำตอบของคุณควรจะให้ความรู้สึก แต่ถ้าคุณต้องการคำตอบของคนอื่นคุณควรพูดอย่างนั้น (อ้างอิงจากชื่อและลิงค์) (1b) หากนี่ไม่ใช่สิ่งที่คุณต้องการโปรดแก้ไขคำตอบเพื่อให้ชัดเจนและสมบูรณ์ยิ่งขึ้น (2) โปรดอย่ารวมคำว่า "ขอบคุณ" ไว้ในคำตอบ (3) AUTOSTART="server"แตกต่างจากAUTOSTART="all"อย่างไร มันจะดีกว่า ทำไม? … (ต่อ)
สกอตต์

(ต่อ) …อีกครั้งโปรดอย่าตอบในความคิดเห็น  แก้ไขคำตอบของคุณเพื่อให้ชัดเจนและสมบูรณ์ยิ่งขึ้น
สกอตต์
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.