Chuyện của sys

DevOps Blog

[Linux] Triển khai mô hình VPN sử dụng OpenVPN Client to Site trên Linux (4) July 13, 2014

Kiểm tra log file ở server:
bsdinsight-vpn23.png 
– Kiểm tra đã kết nối được với Local hay chưa?
bsdinsight-vpn24.png 
– Tracert đường đi của nó:
bsdinsight-vpn25.png 
– Truy nhập vào máy Local:
bsdinsight-vpn26.png 
– Xem các thư mục được chia sẻ:
bsdinsight-vpn27.png 
– Down tập tin BaiTapThucHanhDebug.doc từ máy Local:
bsdinsight-vpn28.png 
– Up tập tin uptest.rar lên máy Local:
bsdinsight-vpn29.png 

Nhanpt

No Comments on [Linux] Triển khai mô hình VPN sử dụng OpenVPN Client to Site trên Linux (4)
Categories: Uncategorized

[Linux] Triển khai mô hình VPN sử dụng OpenVPN Client to Site trên Linux (3)

 Bật chức năng IP Forwarding:
Mở file /etc/sysctl.conf và đặt ‘net.ipv4.ip_forward’ to 1.
net.ipv4.ip_forward = 1
Để chắc chắn rằng đã thay đổi sysctl.conf sử dụng lệnh sau:
sysctl –p
– Tắt firewall
Service iptables stop
– Tạo thư mục chứa IP tĩnh cho từng user Client.
Tạo thư mục ccd (/etc/openvpn/ccd)
mkdir /etc/openvpn/ccd
Tạo profile cho user nhan và qui
vi /etc/openvpn/ccd/nhan
bsdinsight-vpn15.png 
– Sửa file cấu hình server.conf
Tạo file cấu hình server.conf:
bsdinsight-vpn16.png 
Cấu hình theo mẫu sau:
local 192.168.1.200 #ip của server
port 1194 #port mặc định là 1194
proto udp # giao thức udp
dev tun #
dùng tunnel, nếu dùng theo bridge chọn dev tap0 và những config khác sẽ khác với tunnel
tun-mtu 1500 # Thiết lập một trên ràng buộc về kích thước của gói tin UDP được gửi giữa các OpenVPN, mặc định là 1500
tun-mtu-extra 32 # phần bổ sung
mssfix 1450# để mặc định
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem

Khai báo đường dẫn chứa các CA,CERT,KEY và DH.
Một số các thông số khác:
plugin /usr/share/openvpn/plugin/lib/openvpn-auth-pam.so /etc/pam.d/login
client-cert-not-required
username-as-common-name
server 10.8.0.0 255.255.255.0
push “redirect-gateway def1”
push “dhcp-option DNS 8.8.8.8”
push “dhcp-option DNS 8.8.4.4”
keepalive 5 30
comp-lzo
persist-key
persist-tun
status 1194.log
verb 3

File :
bsdinsight-vpn17.png 
– Khởi động Server:
openvpn /etc/openvpn/server.conf
bsdinsight-vpn18.png 
 Cài đặt, config OpenVPN GUI cho Client:
– Cài đặt OpenVPN GUI cho client.
bsdinsight-vpn19.png 
– Chép các file key, certificate cần thiết ca.crt, nhan.crt, nhan.key vào đường dẫn C:\Program Files\OpenVPN\configbsdinsight-vpn20.png 
– Tạo file client.ovpn và chỉnh sửa tương tự như ở server:
client
dev tun (tunnel)
proto udp (upd protocol)
remote 192.168.1.200 1194 (khai báo IP:port server OpenVPN)
nobind
persist-key
persist-tun
ca ca.crt (khai báo CA server)
cert nhan.crt (certificate user nhan)
key nhan.key (private key nhan)
comp-lzo
verb 3

– Quay VPN từ phần mềm GUI:
bsdinsight-vpn21.png 
– Kết nối thành công!!!
bsdinsight-vpn22.png

No Comments on [Linux] Triển khai mô hình VPN sử dụng OpenVPN Client to Site trên Linux (3)
Categories: Uncategorized

[Linux] Triển khai mô hình VPN sử dụng OpenVPN Client to Site trên Linux (2)

Copy thư mục easy-rsa sang /etc/openvpn/:
cp -R /usr/share/doc/openvpn-2.2.2/easy-rsa/ /etc/openvpn/
Tiếp theo: Chuẩn bị tạo Giấy chứng nhận CA
cd /etc/openvpn/easy-rsa/2.0
chmod 755 *
source ./vars
./vars
./clean-all
bsdinsight-vpn9.png 
– Build CA:
./build-ca
Country Name: Điền tên quốc gia, có thể để trống
State or Province Name: điền bang hay tỉnh hoặc để trống
City: điền Thành phố hoặc để trống
Org Name: điền Tổ chức hoặc để trống
Org Unit Name: điền Đơn vị hoặc để trống
Common Name: Điền hostname server của bạn.
Email Address: điền địa chỉ mail hoặc để trống.
bsdinsight-vpn10.png 
– Build key server:
./build-key-server server
Các thông số tương tự khi build CA, thêm 1 số thông số:
Common Name: server
A challenge password: Đặt hoặc không
Optional company name: điền hoặc không
bsdinsight-vpn11.png 
sign the certificate: y
1 out of 1 certificate requests: y
bsdinsight-vpn12.png 
– Build Diffie Hellman (đợi trong giây lát):
./build-dh
bsdinsight-vpn13.png 

