Chúc mừng!
Vì vậy, vì tất cả những lý do đã biết, chúng ta phải dành nhiều thời gian hơn ở nhà trước màn hình.
Trong hoàn cảnh này, người ta phải nhớ lại những chuyện ngày xưa.
Như tiêu đề của bài viết này đã rõ, chúng ta sẽ nói về việc thiết lập NAS Synology làm máy chủ trò chơi.
Chú ý - có rất nhiều ảnh chụp màn hình trong bài viết (ảnh chụp màn hình có thể nhấp vào được)!
Trước khi bắt đầu, đây là danh sách các công cụ chúng ta cần:
Hiện tại (tháng 2020 năm 105) có XNUMX máy chủ trò chơi có sẵn trên LinuxGSM.
Toàn bộ danh sách có thể được xem ở đây
Máy chủ trò chơi LinuxGSM có tích hợp với
Cài đặt Docker trên NAS Synology
Ở giai đoạn này, mọi thứ đều đơn giản, hãy truy cập bảng quản trị Synology, sau đó vào “Trung tâm gói”, tìm và cài đặt Docker.
Trung tâm trọn gói
Chúng tôi khởi chạy và thấy một cái gì đó như thế này (Tôi đã cài đặt vùng chứa này)
Quản lý container
Tiếp theo, chuyển đến tab “Đăng ký”, nhập “gameservermanagers” vào tìm kiếm, chọn hình ảnh “gameservermanagers/linuxgsm-docker” và nhấp vào nút “Tải xuống”.
gameservermanagers/linuxgsm-docker
Sau đó chuyển đến tab “Hình ảnh”, đợi hình ảnh tải xong và nhấp vào nút “Khởi chạy”.
Tải xuống hình ảnh
Trong cửa sổ mở ra, bạn cần đi tới “Cài đặt nâng cao”, sau đó đến tab “Mạng” và chọn hộp kiểm “Sử dụng cùng một mạng với Docker Host”.
Chúng tôi thay đổi các cài đặt còn lại, chẳng hạn như “Tên vùng chứa”, theo quyết định riêng của chúng tôi.
Tên vùng chứa - như bạn có thể đoán, đây là tên của vùng chứa; nó sẽ có ích sau này. Tôi khuyên bạn nên đặt tên nó một cách ngắn gọn; ví dụ: hãy đặt nó là “thử nghiệm”.
Tiếp theo, nhấp vào nút “Áp dụng” hoặc “Tiếp theo” nhiều lần cho đến khi quá trình thiết lập hoàn tất.
Cài đặt Nâng cao
Chuyển đến tab “Vùng chứa” và xem vùng chứa mới đang chạy (nếu không, hãy khởi chạy).
Tại đây bạn có thể dừng, bắt đầu, xóa và thực hiện các hành động khác.
Thiết lập bộ chứa Docker LinuxGSM
Trước khi kết nối với NAS Synology qua SSH, bạn cần kích hoạt quyền truy cập SSH trong bảng quản trị.
Kết nối qua SSH
Tiếp theo, bạn cần sử dụng địa chỉ IP nội bộ của máy chủ NAS Synology để kết nối qua SSH.
Đi tới thiết bị đầu cuối (hoặc bất kỳ thiết bị tương tự nào khác, ví dụ như trong Windows, đây là
ssh user_name@IP
Trong trường hợp của tôi nó trông như thế này
ssh [email protected]
Địa chỉ IP của máy chủ NAS Synology
Sau khi ủy quyền, bạn cần chạy lệnh để đi đến chính vùng chứa “thử nghiệm” (trường “Tên vùng chứa” trong cài đặt Docker) bên dưới người dùng “root”
sudo docker exec -u 0 -it test bash
Kết nối với Docker
Trước khi cài đặt LinuxGSM, bạn cần thực hiện một số bước.
Đặt mật khẩu cho người dùng “root”
passwd
Tiếp theo chúng tôi sẽ cập nhật tất cả các gói
apt update && apt upgrade && apt autoremove
Chúng tôi đang chờ đợi sự kết thúc của quá trình...
Cập nhật các gói
Tiếp theo cài đặt các tiện ích cần thiết
apt-get install sudo iproute2 netcat nano mc p7zip-rar p7zip-full
Vì việc thực hiện các hành động khác nhau trong “root” không phải là ý tưởng hay nhất, nên hãy thêm một “thử nghiệm” người dùng mới.
adduser test
Và hãy cho phép người dùng mới sử dụng "sudo"
usermod -aG sudo test
Chuyển sang người dùng mới “thử nghiệm”
su test
Cài đặt và cấu hình LinuxGSM
Hãy xem một ví dụ về thiết lập LinuxGSM bằng ví dụ về “Counter-Strike” hay còn gọi là “CS 1.6”
Đến trang hướng dẫn “Counter-Strike”
Trong tab “Phụ thuộc”, sao chép mã trong “Ubuntu 64-bit”.
Tại thời điểm viết bài, mã này trông như thế này:
sudo dpkg --add-architecture i386; sudo apt update; sudo apt install mailutils postfix curl wget file tar bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc jq tmux lib32gcc1 libstdc++6 lib32stdc++6 steamcmd
Cài đặt phụ thuộc
Trong quá trình cài đặt bạn cần đồng ý với “Steam License”:
Giấy phép hơi nước
Chuyển đến tab "Cài đặt", sao chép mã từ bước 2 (chúng tôi bỏ qua bước 1, người dùng "thử nghiệm" đã tồn tại):
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csserver
Chúng tôi đang chờ tải xuống:
./csserver install
Nếu mọi thứ diễn ra ở chế độ bình thường, chúng ta sẽ thấy thông báo “Hoàn tất cài đặt!”
Cài đặt hoàn tất!
Chúng tôi khởi chạy... và thấy lỗi “Đã tìm thấy nhiều địa chỉ IP”.
./csserver start
Đã tìm thấy nhiều địa chỉ IP
Tiếp theo, bạn cần thông báo rõ ràng cho máy chủ biết nên sử dụng IP nào.
Trong trường hợp của tôi đó là:
192.168.0.166
Chuyển đến thư mục có đường dẫn trong tin nhắn là “vị trí”:
cd /home/test/lgsm/config-lgsm/csserver
Và xem những tập tin nào trong thư mục này:
ls
Danh sách các tập tin trong thư mục csserver
Copy nội dung file “_default.cfg” vào file “csserver.cfg”:
cat _default.cfg >> csserver.cfg
Và chuyển sang chế độ chỉnh sửa của file “csserver.cfg”:
nano csserver.cfg
Chỉnh sửa tệp csserver.cfg
Chúng tôi tìm thấy dòng:
ip="0.0.0.0"
Và chúng tôi thay thế địa chỉ IP đã được đề xuất, trong trường hợp của tôi là “192.168.0.166”.
Nó sẽ thành ra một cái gì đó như thế này:
ip="192.168.0.166"
Nhấn phím tắt:
Ctr + X
Và sau khi đề nghị lưu, hãy nhấp vào:
Y
Quay trở lại thư mục “test” của người dùng:
cd ~
Và một lần nữa chúng tôi cố gắng khởi động máy chủ. Máy chủ bây giờ sẽ khởi động mà không gặp vấn đề gì:
./csserver start
Khởi động máy chủ
Để xem thông tin chi tiết hơn, sử dụng lệnh:
./csserver details
Thông tin chi tiết về máy chủ
Các thông số quan trọng cần lưu ý:
- IP máy chủ: 192.168.0.166:27015
- IP Internet: xxx.xx.xxx.xx:27015
- Tệp cấu hình: /home/test/serverfiles/cstrike/csserver.cfg
Ở giai đoạn này, máy chủ trò chơi đã có sẵn trên mạng cục bộ.
Thiết lập chuyển tiếp địa chỉ IP
Chơi qua mạng cục bộ là tốt, nhưng chơi với bạn bè qua Internet thì tốt hơn!
Để chuyển tiếp địa chỉ IP mà bộ định tuyến nhận được từ nhà cung cấp, chúng tôi sử dụng cơ chế NAT.
Cũng cần lưu ý rằng hầu hết các nhà cung cấp đều sử dụng địa chỉ IP động cho khách hàng của họ.
Để thuận tiện và ổn định trong công việc, nên lấy địa chỉ IP tĩnh.
Vì tôi có bộ định tuyến TP-Link Archer C60, tôi đưa ra một ví dụ về thiết lập chuyển tiếp, vì nó được triển khai trong bộ định tuyến của tôi.
Đối với các bộ định tuyến khác, tôi cho rằng thiết lập chuyển tiếp cũng tương tự.
Mọi thứ ở đây đều đơn giản - bạn cần chỉ định chuyển hướng từ địa chỉ IP bên ngoài sang địa chỉ IP nội bộ của máy chủ cho hai cổng:
- 27015
- 27005
Trong bảng quản trị của bộ định tuyến của tôi, nó trông như thế này
Bảng quản trị bộ định tuyến
Chỉ vậy thôi, sau khi lưu cài đặt bộ định tuyến, máy chủ trò chơi sẽ có sẵn trên mạng thông qua địa chỉ IP bên ngoài cho các cổng được chỉ định!
Cài đặt bổ sung sử dụng CS 1.6 làm ví dụ
Lấy CS 1.6 làm ví dụ, tôi muốn đưa ra một số lời khuyên hữu ích.
Có hai tập tin cấu hình máy chủ
Cái đầu tiên là ở đây:
~/lgsm/config-lgsm/csserver/csserver.cfg
Cái thứ hai ở đây:
~/serverfiles/cstrike/csserver.cfg
Tệp đầu tiên chứa các cài đặt chung, chẳng hạn như địa chỉ IP, bản đồ để khởi động máy chủ lần đầu, v.v.
Tệp thứ hai chứa cài đặt cho các lệnh có thể được thực thi thông qua bảng điều khiển Counter-Strike, ví dụ: “rcon_password” hoặc “sv_password”.
Trong tệp thứ hai, tôi khuyên bạn nên đặt mật khẩu để kết nối với máy chủ qua CVar “sv_password” và đặt mật khẩu để điều khiển từ chính bảng điều khiển của máy chủ thông qua CVar “rcon_password”.
Danh sách tất cả các biến CVar có thể được tìm thấy ở đây
Rất có thể sẽ cần phải cài đặt các thẻ bổ sung, chẳng hạn như “fy_pool_day”.
Tất cả các bản đồ cho CS 1.6 đều có ở đây:
~/serverfiles/cstrike/maps
Chúng tôi tìm thấy bản đồ cần thiết, tải trực tiếp lên máy chủ (nếu nó có trong kho lưu trữ, hãy giải nén nó), di chuyển tệp có phần mở rộng ".bsp" vào thư mục chứa các tệp "~/serverfiles/cstrike/maps" và khởi động lại máy chủ.
~./csserver restart
Nhân tiện, tất cả các lệnh máy chủ có sẵn có thể được xem như thế này:
~./csserver
Tổng
Tôi hài lòng với kết quả. Mọi thứ hoạt động nhanh chóng và không bị lag.
LinuxGSM có nhiều cài đặt nâng cao, chẳng hạn như tích hợp với Telegram và Slack để nhận thông báo, nhưng một số chức năng vẫn cần được cải thiện.
Nhìn chung, tôi khuyên bạn nên nó!
nguồn
CẬP NHẬT
Như đã nêu
Nguồn: www.habr.com