
TÌM HI U V OPENVPNỂ Ề
V i s ra đ i c a OpenVPN, m tth h m ic aVPN.Trong khi các gi i pháp VPN khácớ ự ờ ủ ộ ế ệ ớ ủ ả
th ng s d ng c ch đ c quy n ho c không đ t chu n, OpenVPN có m t khái ni mmôườ ử ụ ơ ế ộ ề ặ ạ ẩ ộ ệ
đun,cho b o m t và m ng. OpenVPN s d ng các c ch an toàn, n đ nh, vàSSL /TLSvàả ậ ạ ử ụ ơ ế ổ ị
k t h pl i đ t o đ tin c y cho chính l p c a nó. Chúng ta s tìm hi u k h n OpenVPNế ợ ạ ể ạ ộ ậ ớ ủ ẽ ể ỹ ơ
đây.ở
L CH S PHÁT TRI N C A OPENVPNỊ Ử Ể Ủ
Năm 2003, James Yonan đã k l i trong th i gian ông ta đi du l ch Central Asia tr cể ạ ờ ị ở ướ
ngày 11/09/2001 và có vi c ph i k t n i v i văn phòng qua nhà cung c p d ch v Internetệ ả ế ố ớ ấ ị ụ
c a châu Á ho c Nga. Ông nh n th y th c t r ng nh ng k t n i này đi qua nh ng n củ ặ ậ ấ ự ế ằ ữ ế ố ữ ướ
không đ m b o đ c s an toàn.Theo nh ng nghiên c u c a James Yonan thì có hai m cả ả ượ ự ữ ứ ủ ụ
tiêu chính c a m t h th ng VPN đó là an toàn và tính kh d ng. Không có m t gi i phápủ ộ ệ ố ả ụ ộ ả
nào vào th i đi m đó có th đáp ng đ c c hai m c tiêu đó. Ipsec có th ch p nh nờ ể ể ứ ượ ả ụ ể ấ ậ
đ c v m t an toàn, nh ng h th ng x lý c a nó khó thi t l p, và c u trúc ph c t p c aượ ề ặ ư ệ ố ử ủ ế ậ ấ ứ ạ ủ
nó làm nó d b t n th ng b i các cu c t n công. B i v y Jame Yonan đã ti p c n gi iễ ị ổ ươ ở ộ ấ ở ậ ế ậ ả
pháp dùng thi t b card m ng o TUN/TAP có trong nhân h đi u hành Linux.ế ị ạ ả ệ ề
Vi c ch n thi t b TUN/TAP cho mô hình n i m ng ngay l p t c đ a ra đ c tính linhệ ọ ế ị ố ạ ậ ứ ư ượ
ho t mà các gi i pháp VPN khác lúc đó không th có đ c. Trong khi các gi i pháp VPNạ ả ể ượ ả
n n t ng SSL/TLS khác c n m t b trình duy t (browser) đ thi t l p k t n i, thìề ả ầ ộ ộ ệ ể ế ậ ế ố
OpenVPN chu n b g n nh nh ng thi t b m ng th t trên g n nh t t c các ho t đ ngẩ ị ầ ư ữ ế ị ạ ậ ầ ư ấ ả ạ ộ
m ng. R i Yonan ch n tên OpenVPN v i s tôn tr ng dành cho nh ng th vi n và nh ngạ ồ ọ ớ ự ọ ữ ư ệ ữ
ch ng trìnhc a d án OpenSSl, và mu n đ a ra thông đi p: Đây là mã ngu n m và ph nươ ủ ự ố ư ệ ồ ở ầ
m m mi n phí.OpenVPN s d ng thi t b Tun/Tap (h u nh có s n trên các b n Linux) vàề ễ ử ụ ế ị ầ ư ẵ ả
openssl đ xác nh n (authenticate), mã hóa (khi g i) và gi i mã (khi nh n) đ ng truy nể ậ ở ả ậ ườ ề
gi a hai bên thành chung m t network.ữ ộ
U ĐI M C A OPENVPNƯ Ể Ủ
•H tr VPN l p 2 và l p 3 : Vìv y, cácđ ng h mOpenVPNtrênl p 2cũng có thỗ ợ ớ ớ ậ ườ ầ ớ ể
chuy n khung Ethernet, các gói d li uIPX, và Windows Network Browsing packetsể ữ ệ
(NETBIOS), t t c đ ulà nh ng v n đ g p ph i trong h u h t cácgi iấ ả ề ữ ấ ề ặ ả ầ ế ả
phápVPNkhác.
•B o v ng i làm vi c bên ngoài b ng b c t ng l a n i b .ả ệ ườ ệ ằ ứ ườ ử ộ ộ
•Các k t n i OpenVPN có th đi qua đ c h u h t m i t ng l a và proxy : Khiế ố ể ượ ầ ế ọ ườ ử
truy c p các trangwebHTTPS, thì đ ng h m OpenVPN làm vi c.Vi c thi tậ ườ ầ ệ ệ ế
l pđ ng h mOpenVPNb c mlà r t hi m. OpenVPNcóh tr y quy nđ y đ baoậ ườ ầ ị ấ ấ ế ỗ ợủ ề ầ ủ
g m xác th c.ồ ự
•H tr UDP và TCP: OpenVPNcó th đ c c u hình đ ch y d ch vỗ ợ ể ượ ấ ể ạ ị ụ
TCPho cUDPtrên máy ch ho c khách hàng. Là m t máy ch , OpenVPNch đ nặ ủ ặ ộ ủ ỉ ơ
gi n làch đ ichođ nkhim t khách hàngyêuc um t k t n i,k t n i này đ c thi tả ờ ợ ế ộ ầ ộ ế ố ế ố ượ ệ
l p theo c u hình c a khách hàng.ậ ấ ủ
•Ch c n m t c ng trong t ng l a đ c m là cho phép nhi u k t n i vào: K tỉ ầ ộ ổ ườ ử ượ ở ề ế ố ể ừ
ph n m m OpenVPN 2.0, máy ch đ c bi t này cho phép nhi u k t n ivào trênầ ề ủ ặ ệ ề ế ố

