Tin tức và phân tích của tất cả các thiết bị di động

Cách lưu trữ VPN của riêng bạn với Algo và Cloud Hosting

Các công ty trên khắp thế giới bán dịch vụ VPN để bảo mật hoạt động trực tuyến của bạn, nhưng bạn có thực sự tin tưởng nhà cung cấp VPN không? Nếu muốn, bạn có thể tạo mạng riêng ảo của riêng mình bằng phần mềm Algoi mã nguồn mở của nhà cung cấp dịch vụ lưu trữ đám mây mà bạn đã chọn.

VPN và niềm tin

Bất kể chính sách quyền riêng tư nói gì hoặc khoe khoang về kiểm tra bảo mật trên blog của công ty, không có gì ngăn VPN giám sát mọi thứ bạn làm trực tuyến. Cuối cùng, việc chọn một dịch vụ VPN phụ thuộc vào sự tin tưởng.

Nếu bạn tin tưởng các dịch vụ trực tuyến vô danh, một giải pháp thay thế là chạy máy chủ VPN của riêng bạn. Đây từng là một nhiệm vụ khó khăn, nhưng nhờ có dự án mã nguồn mở Algo từ công ty bảo mật Trail of Bits, việc tạo VPN của riêng bạn giờ đây thật dễ dàng.

Phía sau 5 USD mỗi tháng, bạn có thể chạy và kiểm soát máy chủ VPN toàn thời gian của riêng mình. Hơn nữa, bạn có thể sử dụng Algo để thiết lập và gỡ bỏ các máy chủ VPN khi bạn cần và tiết kiệm tiền trong quá trình này.

Bạn cần sử dụng dòng lệnh để định cấu hình Algo. Nếu điều đó làm bạn sợ, đừng lo lắng – chúng tôi sẽ hướng dẫn bạn từng bước.

Những hướng dẫn này có vẻ nhiều, nhưng đó chỉ là do chúng tôi giải thích nhiều nhất có thể. Khi bạn đã tạo VPN với Algo một vài lần, sẽ không mất nhiều thời gian. Ngoài ra, bạn chỉ cần cấu hình môi trường cài đặt Algo một lần. Sau đó, bạn có thể tạo một máy chủ VPN mới chỉ bằng một vài lần nhấn phím.

Nhưng bạn có thể tin tưởng rằng các tập lệnh Algo không làm gì sai không? Tin tốt là mã của Algo được công khai trên GitHub cho mọi người xem. Ngoài ra, nhiều chuyên gia bảo mật quan tâm đến thiết kế Algo, giúp giảm khả năng phạm tội.

Algo có thể (và không thể) làm gì

VPN là một cách tốt để bảo vệ hoạt động trực tuyến của bạn – đặc biệt là trên Wi-Fi công cộng tại sân bay hoặc quán cà phê. VPN giúp duyệt web an toàn hơn và gây khó khăn hơn cho các thực thể độc hại có thể ở trên cùng một mạng Wi-Fi cục bộ. VPN cũng có thể hữu ích nếu ISP của bạn hạn chế một số loại lưu lượng nhất định, chẳng hạn như tải torrent.

Nhưng coi chừng, cướp biển! Tải xuống chiến lợi phẩm thông qua VPN của riêng bạn không phải là một ý tưởng hay vì hoạt động có thể dễ dàng truy ngược lại hơn.

Ngoài ra, nếu bạn muốn xem Netflix qua VPN, bạn sẽ phải tìm ở nơi khác – Algo không hoạt động với điều đó. Tuy nhiên, có nhiều dịch vụ thương mại hỗ trợ Netflix.

Điều kiện tiên quyết cho Algo

Để bắt đầu và chạy máy chủ Algo VPN, bạn cần có Unix Bash shell. Trên Mac hoặc Linux, bạn có thể sử dụng chương trình Terminal, nhưng trên hệ thống Windows bạn cần kích hoạt hệ thống con cho linux. Đây là cách cài đặt và sử dụng Linux Bash shell trên hệ thống của bạn Windows 10.

Bạn cũng sẽ cần một tài khoản với nhà cung cấp dịch vụ lưu trữ máy chủ đám mây. Algo hỗ trợ tất cả những điều sau đây:

DigitalOcean
Amazon buồm ánh sáng
Amazon EC2
Vultr
Microsoft Azure
Máy tính Google
quy mô
đám mây Hetzner
Nó cũng cài đặt trên các phiên bản OpenStack và CloudStack.

