Minecraft là một tựa game sandbox mã nguồn đóng nổi tiếng toàn cầu, cho phép người chơi tự do khám phá thế giới 3D được tạo ngẫu nhiên và thỏa sức xây dựng từ những công trình đơn giản đến kiệt tác hoành tráng như lâu đài, thành phố hoặc hệ thống tự động phức tạp. Nếu bạn muốn tạo ra một không gian chơi riêng tư và mời bạn bè cùng tham gia, thì việc triển khai máy chủ Minecraft trên Ubuntu 20.04 chính là giải pháp lý tưởng. Trong hướng dẫn chi tiết này, bạn sẽ được từng bước thiết lập Minecraft Server trên nền tảng Linux, giúp tối ưu hiệu suất, bảo mật cao và dễ dàng tùy chỉnh theo nhu cầu cá nhân hoặc cộng đồng chơi game của bạn.
Hướng dẫn này sử dụng phiên bản Minecraft Java Edition. Nếu bạn đã mua Minecraft thông qua Microsoft App Store, thì bạn sẽ không thể kết nối với máy chủ được thiết lập theo hướng dẫn này. Tương tự, hầu hết các phiên bản Minecraft được mua trên các hệ máy chơi game như PlayStation 4, Xbox One hoặc Nintendo Switch cũng thuộc phiên bản Microsoft (hay còn gọi là Bedrock Edition), không tương thích với máy chủ trong bài viết này.
Bạn có thể mua và tải về Minecraft Java Edition tại trang chính thức tại đây.
Yêu cầu trước khi bắt đầu
- Cài đặt một máy chủ tại DataOnline với ít nhất 2GB RAM
- Một tài khoản người dùng không phải root có quyền sudo.
- Một tường lửa đã được cấu hình cơ bản để cho phép kết nối SSH.
Bước 1 – Cài đặt Java
Máy chủ Minecraft yêu cầu Java để chạy. Để cập nhật chỉ mục gói của trình quản lý gói APT một bước quan trọng giúp hệ thống nhận biết phiên bản mới nhất của các phần mềm có thể cài đặt – bạn chỉ cần chạy lệnh sau:
sudo apt update
Tiếp theo, cài đặt phiên bản OpenJDK 16 của Java, cụ thể là headless JRE. Đây là phiên bản Java tối giản loại bỏ hỗ trợ cho các ứng dụng GUI, lý tưởng để chạy các ứng dụng Java trên server:
sudo apt install openjdk-16-jre-headless
Bạn cũng cần cài đặt phần mềm có tên screen để tạo các phiên làm việc tách rời (detachable session) cho server. Screen cho phép bạn tạo một phiên terminal và sau đó tách ra khỏi phiên đó, giữ nguyên tiến trình đang chạy. Điều này quan trọng vì nếu bạn khởi động server rồi đóng terminal thì phiên làm việc sẽ bị dừng lại và server cũng sẽ dừng theo. Hãy cài đặt screen.
sudo apt install screen
Giờ bạn đã cài đặt các gói phần mềm cần thiết, bước tiếp theo là cấu hình firewall để cho phép lưu lượng truy cập đến server Minecraft. Trong quá trình thiết lập server ban đầu, bạn chỉ cho phép lưu lượng qua SSH. Bây giờ, bạn cần cho phép lưu lượng truy cập qua cổng 25565 – cổng mặc định mà Minecraft sử dụng để kết nối. Thêm luật cho firewall bằng lệnh sau:
sudo ufw allow 25565
Giờ đây, sau khi đã cài đặt Java và cấu hình firewall đúng cách, bạn sẽ tải xuống server Minecraft từ trang web của Minecraft.
Bước 2 – Tạo người dùng Minecraft riêng biệt
Tiếp theo, bạn cần tải xuống phiên bản Minecraft server hiện hành. Bạn có thể làm việc này bằng cách truy cập trang web của Minecraft và sao chép liên kết “Download minecraft_server.X.X.X.jar”, với X là số phiên bản mới nhất của server.
Sau đó, dùng wget và liên kết vừa sao chép để tải server:
wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar
Nếu bạn dự định nâng cấp server Minecraft hoặc chạy các phiên bản khác nhau của Minecraft, hãy đổi tên file server.jar vừa tải về thành:
mv server.jar minecraft_server_1.15.2.jar
Nếu bạn muốn tải phiên bản Minecraft cũ hơn, có thể tìm chúng tại mcversions.net. Tuy nhiên, hướng dẫn này sẽ tập trung vào phiên bản mới nhất hiện tại. Giờ hãy chuyển sang cấu hình server Minecraft của bạn.
Sau khi đã tải file jar của Minecraft về, bạn đã sẵn sàng để chạy nó.
Bước 3 – Cấu hình và chạy Server Minecraft
Đầu tiên, khởi động một phiên làm việc screen bằng lệnh:
screen
Sau khi bạn đọc banner xuất hiện, hãy nhấn phím SPACE. Screen sẽ hiển thị cho bạn một phiên terminal như bình thường. Phiên làm việc này đã được tách rời (detachable), nghĩa là bạn có thể khởi động một lệnh tại đây và để nó chạy mà không cần phải giữ phiên kết nối mở.
Bạn có thể tiến hành cấu hình ban đầu. Đừng ngạc nhiên nếu lệnh dưới đây báo lỗi – Minecraft thiết kế cài đặt theo cách này nhằm yêu cầu người dùng phải đồng ý với thỏa thuận cấp phép sử dụng (EULA) của công ty. Bạn sẽ thực hiện bước này ngay sau:
java -Xms1024M -Xmx1024M -jar minecraft_server_1.15.2.jar nogui
Trước khi xem xét đầu ra của lệnh này, hãy cùng điểm qua các tham số dòng lệnh (flags) được sử dụng để tinh chỉnh server:
● Xms1024M – Cấu hình server khởi động với 1024MB (tương đương 1GB) RAM. Bạn có thể tăng thông số này nếu muốn server khởi động với nhiều RAM hơn. Các đơn vị M (megabyte) và G (gigabyte) đều được hỗ trợ. Ví dụ: Xms2G
sẽ khởi động server với 2 gigabyte RAM.
● Xmx1024M – Đặt giới hạn tối đa RAM mà server có thể sử dụng là 1024M. Bạn có thể nâng giới hạn này nếu muốn server chạy mượt hơn, hỗ trợ nhiều người chơi hơn hoặc nếu nhận thấy server đang chạy chậm.
● jar – Tham số chỉ định file jar của server cần chạy.
● nogui – Tham số này báo cho server không khởi động giao diện đồ họa vì đây là server và bạn không sử dụng giao diện người dùng đồ họa.
Lần chạy đầu tiên lệnh này, thay vì khởi động server, nó sẽ tạo ra lỗi như sau:
Output [22:05:31] [environment second] [22:05:31] [main/ERROR]: Failed to load properties from file: server.properties [22:05:31] [main/WARN]: Failed to load eula.txt [22:05:31] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
Những lỗi này được sinh ra vì server không tìm thấy hai file cần thiết để chạy: EULA (End User License Agreement) nằm trong file eula.txt
và tập tin cấu hình server.properties
. May mắn thay, do không tìm thấy các file này nên server đã tự tạo chúng trong thư mục làm việc hiện tại của bạn.
Đầu tiên, mở file eula.txt
bằng nano hoặc trình soạn thảo bạn ưa thích:
nano eula.txt
Bên trong file, bạn sẽ thấy đường link dẫn tới EULA của Minecraft. Hãy sao chép URL này:
~/eula.txt #By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). #Tue Mar 24 22:05:31 UTC 2020 eula=false
Mở URL trên trong trình duyệt của bạn và đọc kỹ thỏa thuận. Sau đó, quay lại trình soạn thảo của bạn và tìm dòng cuối cùng trong file eula.txt
. Thay đổi eula=false
thành eula=true
. Lưu lại và đóng file.
Sau khi bạn đã chấp nhận EULA, đã đến lúc cấu hình server theo mong muốn của bạn.
Trong thư mục làm việc hiện tại, bạn cũng sẽ thấy file server.properties
mới được tạo ra. File này chứa tất cả các tùy chọn cấu hình cho server Minecraft của bạn. Bạn có thể tìm danh sách chi tiết các thuộc tính server tại Official Minecraft Wiki. Hãy chỉnh sửa file này với các cài đặt ưa thích của bạn trước khi khởi động server. Hướng dẫn dưới đây sẽ đề cập đến những thuộc tính cơ bản:
nano server.properties
File của bạn sẽ xuất hiện như sau:
~/server.properties #Minecraft server properties #Thu Apr 30 23:42:29 UTC 2020 spawn-protection=16 max-tick-time=60000 query.port=25565 generator-settings= force-gamemode=false allow-nether=true enforce-whitelist=false gamemode=survival broadcast-console-to-ops=true enable-query=false player-idle-timeout=0 difficulty=easy spawn-monsters=true broadcast-rcon-to-ops=true op-permission-level=4 pvp=true snooper-enabled=true level-type=default hardcore=false enable-command-block=false max-players=20 network-compression-threshold=256 resource-pack-sha1= max-world-size=29999984 function-permission-level=2 rcon.port=25575 server-port=25565 server-ip= spawn-npcs=true allow-flight=false level-name=world view-distance=10 resource-pack= spawn-animals=true white-list=false rcon.password= generate-structures=true online-mode=true max-build-height=256 level-seed= prevent-proxy-connections=false use-native-transport=true motd=A Minecraft Server enable-rcon=false
Hãy xem qua một số thuộc tính quan trọng trong danh sách này:
● difficulty (mặc định easy
) – Thiết lập độ khó của trò chơi, ví dụ như mức độ gây sát thương và cách các yếu tố môi trường ảnh hưởng đến người chơi. Các tùy chọn gồm: peaceful, easy, normal, và hard.
● gamemode (mặc định survival
) – Thiết lập chế độ chơi game. Các tùy chọn gồm: survival, creative, adventure, và spectator.
● level-name (mặc định world
) – Thiết lập tên cho server của bạn xuất hiện trên client. Những ký tự đặc biệt như dấu nháy đơn có thể cần được “escape” bằng dấu gạch chéo ngược.
● motd (mặc định A Minecraft Server
) – Thông điệp sẽ hiển thị trong danh sách server của client Minecraft.
● pvp (mặc định true
) – Cho phép chế độ PvP (Player versus Player). Nếu đặt thành true, người chơi có thể đánh nhau và gây sát thương cho nhau.
Sau khi đã chỉnh sửa theo ý mình, lưu file và đóng lại.
Giờ, khi bạn đã thay đổi EULA thành true và cấu hình các thiết lập theo mong muốn, bạn có thể khởi động server thành công.
Như lần trước, hãy khởi động server với 1024M RAM. Lần này, hãy cấp cho Minecraft khả năng sử dụng tối đa lên đến 4G RAM nếu cần. Bạn hoàn toàn có thể điều chỉnh con số này dựa trên giới hạn server hoặc nhu cầu người dùng:
java -Xms1024M -Xmx4G -jar minecraft_server_1.15.2.jar nogui
Hãy chờ một vài khoảnh khắc để quá trình khởi tạo. Chẳng bao lâu, server Minecraft mới của bạn sẽ xuất ra đầu ra giống như sau:
Output [21:08:14] [Server thread/INFO]: Starting minecraft server version 1.15.2 [21:08:14] [Server thread/INFO]: Loading properties [21:08:14] [Server thread/INFO]: Default game type: SURVIVAL [21:08:14] [Server thread/INFO]: Generating keypair [21:08:15] [Server thread/INFO]: Starting minecraft server on *:25565
Khi server đã chạy, bạn sẽ thấy đầu ra như sau:
Output [21:15:37] [Server thread/INFO]: Done (30.762s)! For help, type "help"
Server của bạn giờ đã chạy và bạn đã được chuyển đến bảng điều khiển quản trị server. Hãy gõ lệnh help
:
help
Đầu ra sẽ hiển thị như sau:
Output [21:15:37] [Server thread/INFO]: /advancement (grant|revoke) [21:15:37] [Server thread/INFO]: /ban <targets> [<reason>] [21:15:37] [Server thread/INFO]: /ban-ip <target> [<reason>] [21:15:37] [Server thread/INFO]: /banlist [ips|players] ...
Từ bảng điều khiển này, bạn có thể thực hiện các lệnh quản trị để điều khiển server Minecraft của mình. Giờ hãy sử dụng screen để giữ cho server của bạn luôn chạy ngay cả khi bạn đăng xuất.
Bước 4 – Giữ Server Luôn Chạy
Sau khi đã khởi động server, bạn muốn nó tiếp tục chạy ngay cả khi bạn ngắt phiên SSH. Vì bạn đã sử dụng screen trước đó, bạn có thể tách phiên đó bằng cách nhấn tổ hợp phím Ctrl + A + D. Lúc này, bạn sẽ quay trở lại shell ban đầu.
Kiểm tra danh sách các phiên screen đang chạy bằng lệnh:
screen -list
Bạn sẽ nhận được đầu ra chứa ID của phiên làm việc, bạn sẽ cần dùng ID đó để phục hồi phiên đó:
Output There is a screen on: 26653.pts-0.minecraft (03/25/20 21:18:31) (Detached) 1 Socket in /run/screen/S-root.
Để trở lại phiên làm việc, hãy dùng cờ -r
cùng với ID phiên:
screen -r 26653
Khi bạn đã sẵn sàng đăng xuất khỏi server, nhớ tách phiên bằng cách nhấn Ctrl + A + D rồi mới đăng xuất.
Bước 5 – Kết Nối Tới Server Từ Client Minecraft
Khi server đã chạy, hãy kết nối tới server qua client Minecraft của bạn để bắt đầu chơi.
Khởi động bản Minecraft Java Edition của bạn và chọn Multiplayer trong menu.
Tiếp theo, bạn cần thêm server để kết nối, nhấn nút Add Server.
Trong màn hình Edit Server Info hiện ra, hãy đặt tên cho server và nhập địa chỉ IP của server. Đây chính là địa chỉ IP bạn đã sử dụng để kết nối qua SSH.
Sau khi đã nhập tên server và địa chỉ IP, bạn sẽ được chuyển về màn hình Multiplayer và server của bạn sẽ xuất hiện trong danh sách.
Từ giờ, server của bạn sẽ luôn hiển thị trong danh sách này. Chọn server và nhấn Join Server.Bạn đã có trong server của mình và sẵn sàng để bắt đầu chơi! Nếu có bất kỳ câu hỏi hay cần trợ giúp nào khác trong quá trình thiết lập hoặc chơi game, hãy cho tôi biết nhé.