반응형
시작하며
- 본 가이드는 YouTube 채널 “테크팀” 에서 제작 되었으며, 테크팀 채널의 영상내용에 최적화 되어있습니다.
- 본가이드의 오류발견이나, 수정신청은 아래 링크로 제보 부탁 드립니다.
- 유튜브채널 [https://www.youtube.com/@kortechtim]
- 디스코드 [https://discord.gg/ZQ6DzC58rZ]
참고자료
- 기술 사이트 :
- VALVe Developer Community : https://developer.valvesoftware.com/wiki/Rust_Dedicated_Server
- Rust WiKi : https://wiki.facepunch.com/rust/Creating-a-server
- 그 밖에 좋은 사이트 :
- Rust Ram Usage Calculator [메모리 계산기] : https://pinehosting.com/tools/rust-ram-calculator
- Rust GSM : https://linuxgsm.com/servers/rustserver
- Rust Admin Tool : https://www.rustadmin.com
- RustMaps : https://rustmaps.com
- Rust Mods 사이트 : umod.org
- RCON:IO : https://rcon.io
- Rcone Console Server : https://cmsminecraftshop.com/en/console/
- 플러그인(모드) 사이트 :
- Oxide (legacy) modification for the game Rust : https://umod.org/games/rust
서버 요구사항
반응형
구글 클라우드 작업
구글 클라우드 회원 가입
- 구글클라우드 웹사이트에서 회원가입을 진행합니다. (https://cloud.google.com)
- 회원가입에 사용되는 신용카드 정보는 개인 정보 확인을 위해 사용될 뿐 청구되지 않습니다.
- 90일간 300$를 사용할 수 있습니다.
- 금액을 다 소진하거나, 90일이 지나면 무료회원기간이 종료되며 유료 회원전환 여부를 묻습니다.
- 별도의 액션을 취하지 않으면 무료 회원으로 남고, 구글에서 모든 자원을 회수합니다.
- 이후 필요하지 않는 계정은 탈퇴 처리 하여 깔끔하게 삭제합니다.
구글 클라우드 방화벽 개방
- 클라우드에서 방화벽은 총 2곳에서 개방합니다.
- 클라우드 콘솔(GCP)에서 개방 (본 챕터)
- 리눅스 OS 에서 개방 (아래에서 설명)
- 메인메뉴 -> VCP 네트워크 -> VCP 네트워크 메뉴로 이동합니다.
VM 배포
- 게임 서버 스펙에 정확한 정답은 없으나, 가성비 모델 N2 / N2D를 추천합니다.
- 표준에서 N2D-4vCPU-16GB를 추천하며, 추후 메모리 혹은 CPU가 모자르면 더 높은 사양으로 변경하는 것을 추천
- OS 버전을 선택할 때 반드시 X86 이미지를 선택해야 합니다.
- Ubuntu 22.04 ARM을 선택하면 안됩니다.
SSH Key 등록
- MobaXterm 다운로드
https://mobaxterm.mobatek.net/download.html
- MobaXterm 설치
- SSH Key Pair 생성
- SSH Key 등록 (구글 클라우드)
- VM SSH 세션 등록
Linux OS 작업
방화벽 개방
- apt update
sudo apt update
- Linux OS 방화벽 개방
sudo iptables -I INPUT -p tcp --dport 28015 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 28016 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 28017 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 28015 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 28016 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 28017 -j ACCEPT
sudo netfilter-persistent save
- (옵션) netfilter-persistent 명령어 없다고 뜰 경우 : 설치 진행
sudo apt install netfilter-persistent
- 방화벽 개방 확인
sudo iptables -nL
게임 엔진 설치
- SteamCMD 설치
sudo apt update
sudo add-apt-repository multiverse; sudo dpkg --add-architecture i386; sudo apt update
sudo apt install steamcmd
- SDK 64 설치
mkdir -p ~/.steam/sdk64/
steamcmd +login anonymous +app_update 1007 +quit
cp ~/Steam/steamapps/common/Steamworks\ SDK\ Redist/linux64/steamclient.so ~/.steam/sdk64/
- 게임엔진 설치
steamcmd +login anonymous +app_update 258550 validate +quit
게인엔진 구동
게임 엔진 구동
- 게임 설치 디렉토리로 이동
cd ~/Steam/steamapps/common/rust_dedicated
- start.sh 만들기
nano start.sh
- 아래 내용을 start.sh 에 삽입 : 자신의 환경에 맞춰 변경하여 사용함
#!/bin/sh
./RustDedicated -batchmode \
+server.port 28015 \
+server.level "Procedural Map" \
+server.seed 1234 \
+server.worldsize 4000 \
+server.maxplayers 10 \
+server.hostname "Your Server Name" \
+server.description "Description shown on server connection window." \
+server.url "http://yourwebsite.com" \
+server.headerimage "http://yourwebsite.com/serverimage.jpg" \
+server.identity "server1" \
+rcon.port 28016 \
+rcon.password YourPassWord \
+rcon.web 1
## nano 저장하고 빠져나가기 ##
ctrl + x
y
엔터
- (옵션) 파라미터 값 상세 설명
Setting | Function | Notes |
-batchmode | Tells the server to run without a GUI | |
+server.port 28015 | Sets the port people will use to connect to the game | 28015 is default. This port is UDP. |
+server.level "Procedural Map" | Sets the type of map. | |
+server.seed 1234 | Sets the random seed for how the map is generated | This number can be any value 0-2147483647 |
+server.worldsize 4000 | Sets the world size. | The larger the map, the more disk space and memory you need. Use 1000 to 6000 |
+server.maxplayers 10 | Sets the max number of players connecting at one time | The more players, the faster your computer CPU needs to be |
+server.hostname "Tom Server" | Sets a server name | Name of server as shown on the client server list |
+server.description "Awesome!" | Sets a description for your server | Description shown on server connection window, for example you could show the size or intent of the server. |
+server.url "http://mysite.com" | If you have your own website, you can set it here. | You can omit this. |
+server.headerimage "http://mysite.com/serverimage.jpg" | Sets the picture for the server | You can omit this. |
+server.identity "server1" | This is the internal name of the server. | This example name will be used to create a "C:\Rust\MyServer\server1" directory for all of your server files. |
+rcon.port 28016 | Set the remote connect port. | RCON clients connect to this for admin configuration/control. This port is TCP |
+rcon.password letmein | Sets the remote connect password for remote administration. | Change this value!!! |
+rcon.web 1 | Sets the type of remote connect method. | rcon.web 1 is suggested. |
-logfile <name> | All console output goes into this file. | using date/time in the filename is suggested. |
- start.sh 파일 권한 변경하기
chmod 755 ./start.sh
서버 운영 관련
게임엔진 On
- screen 유틸리티 실행 : 1번만 실행
- 이미 실행되어 있다면 추가로 돌릴 필요 없음
screen
- 엔진 시작하기
cd ~/Steam/steamapps/common/rust_dedicated
sh ./start.sh
게임엔진 종료
- screen 재접속
## 스크린 리스트 및 번호 확인
screen -ls
## 특정 스크린으로 들어가기 ##
screen -r <세션번호>
- 엔진 종료
ctrl + c
게임엔진 Update
- screen 재접속
## 스크린 리스트 및 번호 확인
screen -ls
## 특정 스크린으로 들어가기 ##
screen -r <세션번호>
- 엔진 종료
ctrl + c
- 엔진 업그레이드
cd ~
steamcmd +login anonymous +app_update 258550 validate +quit
클라이언트 실행 + 접속 연결
- 게임 클라이언트를 실행하여 'F1' 키를 눌러 콘솔창을 띄운다
- 아래 명령어를 사용하여 접속 시도
connect <공인IP>:28015
## 예 ##
connect 192.168.0.100:28015
반응형
'게임 서버구축 메뉴얼 > 러스트' 카테고리의 다른 글
[ 윈도우 ] 러스트 서버 구축하기 : SteamCMD (1) | 2024.03.04 |
---|