Nếu bạn chưa bao giờ sử dụng bất kỳ dịch vụ nào trong số này, chúng tôi khuyên dùng DigitalOcean vì nó rất thân thiện với người dùng. Đây cũng là dịch vụ chúng tôi sử dụng trong hướng dẫn này. Quy trình sẽ hơi khác nếu bạn đang sử dụng một nhà cung cấp khác.

Khi tài khoản DigitalOcean của bạn đã sẵn sàng để sử dụng, hãy đăng nhập rồi từ bảng điều khiển chính, chọn “API” từ thanh bên trái dưới tiêu đề “Tài khoản”.

Trên trang tiếp theo, nhấp vào “Tạo mã thông báo mới”. Mã thông báo truy cập là một chuỗi dài các chữ cái và số cho phép bạn truy cập tài nguyên tài khoản mà không cần tên người dùng hoặc mật khẩu. Bạn cần đặt tên cho mã thông báo mới. Nói chung, bạn nên đặt tên dựa trên ứng dụng bạn đang sử dụng, chẳng hạn như “algo” hoặc “ian-algo” (nếu tên của bạn là Ian).

Menu “Ứng dụng và API” của DigitalOcean.

Sau khi tạo mã thông báo mới, hãy sao chép và dán mã đó vào tài liệu văn bản trên màn hình của bạn. Bạn sẽ cần nó trong vài phút nữa.

Thiết lập môi trường

Quay trở lại màn hình nền của bạn, mở một cửa sổ đầu cuối mới, nhập cd (“thay đổi thư mục”, đó là tên của các thư mục trong thế giới Unix) và nhấn Enter. Điều này sẽ đảm bảo rằng bạn đang làm việc từ thư mục chính của thiết bị đầu cuối.

Tại thời điểm này, Algo yêu cầu Python 3.6 hoặc mới hơn. Nhập lệnh sau vào chương trình đầu cuối của bạn:

python3 --version

Nếu bạn nhận được câu trả lời như python 3.6.9, bạn có thể hành động; nếu không, bạn sẽ cần cài đặt python 3.

Để cài đặt trăn 3 trên máy Mac, bạn có thể sử dụng trình quản lý gói Homebrew. Khi Homebrew đã sẵn sàng hoạt động, hãy nhập lệnh sau vào cửa sổ đầu cuối:

brew install python3

Nếu bạn đang sử dụng Ubuntu Linux hoặc WSL trên hệ thống của mình Windowschúng nên mặc định là Python 3. Nếu không, các phương pháp cài đặt sẽ khác nhau tùy thuộc vào phiên bản Linux của bạn. Tìm kiếm trên web cho “cài đặt Python 3 trên [insert your version of Linux here]” để được hướng dẫn.

Sau đó, bạn cần cài đặt Virtualenv Python3 để tạo môi trường Python biệt lập cho Algo. Nhập thông tin sau vào Bash trên máy Mac của bạn:

python3 -m pip install --upgrade virtualenv

Trên Ubuntu Linux và WSL, lệnh như sau:

sudo apt install -y python3-virtualenv

Lưu ý rằng chúng tôi điều chỉnh hướng dẫn này cho Ubuntu và các bản phân phối có liên quan, nhưng những hướng dẫn này cũng sẽ hoạt động đối với các phiên bản Linux khác với những thay đổi nhỏ. Ví dụ: nếu bạn đang sử dụng CentOS, hãy thay thế hướng dẫn sử dụng apt bằng dnf.

Tiếp theo, chúng ta cần tải xuống Algo bằng lệnh wget. Máy Mac không được cài đặt Wget theo mặc định, vì vậy để tải xuống qua Homebrew, hãy nhập:

brew install wget

Tiện ích wget trong cửa sổ đầu cuối.Tiện ích wget tải xuống tệp cài đặt Algo.

Bây giờ hãy tải xuống các tệp Algo:

wget https://github.com/trailofbits/algo/archive/master.zip

Sau khi wget hoàn tất, bạn sẽ thấy một tệp nén có tên “master.zip” trong thư mục chính của thiết bị đầu cuối của bạn; hãy kiểm tra nó với ls.

Nếu bạn thấy “master.zip” trong danh sách các tệp và thư mục được hiển thị, thì bạn đã sẵn sàng. Nếu không, hãy thử chạy lại wget.

Bây giờ chúng tôi cần giải nén tệp, vì vậy chúng tôi gõ:

unzip master.zip

Nhấn lại ls khi hoàn tất. Bây giờ bạn sẽ thấy một thư mục mới trong thư mục chính của mình có tên là “algo-master”.

Chúng tôi gần như đã sẵn sàng để bắt đầu, nhưng trước tiên chúng tôi cần thiết lập môi trường biệt lập của mình và cài đặt một số phụ thuộc bổ sung. Lần này chúng ta sẽ làm việc trong thư mục “algo-master”.

