Tải bản đầy đủ (.pdf) (81 trang)

NGHIÊN CỨU VÀ TRIỂN KHAI MẠNG RIÊNG ẢO VPN TRÊN RASPBERRY PI

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (5.03 MB, 81 trang )

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ GTVT
KHOA CÔNG NGHỆ THÔNG TIN

Trần Anh Khoa

NGHIÊN CỨU VÀ TRIỂN KHAI MẠNG RIÊNG ẢO
VPN TRÊN RASPBERRY PI

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: CNKT Điện Tử Truyền Thông

HÀ NỘI - 2018


TRƯỜNG ĐẠI HỌC CÔNG NGHỆ GTVT
KHOA CÔNG NGHỆ THÔNG TIN

Trần Anh Khoa

NGHIÊN CỨU VÀ TRIỂN KHAI MẠNG RIÊNG ẢO
VPN TRÊN RASPBERRY PI

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: CNKT Điện Tử Truyền Thông

Cán bộ hướng dẫn: ThS. Lê Thị Hồng Vân

HÀ NỘI - 2018


TĨM TẮT


Tóm tắt: Sự bùng nổ của cơng nghệ thơng tin, cách mạng công nghiệp 4.0, các thiết bị,
các dự án IoT phát triển mạnh kèm theo đó là những vấn đề về an tồn thơng tin qua Internet,
các cá nhân, tổ chức cần có những phương án bảo vệ dữ liệu cho riêng mình. Một trong những
giải pháp tối ưu được ưa chuộng là VPN mà trong đó OpenVPN là một giải pháp khá thông
dụng hiện tại. Nội dung của đồ án sẽ tập trung vào việc tìm hiểu về OpenVPN và triển khai nó
trên một máy tính nhỏ, tiết kiệm điện năng là Raspberry Pi qua đó có thể thiết lập một mạng
riêng ảo, bảo vệ thông tin cho chính chúng ta trong thời buổi kết nối mạng có ở mọi nơi.
Từ khóa: Raspberry Pi, OpenVPN


LỜI CAM ĐOAN
Em xin cam đoan đây là đồ án do riêng em thực hiện dưới sự hướng dẫn của giảng
viên hướng dẫn. Các tài liệu trong đồ án là trung thực, có nguồn trích dẫn rõ ràng, minh
bạch, có tính kế thừa và phát triển từ các tài liệu tham khảo và chương trình.
Em xin hồn tồn chịu trách nhiệm về lời cam đoan danh dự của em!
Hà Nội, ngày 26 tháng 6 năm 2018
Tác giả đồ án

Trần Anh Khoa


LỜI CẢM ƠN
Lời đầu tiên em xin gửi lời tri ân và biết ơn sâu sắc đến ThS. Lê Thị Hồng Vân,
người hướng dẫn đồ án tốt nghiệp đã tận tình chỉ bảo, động viên, khích lệ em trong suốt
q trình nghiên cứu và thực hiện đề tài.
Em xin cảm ơn các thầy cô khoa Công Nghệ Thông Tin, trường Đại học Công
Nghệ Giao Thông Vận Tải, đặc biệt các thầy cô trong bộ môn Điện tử viễn thông đã
nhiệt tình giảng dạy và tạo mọi điều kiện giúp đỡ em trong suốt quá trình quá trình học
tập và nghiên cứu.
Cuối cùng em xin trân thành cám ơn những người thân trong gia đình em cùng

tồn thể bạn bè ln giúp đỡ động viên em những lúc gặp phải khó khăn trong quá trình
làm đồ án.
Em xin chân thành cảm ơn !


MỤC LỤC
MỞ ĐẦU ..................................................................................................................... 1
CHƯƠNG 1: TỔNG QUAN VỀ RASPBERRY PI VÀ CÔNG NGHỆ VPN ......... 2
1.1. TỔNG QUAN VỀ RASPBERRY PI ................................................................. 2
1.1.1. Giới thiệu về Raspberry Pi........................................................................... 2
1.1.2. Cấu trúc và thành phần của Raspberry Pi 3 model B .................................... 2
1.1.3. Cài đặt ban đầu cho Raspberry Pi ................................................................ 5
1.1.4. Ứng dụng của Raspberry Pi ....................................................................... 11
1.2. TỔNG QUAN VỀ CÔNG NGHỆ VPN. .......................................................... 12
1.2.1. Giới thiệu về công nghệ VPN. ................................................................... 12
1.2.2. Ưu nhược điểm của VPN........................................................................... 14
1.2.3. Các thành phần cần thiết để tạo kết nối VPN ............................................. 15
1.2.4. Một số các giao thức VPN ......................................................................... 16
1.2.5. Kết nối....................................................................................................... 19
1.2.6. VPN và an toàn bảo mật ............................................................................ 23
CHƯƠNG 2: GIẢI PHÁP XÂY DỰNG VPN TRÊN RASPBERRY PI SỬ DỤNG
OPENVPN................................................................................................................ 26
2.1. MỘT SỐ GIẢI PHÁP VPN TRÊN RASPBERRY PI ...................................... 26
2.1.1. PPTP VPN ................................................................................................ 26
2.1.2. PiVPN ....................................................................................................... 27
2.1.3. OpenVPN .................................................................................................. 28
2.2. GIẢI PHÁP XÂY DỰNG VPN SỬ DỤNG OPENVPN. ................................. 28
2.2.1. Giới thiệu về OpenVPN............................................................................. 28
2.2.2. Bảo mật trong OpenVPN ........................................................................... 31
2.2.3. Giải pháp OpenVPN .................................................................................. 38

