[VPN] Hướng dẫn cài đặt OpenVPN Client trên CentOS/RHEL 7

Hướng dẫn cài đặt OpenVPN Client trên CentOS/RHEL 7

Chào các bạn, ở bài viết này mình sẽ hướng dẫn cài đặt hoạt động OpenVPN dạng Client trên CentOS/RHEL 7.

Mình không đi sâu về giải thích ý nghĩa hoạt động file cấu hình OpenVPN Client, phần này sẽ nằm ở nội dung bài post khác. Bài viết này thuần chất chỉ dẫn cách cài đặt, khởi động load các nội dung file cấu hình.

Do trên CentOS/RHEL 7 sử dụng hệ thống Systemd quản lý nhiều công việc hệ thống kể cả quản lý tiến trình start/stop/bootup dịch vụ. Khác so với hệ thống CentOS/RHEL 6 trở xuống sử dụng init, nên các bạn cần lưu ý ở phần này khi khởi động dịch vụ.

1. Cài đặt OpenVPN Client

– Cài đặt gói EPEL Repo.
# yum install epel-release -y
– Cài đặt phần mềm OpenVPN
# yum install openvpn -y


2. Cấu hình hoạt động OpenVPN Client

– Sau khi bạn cài đặt OpenVPN xong thì sẽ tồn tại 1 file systemd service của OpenVPN ở directory /lib/systemd/system/ có nội dung như sau.
# cat /lib/systemd/system/openvpn@.service
[Unit]
Description=OpenVPN Robust And Highly Flexible Tunneling Application On %I
After=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

– Các bạn nhìn vào nội dung thì sẽ thấy, OpenVPN sẽ sử dụng basedir là /etc/openvpn và sẽ load tên file cấu hình openvpn tương ứng của user mà ta chỉ định để trong đó.

– Do bài viết này không hướng dẫn về tạo key và certificate user OpenVPN, nên mình mặc đjnh bạn đã tạo hoặc đã được cấp các thông tin file key và certificate từ OpenVPN Server máy chủ. Các file cơ bản sẽ được đặt trong thư mục basedir /etc/openvpn/ :
# ll /etc/openvpn/
4.0K -rw-r--r--   1 root root  636 Mar 29 13:38 ta.key
 12K -rw-r--r--   1 root root 8.2K Mar 29 13:37 cuongquach.crt
4.0K -rw-r--r--   1 root root 3.2K Mar 29 13:37 cuongquach.key
4.0K -rw-r--r--   1 root root  291 Mar 29 13:39 client.conf

– Nội dung file /etc/openvpn/client.conf cơ bản như sau, mình không đi chi tiết nội dung file cấu hình OpenVPN Client, vì nội dung này sẽ nằm trong phần “Hướng dẫn cài đặt OpenVPN Server” khác. Ở nội dung file ta sẽ kiểm tra đường dẫn load key và cert phải chính xác, địa chỉ IP OpenVPN Server phải chính xác,… :
# cat /etc/openvpn/client.conf

client
proto tcp
remote 192.168.100.11
resolv-retry infinite
port 443
dev tun
nobind
ca /etc/openvpn/ca.crt
cert /etc/openvpn/cuongquach.crt
key /etc/openvpn/cuongquach.key
tls-auth /etc/openvpn/ta.key 1
persist-key
persist-tun
keepalive 10 60
comp-lzo
ns-cert-type server
verb 3


3. Khởi động OpenVPN Client

– Bạn đã xác định được tên file openvpn config sẽ là “/etc/openvpn/client.conf” hoặc bất kì cái tên gì mà bạn đặt. Ở đây ta sẽ sử dụng cái tên “client”. Ta khởi động dịch vụ OpenVPN Client load file config /etc/openvpn/client.conf và set bootup service tương ứng.
– Kích hoạt bootup dịch vụ OpenVPN Client.
# systemctl -f enable openvpn@client.service
– Khởi động dịch vụ với tên file config “client”.
# systemctl start openvpn@client.service
– Dừng dịch vụ với tên file config “client”.
# systemctl stop openvpn@client.service

Như vậy là đã xong phần hướng dẫn cài đặt hoạt động OpenVPN Client trên CentOS/RHEL 7 nhanh chóng.
Previous article[Zabbix] File systemd service cho Zabbix Agentd trên CentOS/RHEL 7
Next article[Nginx] Cấu hình trang trạng thái Nginx – Nginx status page
Bạn đang theo dõi website "https://cuongquach.com/" nơi lưu trữ những kiến thức tổng hợp và chia sẻ cá nhân về Quản Trị Hệ Thống Dịch Vụ & Mạng, được xây dựng lại dưới nền tảng kinh nghiệm của bản thân mình, Quách Chí Cường. Hy vọng bạn sẽ thích nơi này !