Nhập thông tin sau để điều hướng đến thư mục:

cd ~/algo-master

Hãy chắc chắn rằng bạn đang ở đó với lệnh này:

pwd

Điều đó có nghĩa là “in thư mục làm việc” và sẽ hiển thị một cái gì đó như /home/Bob/algo-master hoặc /Users/Bob/algo-master. Bây giờ chúng ta đang ở đúng nơi, hãy chuẩn bị mọi thứ.

Sao chép và dán hoặc nhập lệnh bên dưới trên một dòng (không nhấn Enter hết):

python3 -m virtualenv --python="$(command -v python3)" .env && source .env/bin/activate && python3 -m pip install -U pip virtualenv && python3 -m pip install -r requirements.txt

Thiết bị đầu cuối Bash đang chạy trong cửa sổ thiết bị đầu cuối.

Điều này kích hoạt nhiều hành động trong thư mục Algo để chuẩn bị khởi chạy.

Tiếp theo, bạn cần đặt tên cho người dùng VPN của mình. Nếu bạn không đặt tên cho tất cả chúng ngay bây giờ, bạn sẽ phải giữ lại các khóa bảo mật của mình (kém an toàn hơn) hoặc bắt đầu một máy chủ mới từ đầu sau này.

Dù bằng cách nào, hãy nhập vào thiết bị đầu cuối:

nano config.cfg

Tệp cấu hình thuật toán trong cửa sổ đầu cuối.

Thao tác này sẽ mở ra trình soạn thảo văn bản dòng lệnh thân thiện với người dùng, Nano. Tệp cấu hình của Algo chứa rất nhiều thông tin, nhưng chúng tôi chỉ quan tâm đến phần có nội dung “người dùng”. Tất cả những gì bạn cần làm là xóa tên người dùng mặc định (điện thoại, máy tính xách tay, máy tính để bàn) và nhập tên của từng thiết bị bạn muốn trên VPN của mình.

Ví dụ: nếu tôi đang tạo VPN cho chính mình, Bill và Mary, thì tệp cấu hình có thể giống như sau:

users: - Ian_PC - Bill_Mac - Mary_PC - Ian_Android - Bill_iPhone - Mary_iPhone

Sau khi bạn đặt tên cho mọi người, nhấn Ctrl + O để lưu tệp, sau đó Ctrl + X để thoát.

Chúng tôi gần như đã sẵn sàng hoạt động, nhưng người dùng hệ thống trước tiên Windows họ phải đi xung quanh một chút. WSL thường không đặt đúng quyền của người dùng cho thư mục Algo, điều này cản trở Ansible (công cụ mà Algo dựa vào để triển khai máy chủ).

Trong WSL, hãy nhập thông tin sau để trở về thư mục chính của bạn:

cd

Sau đó nhập:

chmod 755 -R ~/algo-master

Để quay lại thư mục Algo, gõ:

cd ~/algo-master

Chạy thuật toán

Các tệp cài đặt thuật toán đang chạy trong cửa sổ đầu cuối.

Và bây giờ là thời điểm của sự thật.

Trong thư mục algo-master, gõ vào cửa sổ terminal:

./algo

Quá trình thiết lập thuật toán sẽ bắt đầu hoạt động. Bạn sẽ biết nó đang hoạt động khi nó hỏi bạn muốn sử dụng nhà cung cấp đám mây nào. Trong trường hợp của chúng tôi, chúng tôi chọn số (1) cho DigitalOcean.

Nếu Algo không thành công, có thể có nhiều nguyên nhân mà chúng tôi không thể dự đoán ở đây. Nếu lỗi cho biết thư mục của bạn là “có thể định cấu hình trên thế giới”, hãy làm theo hướng dẫn ở trên để thay đổi quyền.

Nếu bạn gặp lỗi khác, hãy xem trang Khắc phục sự cố trong kho lưu trữ dự án Algo trên GitHub. Bạn cũng có thể sao chép thông báo lỗi và dán vào Google để tìm kiếm. Bạn nên tìm một bài đăng trên diễn đàn sẽ hữu ích vì không chắc bạn là người đầu tiên nhận được lỗi này.

Sau đó, bạn sẽ được yêu cầu cung cấp mã thông báo truy cập mà bạn đã sao chép trước đó từ tài khoản DigitalOcean của mình. Sao chép và dán nó vào thiết bị đầu cuối. Bạn sẽ không thấy gì vì Bash không hiển thị các ký tự cho mật khẩu và cụm mật khẩu. Miễn là bạn nhấn dán và sau đó nhấn enter, bạn sẽ ổn thôi.