2.2.4. So sánh OpenVPN với một số giải pháp VPN khác ................................... 44
CHƯƠNG 3: THỰC NGHIỆM .............................................................................. 46
3.1. MƠ HÌNH TRIỂN KHAI VÀ KỊCH BẢN ...................................................... 46
3.1.1. Mơ hình triển khai ..................................................................................... 46
3.1.2. Kịch bản .................................................................................................... 46
3.2. CÁC BƯỚC THỰC HIỆN .............................................................................. 47
3.3. KIỂM TRA KẾT QUẢ .................................................................................... 64


KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN .................................................................. 67
TÀI LIỆU THAM KHẢO.......................................................................................... 68


DANH MỤC HÌNH ẢNH
Chương 1.
Hình 1. 1. Máy tính Raspberry Pi 3 Model B ............................................................... 2
Hình 1. 2. Cấu trúc Raspberry Pi 3 Model B ................................................................ 4
Hình 1. 3. Hệ điều hành Raspbian ................................................................................ 5
Hình 1. 4. Image Raspbian Stretch ............................................................................... 6
Hình 1. 5. Phần mềm SD Card Formatter ..................................................................... 6
Hình 1. 6. Phần mềm Win32 Disk Imager .................................................................... 7
Hình 1. 7. Kết nối Raspberry Pi với nguồn và Modem ................................................. 7
Hình 1. 8. Giao diện đồ họa Raspbian .......................................................................... 9
Hình 1. 9. Địa chỉ IP của Raspberry Pi ....................................................................... 10
Hình 1. 10. Kết nối SSH qua phần mềm Putty ........................................................... 10
Hình 1. 11. Kết nối chia sẻ file với Raspberry Pi bằng phần mềm WinSCP ............... 11
Hình 1. 12. VPN ........................................................................................................ 13
Hình 1. 13. Giao thức L2F ......................................................................................... 16
Hình 1. 14. Giao thức L2TP ....................................................................................... 16
Hình 1. 15. Giao thức PPTP ....................................................................................... 17

Hình 1. 16. Giao thức GRE ........................................................................................ 18
Hình 1. 17. Giao thức IPSec ....................................................................................... 18
Hình 1. 18. Remote Access VPN ............................................................................... 20
Hình 1. 19. Site-to-Site VPN...................................................................................... 22
Hình 1. 20. Thiết lập kết nối Client to Server ............................................................. 23
Chương 2.
Hình 2. 1. Giao diện cài đặt PiVPN............................................................................ 27
Hình 2. 2. Cấu trúc mơ hình SSL ............................................................................... 32
Hình 2. 3. Hoạt động của SSL Record Protocol ......................................................... 33
Hình 2. 4. Giao thức bắt tay giai đoạn 1 ..................................................................... 34
Hình 2. 5. Giao thức bắt tay giai đoạn 2 ..................................................................... 35
Hình 2. 6. Giao thức bắt tay giai đoạn 3 ..................................................................... 35
Hình 2. 7. Giao thức bắt tay giai đoạn 4 ..................................................................... 36
Chương 3.
Hình 3. 1. Mơ hình triển khai ..................................................................................... 46
Hình 3. 2. Cài đặt OpenVPN và cập nhật OpenSSL ................................................... 47
Hình 3. 3. Copy easy-rsa và sửa đổi file vars ............................................................. 48


Hình 3. 4. Sửa đổi export EASY_RSA....................................................................... 48
Hình 3. 5. Cấp quyền, tạo các thiết lập ban đầu cần thiết để tạo chứng chỉ ................. 49
Hình 3. 6. Tạo chứng chỉ cho các Client .................................................................... 50
Hình 3. 7. Thay đổi mã hóa sang AES256.................................................................. 50
Hình 3. 8. Tạo Diffie Hellman dùng cho việc trao đổi khóa ....................................... 51
Hình 3. 9. Tạo ta.key tăng cường bảo mật .................................................................. 51
Hình 3. 10. File cấu hình cho Server OpenVPN ......................................................... 52
Hình 3. 11. File cấu hình cho Client ........................................................................... 53
Hình 3. 12. File Script cho phép Client truy cập Internet ............................................ 53
Hình 3. 13. Đặt IP của Raspberry Pi vào vùng "DMZ" .............................................. 54
Hình 3. 14. Cấu hình Port Forwarding ....................................................................... 55