– Tạo Client Certificate và Private key cho Client

./build-key nhan (common name: nhan)
./build-key qui (common name: qui)
Lúc này trong thư mục keys sẽ có :
bsdinsight-vpn14.png

No Comments on [Linux] Triển khai mô hình VPN sử dụng OpenVPN Client to Site trên Linux (2)
Categories: Uncategorized

[Linux] Triển khai mô hình VPN sử dụng OpenVPN Client to Site trên Linux (1)

1. Giới thiệu:
– OpenVPN là một giải pháp dựa trên nền tảng SSL/TLS, sử dụng để xây dựng VPN cho Intranet với đường hầm dữ liệu thông qua một cổng TCP/UDP trên một mạng không an toàn như Internet.
– OpenVPN có thể được cài đặt trên gần như bất kỳ nền tảng bao gồm cả Linux, Windows 2000/XP/Vista, OpenBSD, FreeBSD, NetBSD, Mac OS X, và Solaris.
– OpenVPN dựa trên kiến trúc client / server. Nó phải được cài đặt trên các thành viên VPN, được chỉ định trong những máy chủ cũng như máy khách.
– OpenVPN tạo ra một đường hầm TCP hoặc UDP, sau đó mã hóa dữ liệu bên trong đường hầm.
– Số hiệu cổng mặc định của OpenVPN là UDP 1194, dựa trên một cổng được gán bởi tổ chức cấp phát số hiệu Internet IANA (Internet Assigned Numbers Authority). Bạn có thể sử dụng cổng TCP hoặc UDP từ phiên bản đề xuất 2.0, một cổng đặc biệt duy nhất có thể được sử dụng cho một số đường hầm trên máy chủ OpenVPN.
– Bạn có thể chọn để xây dựng hoặc Ethernet (Bridged) hoặc IP (Routed) VPN với sự trợ giúp tương ứng của trình điều khiển mạng TAP hoặc TUN. TAP / TUN có sẵn trên tất cả các nền tảng và đã được đi kèm với nhân Linux kernel 2.4 hoặc cao hơn.
2. Ưu điểm:
– Trong khi các giải pháp khác của VPN thường sử dụng quyền sở hữu hay các công cụ không chuẩn, thì OpenVPN có một khái niệm mô-đun chuẩn, cho cả hệ an ninh cơ bản và hoạt động mạng.
– OpenVPN sử dụng công cụ SSL/TLS an toàn, ổn định và được khen ngợi và kết hợp chúng với sự đáng tin cậy. Nó không chịu ảnh hưởng từ sự phức tạp về đặc tính trong các việc áp dụng VPN khác như dịch vụ thống lĩnh thị trường IPSec.
– Cùng lúc nó đưa ra các khả năng có thể đi xa hơn phạm vi thực hiện của tất cả các VPN còn lại.

 3. Triển khai mô hình VPN sử dụng OpenVPN Client to Site:
Giả sử ta có mô hình như sau:
Người dùng sử dụng máy Client để truy cập vào mạng nội bộ của công ty thông qua đường hầm sử dụng OpenVPN.
Truy cập thành công có nghĩa là Client thông với máy Local trong mạng nội bộ, thông qua OpenVPN.
bsdinsight-vpn1.png 
– Chuẩn bị :
— Phần mềm VMWare 8.0
— Máy Server dùng hệ điều hành CentOS 5.8 Final
Gồm 2 card mạng:
Eth1 : 192.168.1.200 và Eth2 : 172.16.0.1
Máy Local dùng Windows Xp
IP : 172.16.0.2
Máy Client dùng Windows Xp
IP: 192.168.1.202
– Trên Server:
Kiểm tra trạng thái của TUN/TAP:
cat /dev/net/tun
Nếu đã được active :
bsdinsight-vpn2.png 
Cài đặt các gói cần thiết :
yum install gcc make rpm-build autoconf.noarch zlib-devel pam-devel openssl-devel –y
bsdinsight-vpn3.png 
– Download LZO RPM và Configure RPMForge Repo:
wgethttp://openvpn.net/release/lzo-1.08-4.rf.src.rpm
bsdinsight-vpn4.png 
wgethttp://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
bsdinsight-vpn5.png 
Build gói rpm:
rpmbuild –rebuild lzo-1.08-4.rf.src.rpm
bsdinsight-vpn6.png 
rpm -Uvh lzo-*.rpm
rpm -Uvh rpmforge-release*
bsdinsight-vpn7.png 
– Install OpenVPN:
yum install openvpn –y
bsdinsight-vpn8.png 
No Comments on [Linux] Triển khai mô hình VPN sử dụng OpenVPN Client to Site trên Linux (1)
Categories: Uncategorized