cùng m t c ng TCP ho c UDP, đ ng th i v n s d ng các c u hình khácnhau choộ ổ ặ ồ ờ ẫ ử ụ ấ
m i m t k t n iỗ ộ ế ố
•Không có v n đ gì v i NAT: C máy ch và máy khách OpenVPN có th n mấ ề ớ ả ủ ể ằ
trong cùng m t m ng và s d ng các đ a ch IP riêng . M i t ng l a có th đ cộ ạ ử ụ ị ỉ ỗ ườ ử ể ượ
dùng đ g i l u l ng t i đi m cu i đ ng h m.ể ử ư ượ ớ ể ố ườ ầ
•Giao di n o ch p nh n các quy t c v t ng l a: T t c các qui t c, các c chệ ả ấ ậ ắ ề ườ ử ấ ả ắ ơ ế
chuy n ti p, và NAT có th dùng chung đ ng h m OpenVPN. Nh ng giao th c IPể ế ể ườ ầ ư ứ
cũng có th , b n có th t o đ ng h m VPN khác nh IPsec bên trong đ ngể ạ ể ạ ườ ầ ư ườ
h m OpenVPN .ầ
•Đ linh ho t cao v ikh năng m r ngk ch b n: OpenVPNcung c p nhi uộ ạ ớ ả ở ộ ị ả ấ ề
đi mtrong quá trình thi t l pk tn iđ b t đ ucáck chb nriêng. nh ng k ch b n cóể ế ậ ế ố ể ắ ầ ị ả ữ ị ả
th đ c s d ng chom t lo t cácm cđícht xác th c chuy n đ i d phòng vàể ượ ử ụ ộ ạ ụ ừ ự ể ổ ự
nhi uh nn a.ề ơ ữ
•H tr kh năng ho t đ ng cao, trong su t cho IP đ ng: Hai đ u đ ng h m có thỗ ợ ả ạ ộ ố ộ ầ ườ ầ ể
s d ng IP đ ng và ít b thay đ i. N u b đ i IP, các phiên làm vi c c a Windowsử ụ ộ ị ổ ế ị ổ ệ ủ
Terminal Server và Secure Shell (SSH) có th ch b ng ng trong vài giây và s ti pể ỉ ị ư ẽ ế
t c ho t đ ng bình th ng.ụ ạ ộ ườ
•Cài đ t đ n gi n trên b t kỳ h th ng nào: Đ n gi n h n nhi u so v i IPsec.ặ ơ ả ấ ệ ố ơ ả ơ ề ớ
•Thi t k ki u Môđun.ếếể
•H tr cho đi n tho i di đ ngvà nhúng: Ngày càng có nhi uthi t b di đ ng đ cỗ ợ ệ ạ ộ ề ế ị ộ ượ
h tr .ỗ ợ
CÁC PHIÊN B N C A OPENVPNẢ Ủ
OpenVPN phiên b n 1ả
OpenVPN xu t hi n trong gi i pháp VPN vào ngày 13/5/2001. n b n đ u tiên này ch cóấ ệ ả Ấ ả ầ ỉ
th t o đ ng h m cho các gói IP qua giao th c UDP và ch mã hóa b ng m t mã Blowfishể ạ ườ ầ ứ ỉ ằ ậ
(thu t toán mã hóa đ i x ng) và các ch ký SHA HMAC. Phiên b n này đ c đánh sậ ố ứ ữ ả ƣợ ố
0.90. B ng sau đây gi i thi u t ng quát v các nh ng l n xu t b n c a OpenVPN phiênả ớ ệ ổ ề ữ ầ ấ ả ủ
b n 1: ả
Ngày-tháng-
năm
Phiên
b nảNh ng đ c tính / thay đ i quan tr ngữ ặ ổ ọ
13-5-2001 0.90 Phiên b n đ u tiên , ch có vài ch c năng nh Ip ch y trên d ch vả ầ ỉ ứ ư ạ ị ụ
UDP, và ch có 1 c ch mã hoá.ỉ ơ ế
26-12-2001 0.91 Nhi u c ch mã hoá đã đ c thêmề ơ ế ượ
23-3-2002 1.0 TLS d a vào vi c xác th c và trao đ i khoá đã đ c thêm vào.ự ệ ự ổ ượ
28-3-2002 1.0.2 Ch c năng s a l i và c i ti n , đ c bi t đ i v i h th ng RPMứ ử ỗ ả ế ặ ệ ố ớ ệ ố
nh Redhaư
9-4-2002 1.1.0 H tr m r ng đói v i TLS/SSLỗ ợ ở ộ ớ
Thêm vào phân lu ng d li uồ ữ ệ
C ng OpenBSD đ u tiên ổ ầ
M r ng vi c b o v giúp cho OpenVPN b o m t h nở ộ ệ ả ệ ả ậ ơ