Hình 3. 15. Đăng ký Hostname tại No-IP ................................................................... 55
Hình 3. 16. Cài đặt DUC trên Raspbian ..................................................................... 56
Hình 3. 17. Cài đặt dịch vụ IP DUC ........................................................................... 57
Hình 3. 18. Kiểm tra hoạt động của No-IP ................................................................. 57
Hình 3. 19. Cấp các quyền cần thiết cho Script "khoavpn" ......................................... 58
Hình 3. 20. Đóng zip các file cần thiết cho Client ...................................................... 58
Hình 3. 21. Truy cập Raspberry Pi bằng WinSCP ...................................................... 59
Hình 3. 22. Các file cấu hình cần thiết cho Client ...................................................... 59
Hình 3. 23. Đặt ca.crt, *.key, *.cert, ta.key vào file cấu hình Client ........................... 60
Hình 3. 24. Giao diện truy cập OwnCloud ................................................................. 63
Hình 3. 25. Kiểm tra kết nối 4G Viettel ..................................................................... 64
Hình 3. 26. Sử dụng Viscosity để kết nối với Server OpenVPN ................................. 64
Hình 3. 27. Kiểm tra kết nơi với Server OpenVPN .................................................... 65
Hình 3. 28. Kiểm tra gói tin bằng WireShark ............................................................. 66


DANH MỤC BẢNG BIỂU
Chương 1.
Bảng 1.1. Các câu lệnh cơ bản dùng cho Raspbian .................................................... 8
Bảng 1.2. So sánh VPN Client-to-Site và VPN Site-to-Site........................................ 24
Chương 2.
Bảng 2.1. Lịch sử phát triển OpenVPN phiên bản 1 ................................................... 29
Bảng 2.2. Lịch sử phát triển OpenVPN phiên bản 2 ................................................... 30
Bảng 2.3. Ba block IP cho Private Subnet ..................................................................38
Bảng 2.4. Key Files ...................................................................................................40
Bảng 2.5. So sánh OpenVPN với một số giải pháp VPN khác ...................................44


DANH MỤC KÝ HIỆU VÀ TỪ VIẾT TẮT
Từ viết tắt


Tiếng Anh

Tiếng Việt

ADSL

Asymmetric Digital Subscriber Line Đường dây thuê bao số bất đối
xứng

AES

Advanced Encryption Standard

Tiêu chuẩn mã hóa tiên tiến

ARM

Advanced RISC Machine

Cấu trúc vi xử lý kiểu RISC

CBC

Cipher Block Chaning

Mã hóa chuỗi khối

CPU


Centre Processor Unit

Bộ xử lý trung tâm

DMZ

Demilitarized Zone

Vùng mạng trung lập giữa mạng
nội bộ và mạng Internet

DNS

Domain Name System

Hệ thống phân giải tên miền

GPIO

General Purpose Input Output

Cổng đầu vào và đầu ra với mục
đích cơ bản

GPU

Graphic Processing Unit

Bộ xử lý đồ họa


GRE

Generic Routing Encapsulation

Giao thức đóng gói định tuyến
chung

HDMI

High-Definition Multimedia
Interface

Giao diện đa phương tiện độ
phân giải cao

HMAC

Hashing Message Authentication
Codes

Hàm băm xác thực

IoT

Internet of Thing

Mạng lưới các thiết bị kết nối
Internet

IP


Internet Protocol

Giao thức Internet

IPSEC

Internet Protocol Security

Giao thức bảo mật Internet

ISP

Internet Service Provider

Nhà cung cấp dịch vụ Internet

LAN

Local Area Network

Mạng nội bộ

L2F

Layer 2 Forwarding

Giao thức lớp 2

L2TP


Layer 2 Tunneling Protocol

Giao thức đường hầm lớp 2


LPDDR

Low Power Dance Dance
Revolution

DRAM dành cho thiết bị di động

MPLS

Multi Protocol Label Switching

Chuyển mạch nhãn đa giao thức

NAT

Network Address Translation

Biên dịch địa chỉ mạng

NAS

Network-Attached Storage

Lưu trữ mạng


PPP

Point-to-Point Protocol

Giao thức điểm-điểm

PPTP

Point-to-Point Tunneling Protocol

Giao thức đường hầm điểmđiểm

SD

Secure Digital