Nếu nó không thành công, bạn có thể làm hỏng việc dán, đó là điều mà mọi người làm trong Bash. Chỉ cần nhập thông tin sau để thử lại:

./algo

Trong khi Algo đang chạy, hãy trả lời các câu hỏi. Tất cả đều khá đơn giản như những gì bạn muốn gọi cho máy chủ (sử dụng “algo” trong tên là một ý tưởng hay).

Sau đó, nó sẽ hỏi bạn có muốn bật “Kết nối theo yêu cầu” cho thiết bị Mac và iOS hay không. Nếu bạn không sử dụng bất kỳ thiết bị nào trong số này, hãy nhập N là không. Nó cũng sẽ hỏi bạn có muốn giữ các khóa PKI để thêm nhiều người dùng hơn sau này hay không; nói chung, bạn cũng sẽ nhập N ở đây.

Đó là nó! Algo hiện sẽ mất khoảng 15 đến 30 phút để thiết lập và chạy máy chủ của bạn.

Sử dụng thuật toán

Biểu tượng WireGuard.

Khi Algo hoàn tất thiết lập, thiết bị đầu cuối sẽ quay lại dòng lệnh, điều đó có nghĩa là VPN đã sẵn sàng hoạt động. Giống như nhiều dịch vụ thương mại, Algo sử dụng giao thức WireGuard VPN, đây là giao thức mới hấp dẫn nhất trong thế giới VPN. Điều này là do nó cung cấp bảo mật tốt, tốc độ nhanh hơn và dễ sử dụng hơn.

Để làm ví dụ về những việc cần làm tiếp theo, chúng tôi kích hoạt Algo trong hệ thống Windows. Để định cấu hình các thiết bị khác, hãy tham khảo kho lưu trữ Algo GitHub.

Đầu tiên, chúng tôi sẽ cài đặt máy khách máy tính để bàn hệ thống chung Windows từ trang web WireGuard. Tiếp theo, chúng ta cần gửi cho chương trình tệp cấu hình của mình trên PC. Các tệp cấu hình được lưu trữ sâu trong thư mục algo-master tại: ~/algo-master/configs/[VPN server IP address]/bảo vệ dây/.

Có hai loại tệp để định cấu hình thiết bị máy khách VPN: .CONF và .PNG. Loại thứ hai là mã QR cho các thiết bị như điện thoại có thể quét mã QR. Tệp .CONF (cấu hình) là tệp văn bản dành cho máy khách máy tính để bàn WireGuard.

Trên Mac và Ubuntu, không khó để tìm thư mục algo-master bên ngoài dòng lệnh. Trên máy tính Mac, algo-master nằm trong thư mục gốc; chỉ cần sử dụng Finder > Go > Home để đến đó. Trong Ubuntu, bạn có thể mở Nautilus và nó sẽ nằm trong thư mục chính của bạn.

Tuy nhiên, trong hệ thống Windows WSL độc lập với phần còn lại của hệ điều hành. Vì lý do này, việc sao chép tệp bằng dòng lệnh sẽ dễ dàng hơn.

Sử dụng ví dụ trước, giả sử chúng ta muốn sử dụng tệp cấu hình “Mary-PC.conf” trên PC đang chạy Windows 10. Lệnh sẽ giống như thế này:

cp ~/algo-master/configs/[VPN server IP address]/wireguard/Mary-PC.conf /mnt/c/Users/[your Windows user account name]/Desktop/

Lưu ý khoảng cách giữa Mary-PC.conf và /mnt/; đó là cách Bash biết tệp được sao chép ở đâu và nó sẽ đi đâu. Các chữ cái cũng phân biệt chữ hoa chữ thường, vì vậy hãy chắc chắn viết hoa ở nơi được chỉ định.

Trong hệ thống Windows việc muốn sử dụng chữ C viết hoa trên ổ đĩa “C:” là điều tự nhiên, nhưng không phải trong Bash. Ngoài ra, đừng quên thay thế các bit trong ngoặc đơn bằng thông tin máy tính thực tế.

Ví dụ: nếu thư mục người dùng của bạn nằm trên ổ đĩa “D:” chứ không phải “C:”, hãy thay thế /mnt/c/ bằng /mnt/d/.

Sau khi sao chép tệp, hãy mở ứng dụng khách WireGuard cho hệ thống Windows. Nhấp vào “Nhập đường hầm từ tệp” rồi chọn tệp cấu hình trên màn hình nền. Khi hoàn tất, nhấp vào “Kích hoạt”.

Bạn sẽ được kết nối với VPN của riêng mình sau vài giây!