C i ti n t li u sâu h n.ả ế ư ệ ơ
22-4-2002 1.1.1 Các l a ch n c u hình t đ ng cho m t m ng OpenVPN.ự ọ ấ ự ộ ộ ạ
22-5-2002 1.2.0 H tr thêm t p tin c u hình ỗ ợ ậ ấ
SSl/TLS là quá trình n n t ng , các khoá cũng dài h n ề ả ơ
Các c ng khác nhau đ c b sung/ c i thi n (Solaris, OpenBSD,ổ ượ ổ ả ệ
Mac OSX, X64 )
Trang web đ c c i ti n , bao g m “ sách h ng d n “ượ ả ế ồ ướ ẫ
Có th cài đ t không c n t đ ngể ặ ầ ự ộ
12-6-2002 1.2.1 Cung c p các t p tin RPM nh phân dùng đ l p đ t h th ng n nấ ậ ị ể ắ ặ ệ ố ề
Redhat
C i ti n chi u sâu v x lý tìn hi u và qu n lý phím khi kh i đ ngả ế ề ề ử ệ ả ở ộ
H tr các thay đ i năng đ ng trong các gói đ n (nh IP đ ng )ỗ ợ ổ ộ ế ư ộ
Thêm h tr cho nh n d ng sau khi cài OpenVPN có th ch y nhỗ ợ ậ ạ ể ạ ư
ng i dùng thông th ng.ườ ườ
10-7-2002 1.3.0
1.3.1
Phiên b n s a đ i có nhi u tính năng. Ho t đ ng v i OpenSSLả ử ổ ề ạ ộ ớ
0.9.7 Beta 2.
23-10-2002 1.3.2 C ng NetBSD đ c b sungổ ượ ổ
H tr cho vi c t o inetd/xinetd d i Linuxỗ ợ ệ ạ ướ
Gi y ch ng nh n SSL/TLS đ n gi n đã đ c b sung (rsa)ấ ứ ậ ơ ả ượ ổ
IPv6 trên TUN đã đ c thêm vàoượ
7-5-2003 1.4.0 C i thi n an ninhả ệ
S a lôi , c i ti n và b sungữ ả ế ổ
15-5-2003 1.4.1 C i thi n , h tr cho Kernel 2.4ả ệ ỗ ợ
15-7-2003 1.4.2 C ng Windows đ u tiên xu t hi nổ ầ ấ ệ
4-8-2003 1.4.3 Phiên b n s a l i ( bug fix)ả ử ỗ
B ng 4.1: Các l n xu t b n c a phiên b n 1ả ầ ấ ả ủ ả
OpenVPN phiên b n 2ả
Song song v i vi c c i ti n và tri n khai phiên b n 1, vi c th nghi m đ i v i phiên b nớ ệ ả ế ể ả ệ ử ệ ố ớ ả
2 đ c ti n hành vào tháng 11/2003. Vào tháng 2/2004, phiên b n 2.0-test3 h ng đ nượ ế ả ướ ế
m c tiêu là m t máy ch OpenVPN có nhi u máy khách. Máy ch có nhi u máy khách nàyụ ộ ủ ề ủ ề
là m t trong nh ng đ c tính n i b t nh t c a OpenVPN hi n nay, vài máy khách có thộ ữ ặ ổ ậ ấ ủ ệ ể
liên k t v i máy ch VPN trên cùng m tc ng. Vào 22/2/2004, hai nhánh phát tri n là 1.6-ế ớ ủ ộ ổ ể
beta7 và 2.0-test3 đ c k t h p l i và phát tri n sâu thêm đ t o ra phiên b n 2ượ ế ợ ạ ể ể ạ ả
Qua 29 b n th nghi m, 20 b n beta, va 20 b n “ ng c viên” thì đ n 17 tháng 7 nămả ử ệ ả ả ứ ử ế
2005 thì OpenVPN phiên b n 2.0 chính th c đ c phát hành. Danh sách sau đây là danhả ứ ượ
sách t ng quan ng n g n c a nh ng đ c tính đ c thêm vào OpenVPN phiên b n 2:ổ ắ ọ ủ ữ ặ ượ ở ả
•H tr multi-client: OpenVPN đ a ra m t ch đ k t n i đ c bi t, đó nh ng đãỗ ợ ư ộ ế ộ ế ố ặ ệ ở ữ
đ c xác th c b ng TLS s đ c cung c p d li u v IP và ho t đ ng m ng ki uượ ự ằ ẽ ượ ấ ữ ệ ề ạ ộ ạ ể
DHCP. V i cách này, m t s đ ng h m ( t i đa là 128) có th liên l c qua cùngớ ộ ố ườ ầ ố ể ạ
m t c ng TCP ho c UDP.ộ ổ ặ
•Tùy ch n Push/pull: Vi c cài đ t m ng c a clients có th đ c đi u khi n b iọ ệ ặ ạ ủ ể ượ ề ể ở
sever. Sau khi hoàn thành cài đ t m ng c a m t đ ng h m, sever có th cho phépặ ạ ủ ộ ườ ầ ể