Định dạng thẻ lưu trữ trên các
thiết bị di động

SHA

Secure Hash Algorithm

Thuật giải băm an toàn

SSH

Secure Shell


Giao thức thiết lập kết nối mạng
bảo mật

SSL

Secure Socket Layer

Chuẩn an ninh cơng nghệ tồn
cầu

TCP

Transmission Control Protocol

Giao thức điều khiển truyền vận

TLS

Transport Layer Security

Bảo mật tầng truyền tải

USB

Universal Serial Bus

Chuẩn kết nối tuần tự

VPN


Virtual Private Network

Mạng riêng ảo

Lưu ý: Một số từ đã được giải thích trong đồ án.


MỞ ĐẦU
Với sự phát triển của công nghệ thông tin, mạng máy tính và đặc biệt là mạng
Internet phát triển ngày càng đa dạng và phong phú. Các dịch vụ trên mạng Internet đã
xâm nhập vào hầu hết các lĩnh vực trong đời sống xã hội. Các thông tin trao đổi trên
Internet cũng đa dạng cả về nội dung và hình thức, trong đó có rất nhiều thơng tin cần
bảo mật cao bởi tính kinh tế, tính chính xác và độ tin cậy của nó.
Miễn phí, đó là những điểm truy cập mạng không dây ở mọi nơi, nhưng bạn
không nên kiểm tra tài khoản cá nhân, tài khoản ngân hàng ở những nơi như vậy nếu
bạn khơng muốn có người nhịm ngó, đánh cắp dữ liệu. Vậy giải pháp là gì? Đó là
mạng riêng ảo, hay cịn gọi là VPN.
Một VPN sẽ mở rộng mạng riêng của bạn đến nơi cơng cộng, vậy nên dù bạn có
dùng một điểm truy cập Wi-fi công cộng, dữ liệu gửi và nhận của bạn vẫn được mã
hóa và bảo đảm an tồn.
Có rất nhiều cách để thiết lập một VPN, bao gồm cả trả phí và miễn phí, mỗi giải
pháp đều có ưu nhược điểm riêng, được quyết định bởi cách nhà cung cấp dịch vụ VPN
hoạt động, chi phí và các tùy chọn VPN được nhà cung cấp dịch vụ cung cấp.
Cách dễ dàng và tiết kiệm chi phí nhất để giữ cho dữ liệu của bạn an toàn là hạn
chế truy cập những điểm Wi-fi cơng cộng. Tuy nhiên đó khơng cịn là vấn đề khi bạn
có thể tự tạo một Server VPN tại nhà và chạy nó trên một thiết bị nhỏ, tiết kiệm năng
lượng là Raspberry Pi.
Nội dung đề tài gồm 3 chương tập trung vào tìm hiểu máy tính Raspberry Pi, tìm
hiểu về cơng nghệ VPN nói chung cũng như OpenVPN nói riêng. Qua đó nêu lên được
tính cần thiết của VPN cũng như việc triển khai VPN trên Raspberry Pi là một giải pháp

tiết kiệm, an tồn, bảo mật thơng tin cho chính mỗi cá nhân.

1


CHƯƠNG 1: TỔNG QUAN VỀ RASPBERRY PI VÀ CÔNG NGHỆ VPN
1.1. TỔNG QUAN VỀ RASPBERRY PI
1.1.1. Giới thiệu về Raspberry Pi
Raspberry Pi được phát triển bởi Eben Upton ra mắt năm 2012 là một máy vi tính
nhỏ, giá rẻ (35$), kích thước chỉ bằng một thẻ tín dụng, tiết kiệm điện năng (nguồn cung
cấp chỉ 5V). Raspberry Pi sử dụng hệ điều hành Linux bởi đặc điểm đòi hỏi cấu hình
thấp, nguồn mở và có tính lập trình cao hơn so với Windows.

Hình 1. 1. Máy tính Raspberry Pi 3 Model B
Raspberry Pi là một bo mạch, muốn Raspberry Pi trở thành máy tính thực thụ, ta
phải kết nối Raspberry Pi với các thiết bị ngoại vi như màn hình, bàn phím và chuột
thơng qua các cổng kết nối trên bo mạch, cấp nguồn cho Raspberry Pi bằng microUSB
5V. Trong phần cấu trúc Raspberry Pi, sẽ trình bày chi tiết về các cổng kết nối của
Raspberry Pi.
Raspberry Pi cho phép mọi người ở mọi lứa tuổi có thể tìm hiểu, khám phá máy vi
tính, học lập trình với các ngơn ngữ lập trình như Python, C,... Với Raspberry Pi và hệ
điều hành Raspbian ta có thể làm được gần như tất cả mọi thứ mà một máy vi tính thơng
thường có thể làm.
1.1.2. Cấu trúc và thành phần của Raspberry Pi 3 model B
Cho đến thời điểm hiện tại (05/2018), Raspberry Pi có 3 mẫu chính, đó là:
Raspberry Pi 2 model B (2/2/2015), Raspberry Pi 3 model B (29/2/2016) và mới nhất là
Raspberry Pi 3 model B+ (14/3/2018). Về cơ bản, phần lớn cấu trúc của 3 mẫu này giống
nhau. Với đề tài này ta sẽ tìm hiểu về Raspberry Pi 3 model B.