client ( c Windows và Linux) s d ng nh ng s cài đ t m ng khác nhau ngay l pả ử ụ ữ ự ặ ạ ậ
t c.ứ
•B sung m t Management interface- giao di n qu n lý (Telnet).ổ ộ ệ ả
•Ph n m m và driver trên Window đ c phát tri n r ng rãiầ ề ượ ể ộ
OpenVPN phiên b n 2.1ả
Vào gi a năm 2005, các nhà phát tri n OpenVPN ti p t c cho ra phiên b n m i là 2.1. Bênữ ể ế ụ ả ớ
c nh phiên b n này, m t phiên b n th ng m i 3.0 cũng đang đ c phát tri n. Đ u thángạ ả ộ ả ươ ạ ượ ể ầ
10/2008 b n quy n OpenVPN đ c chuy n cho công ty OpenVPN Technologies, Inc; m tả ề ượ ể ộ
công ty do James Jonan sáng l p. Công ty này làpháttri nm t s s n ph md aậ ể ộ ố ả ẩ ự
trênOpenVPNcho các thi t l p kinh doanh. C haiphiên b nv i s h tr th ngm ivàế ậ ả ả ớ ự ỗ ợ ươ ạ
thi t b ph n c ng,d ch v và h tr ,và m t giao di nqu n lýd a trên webs có s n.Tế ị ầ ứ ị ụ ỗ ợ ộ ệ ả ự ẽ ẵ ừ
năm 2008, thi t k l itrang web c aOpenVPNđãph nánhm t cách ti p c nchuyênế ế ạ ủ ả ộ ế ậ
nghi pđ i v ikhách hàng doanh nghi p.ệ ố ớ ệ
Ngu n : vnpro.orgồ