2



a) Phần cứng
CPU: Raspberry Pi 3 model B sử dụng vi xử lý BCM2837 (nhanh hơn 50% so với
Raspberry Pi 2) của Broadcom. Đây là loại SoC (System on Chip) tích hợp cùng
lúc:
 CPU: 1.2 GHz quad-core ARM Corter A53 (cấu trúc ARMv8)
 RAM: 1 GB LPDDR2-900 SDRAM
 GPU: 400 MHz VideoCore IV
Khe cắm thẻ micro SD: Raspberry Pi không hỗ trợ ổ cứng mà thay vào đó là thẻ
micro SD. Tất cả dữ liệu sẽ được lưu trữ trên thẻ micro SD này. Cần dùng ít nhất
là thẻ 4GB cho Raspberry Pi (khuyên dùng thẻ 16GB class 10).
Cổng USB: Raspberry Pi 3 model B có 4 cổng USB 2.0. Đủ để cắm các ngoại vi
cần thiết như chuột, bàn phím và USB Wireless.
Cổng Ethernet: Cổng Ethernet chuẩn RJ45.
Cổng HDMI: Dùng để truyền tín hiệu Video và Audio số. Có tới 14 chuẩn video
được hỗ trợ và tín hiệu HDMI có thể dễ dàng chuyển đổi thành các chuẩn khác
như DVI, RCA, hoặc SCART.
Ngõ ra Audio-Video: Giắc cắm chuẩn 3.5mm, hỗ trợ cho người dùng khơng có
màn hình hỗ trợ HDMI. Âm thanh và hình ảnh lấy ra từ cổng này có chất lượng
kém hơn một chút so với từ cổng HDMI.
Cổng cấp nguồn Micro USB: Một trong những điều đầu tiên có thể nhận thấy là
Raspberry Pi khơng có nút nguồn. Micro USB được chọn làm cổng cấp nguồn.
Nguồn cấp cho Raspberry Pi là 5v điện áp (bắt buộc) và dòng nên lớn hớn 1A. Cấp
nguồn quá 5v sẽ rất dễ làm cháy board mạch.
Cổng CSI (Camera Serial Interface): Cổng này dùng để kết nối với module
Camera riêng của Raspberry Pi. Module này thu được hình ảnh chất lượng lên đến
1080p.
Network: 10/100 MBPS Ethernet, 802.11n Wireless LAN, Bluetooth 4.0.


3


GPIO (General Purpose Input and Output): Giống như các chân của vi điều
khiển, các IO này của Raspberry Pi cũng được sử dụng để xuất tín hiệu ra LED,
thiết bị… hoặc đọc tín hiệu vào từ các nút nhấn, cơng tắc,cảm biến… Ngồi ra cịn
có các IO tích hợp các chuẩn truyền dữ liệu UART, I2C và SPI.

Hình 1. 2. Cấu trúc Raspberry Pi 3 Model B
b) Phần mềm
Raspberry Pi sử dụng hệ điều hành dựa trên nền tảng Linux, có rất nhiều hệ điều
hành hỗ trợ Raspberry Pi, trong đó có Raspbian là hệ điều hành chính thức
của Raspberry Pi Foundation, ngồi ra có 7 hệ điều hành khác được xác nhận hỗ trợ và
kha khá hệ điều hành do các nhà phát triển tự tối ưu.
Một số hệ điều hành thông dụng cho Raspberry Pi:
 Raspbian: Là hệ điều hành do Raspberry Pi Foundation cung cấp, được
khuyên dùng cho người mới làm quen với Raspberry Pi. Dùng để sử dụng
nhiều tác vụ như: Lướt Web, soạn thảo văn bản, nghe nhạc, xem phim, sử
dụng như một Server cung cấp các dịch vụ Web, File, VPN, Print,… Hoạt
động ổn định, tốc độ nhanh.
 Ubuntu Mate: Là hệ điều hành được phát triển từ Ubuntu, giao diện bắt mắt,
tối ưu tốt cho Raspberry Pi, sử dụng thẻ SD class 6 trở lên để được tối ưu tốt
nhất.

4


 Windows 10 IoT Core: Có nhân của Windows, khơng có giao diện đồ họa
hay các phần mềm Office, được sử dụng cho các dự án IoT.
 Pidora: Là phiên bản của Fedora được tối ưu cho Raspberry Pi, có sẵn giao

diện đồ họa. Giành cho những ai đã quen xài Fedora.
1.1.3. Cài đặt ban đầu cho Raspberry Pi
Theo cấu trúc, Raspberry Pi khơng tích hợp ổ cứng trên bo mạch, do đó hệ điều
hành của Raspberry Pi được cài đặt trên một thẻ micro SD. Để cài đặt hệ điều hành cho
Raspberry Pi, ta có thể sử dụng NOOBS (New Out Of the Box Software), là một trình
quản lý cài đặt hệ điều hành cho Raspberry Pi hoặc chọn một hệ điều hành xác định
trước để cài đặt như Pidora, Raspbian,...
Người mới sử dụng Raspberry Pi nên cài đặt hệ điều hành Raspbian hoặc Pidora,
vì hai hệ điều hành này dễ tiếp cận nhất.
a) Cài đặt hệ điều hành cho Raspberry Pi
Trong phần này, ta sẽ cài đặt hệ điều hành Raspbian lên Raspberry Pi 3 model B.
Để cài đặt hệ điều hành Raspbian cho Raspberry Pi, ta sử dụng Image “2018-0418-raspbian-stretch”. Với một thẻ micro SD trống (tối thiểu 8GB, tốt nhất là 16GB trở
lên), ta có thể tải miễn phí và cài đặt hệ điều hành Raspbian lên thẻ micro SD.
Để cài đặt hệ điều hành cho Raspberry Pi, thực hiện theo quy trình sau:
Tải Raspbian tại:
/>Chọn Download ZIP bên dưới RASPBIAN STRETCH WITH DESKTOP.

Hình 1. 3. Hệ điều hành Raspbian

5


Lưu ý: Có 2 gói Raspbian khác nhau, một gói Raspbian và Raspbian lite. Gói Raspbian
lite sẽ cần kết nối Internet để tải hết toàn bộ dung lượng cài đặt.
Sau khi tải về hồn tất, ta có gói “2018-04-18-raspbian-stretch.zip”. Giải nén gói
zip này, ta sẽ có Image “2018-04-18-raspbian-stretch.img”

Hình 1. 4. Image Raspbian Stretch
Định dạng (Format) thẻ micro SD:
Tải SD Card Formatter tại:

/>Mở SD Card Formatter để tiến hành định dạng thẻ micro SD.
Kết nối thẻ micro SD với máy tính qua thiết bị đọc thẻ, chú ý ký tự đại diện cho
thẻ (D, G hay H …) -> Tiến hành chọn Format để định dạng lại thẻ micro SD.

Hình 1. 5. Phần mềm SD Card Formatter
Ghi hệ điều hành Raspbian lên thẻ micro SD:
Tải Win32DiskImager tại:
/>
6


Mở Win32DiskImager -> chọn Image “2018-04-18-raspbian-stretch.img” và tiến
hành Write để chương trình ghi hệ điều hành lên thẻ micro SD.

Hình 1. 6. Phần mềm Win32 Disk Imager
Cài đặt các thiết bị sẵn sàng sử dụng Raspberry Pi:
Một nguồn 5V-2A (cổng kết nối microUSB), một thẻ micro SD đã cài đặt
Raspbian, một cáp HDMI, một bàn phím và một chuột USB. Kết nối bàn phím và chuột
qua 2 cổng USB 2.0 trên Raspberry Pi, kết nối Raspberry Pi đến một màn hình qua cáp
HDMI.
Lưu ý: Với đề tài này, ta sẽ cấu hình qua Putty vì vậy khơng cần kết nối các thiết bị ngoại
vi như bàn phím, chuột, màn hình,….
Cắm nguồn microUSB để cung cấp nguồn điện và khởi động Raspberry Pi.

Hình 1. 7. Kết nối Raspberry Pi với nguồn và Modem
Như vậy, ta đã hoàn thành cài đặt ban đầu cho Raspberry Pi 3 model B.

7



a) Câu lệnh
Dòng lệnh là một thế mạnh của hệ điều hành Linux, thành thạo lệnh Linux sẽ giúp
ta sử dụng Raspberry Pi nhanh, mạnh mẽ hơn nhiều so với sử dụng giao diện đồ họa,
đồng thời, thể hiện sự chuyên nghiệp của người dùng.
Ta sẽ tìm hiểu một số lệnh cơ bản thực hiện công việc trên Raspberry Pi.
Bảng 1.1. Các câu lệnh cơ bản dùng cho Raspbian
Ý nghĩa

Câu lệnh
ls

Listing. Liệt kê tất cả File và Folder hiện có trong thư mục

cd

Change directory. Chuyển sang thư mục khác

mkdir

Make directory. Tạo New Folder

rmdir

Remove directory. Xóa thư mục

mv

Move. Di chuyển File hay Folder.

rm


Remove. Xóa File.

nano

Open Nano text editor. Mở trình soạn thảo văn bản Nano

sudo

Câu lệnh được sử dụng bởi super user

shutdown -h now Tắt Raspberry Pi ngay lập tức
reboot

Khởi động lại Raspberry Pi

apt-get install

Cài đặt phần mềm (package) mới

apt-get remove

Gỡ bỏ (uninstall) package

apt-get purge

Uninstall hoàn toàn. Kể cả những settings và log.

apt-get update


Cập nhật danh sách package mới nhất

apt-get upgrade

Nâng cấp tất cả package hiện có trong máy lên phiên bản mới
nhất

raspi-config

Mở menu thiết lập cấu hình Raspberry Pi hay Raspbian.

chown

Thay đổi quyền (permission) của một file hay folder

chmod

Thay đổi chủ sở hữu của một tập tin

su

Super user. Siêu người dùng

iptables

Cấu hình các bảng Firewall trong nhân Linux

8



b) Giao diện
Ở giao diện đồ họa, mọi thứ sẽ trở nên trực quan, dễ nhìn hơn so với dịng lệnh.
Các thao tác cơ bản khá giống với hệ điều hành Window thông dụng với các chức
năng cơ bản như trình duyệt, Menu, quản lý File, Command, Wifi, Bluetooth,…

Hình 1. 8. Giao diện đồ họa Raspbian
c) Điều khiển
Vì Raspberry Pi là một máy tính khơng hồn chỉnh, vì vậy muốn vận hành được ta
phải kết nối Raspberry Pi với đầy đủ các thiết bị ngoại vi cần thiết, đôi khi tạo sự bất
tiện khi muốn thao tác với Raspberry Pi đối với người thường xuyên di chuyển.
Để có thể thao tác với Raspberry Pi mọi lúc, mọi nơi mà không cần phải di chuyển
Raspberry Pi, ta có thể sử dụng phần mềm Putty để sử dụng Raspberry Pi ở giao diện
dòng lệnh, và WinSCP để chia sẻ File với mọi thiết bị khác, chỉ cần biết địa chi IP, user
và password để kết nối Raspberry Pi.
Để biết được địa chỉ IP của của Raspberry Pi, từ cửa sổ dòng lệnh, gõ “ifconfig”.

9


Hình 1. 9. Địa chỉ IP của Raspberry Pi
Khi dùng lệnh “ifconfig”, ta có được địa chỉ IP của Raspberry Pi, sử dụng địa chỉ
IP này nhập vào phần mềm Putty hoặc WinSCP để kế nối đến Raspberry Pi từ máy tính
khác.

Hình 1. 10. Kết nối SSH qua phần mềm Putty
Để điều khiển Raspberry Pi bằng phần mềm Putty, chạy phần mềm Putty -> nhập
địa chỉ IP của Raspberry Pi -> chọn Open -> nhập user và password của Raspberry Pi.

10



Khi đã kết nối tới Raspberry Pi, từ giao diện dịng lệnh của phần mềm Putty, ta có
thể điểu khiển Raspberry Pi bằng lệnh giống như khi thao tác trên Raspberry Pi thực sự.
Tải Putty tại:
/>Để chia sẻ file từ Raspberry Pi với các máy tính khác bằng WinSCP, chạy phần
mềm WinSCP -> nhập địa chỉ IP của Raspberry Pi -> chọn Login -> nhập User và
Password của Raspberry Pi.
Tải WinSCP tại:
/>
Hình 1. 11. Kết nối chia sẻ file với Raspberry Pi bằng phần mềm WinSCP
Khi đã kết nối tới Raspberry Pi, ta có thể luân chuyển File giữa Raspberry Pi và
các máy tính khác.
Như vậy, với phần mềm Putty và WinSCP ta có thể kết nối và thao tác trên
Raspberry Pi mà không cần phải làm việc trực tiếp trên Raspberry Pi, giúp công việc
tiện lợi hơn rất nhiều.
1.1.4. Ứng dụng của Raspberry Pi
Raspberry Pi được ưa chuộng không chỉ vì giá thành rẻ, tiêu tốn ít điện năng mà
cịn về tính ứng dụng của nó. Raspberry Pi được sử dụng cho rất nhiều các dự án khoa
học và học tập. Raspberry Pi có thể kết nối với nhiều loại thiết bị ngoại vi và tương

11


tương tác với thế giới bên ngồi. Raspberry Pi có thể được sử dụng cho nhiều ứng dụng
khác nhau, từ đơn giản đến phức tạp như:
 Một máy tính cơ bản dùng để lướt web, xem phim
 Một ổ cứng sao lưu dữ liệu trên mạng nội bộ
 Điều khiển robot
 Tạo các Server
 Điều khiển các thiết bị

a) Biến Raspberry Pi thành máy chủ lưu trữ đám mây với OwnCloud
Lưu trữ các File, thư mục, danh bạ, thư viện ảnh, lịch,… Có thể truy cập nó từ điện
thoại di động, máy tính, hoặc trình duyệt web.
Dịch vụ đám mây này cho phép đồng bộ hóa tất cả các tập tin của, địa chỉ liên lạc,
hình ảnh, lịch,… đồng bộ hóa giữa các thiết bị.
Trong thời đại cơng nghệ với dịch vụ Facebook, Twitter, Google+,… OwnCloud
phép ta chia sẻ dữ liệu với những người khác và chia sẻ công khai hay riêng tư theo nhu
cầu.
Giao diện người dùng dễ dàng cho phép ta quản lý , tải lên, tạo người dùng,… một
cách rất dễ dàng.
Một tính năng đặc biệt cho dù người dùng có lỡ may xóa tệp tin thì họ vẫn có thể
lấy lại tệp tin đó trong thùng rác. Hệ thống cài đặt mặc định trong khoảng thời gian nhất
định 30 ngày sẽ xóa tồn bộ dữ liệu trong thùng rác.
Tính năng tìm kiếm trong OwnCloud rất mạnh được thực hiện trong nền và cho
phép người dùng tìm kiếm theo tên cũng như loại tập tin .
Tạo không giới hạn người dùng, và phân quyền cho họ.
Hỗ trợ client dành cho Windows, Mac OS, iOS và Android.
1.2. TỔNG QUAN VỀ CƠNG NGHỆ VPN.
1.2.1. Giới thiệu về cơng nghệ VPN.
Virtual Private Network (mạng riêng ảo) thường được gọi tắt là VPN là một kỹ
thuật đã xuất hiện từ lâu, tuy nhiên nó thực sự bùng nổ và trở nên cạnh tranh khi xuất
hiện công nghệ mạng thông minh với đà phát triển mạnh mẽ của Internet.

12


VPN là một mơ hình mạng tận dụng lại những cơ sơ hạ tầng hiện có của Internet.
Với mơ hình mạng này, người ta không phải đầu tư thêm nhiều về cơ sở hạ tầng và các
tính năng như bảo mật, độ tin cậy đảm bảo, đồng thời có thể quản lý riêng được sự hoạt
động của mạng này. VPN cho phép người sử dụng làm việc tại nhà, trên đường đi hay

văn phịng chi nhánh kết nối an tồn đến máy chủ. Trong nhiều trường hợp VPN cũng
giống như WAN (Wide Area Network), tuy nhiên đặc tính quyết định của VPN là chúng
có thể dùng mạng cơng cộng như Internet mà đảm bảo tính riêng tư và tiết kiệm hơn
nhiều.
VPN được hiểu đơn giản như là sự mở rộng của một mạng riêng (Private Network)
thông qua các mạng công cộng. Về căn bản, mỗi VPN là một mạng riêng lẻ sử dụng một
mạng chung (thường là Internet) để kết nối cùng các Site (các mạng riêng lẻ) hay nhiều
người dùng từ xa. Thay cho việc sử dụng bởi một kết nối thực, chuyên dụng như đường
Lease Line, mỗi VPN sử dụng các kết nối ảo được dẫn đường qua Internet từ mạng riêng
của công ty tới các Site hay các nhân viên từ xa.
Để có thể gửi và nhận dữ liệu thông qua mạng công cộng mà vẫn đảm bảo tính an
tồn và bảo mật, VPN cung cấp cơ chế mã hóa dữ liệu trên đường truyền tạo ra một
đường hầm bảo mật giữa nơi nhận và nơi gửi (Tunnel) giống như một kết nối Point-toPoint trên mạng riêng. Để có thể tạo ra một đường hầm bảo mật đó, dữ liệu phải được
mã hóa hay che dấu đi, chỉ cung cấp phần đầu gói dữ liệu (Header) là thơng tin về đường
đi cho phép nó có thể đi đến đích thơng qua mạng cơng cộng một cách nhanh chóng. Dữ
liệu được mã hóa một cách cẩn thận do đó nếu các Packet bị bắt lại trên đường truyền
cơng cộng cũng khơng thể đọc được nội dung vì khơng có khóa để giải mã. Liên kết với
dữ liệu được mã hóa và đóng gói được gọi là kết nối VPN. Các đường kết nối VPN
thường được gọi là đường hầm VPN (VPN Tunnel).

Hình 1. 12. VPN

13


×