搭建一个CS:GO服务器(二)
因为最近事情比较多,所以拖到现在才更新。本教程共四章,本章讲的是CS:GO服务器的正式搭建。第三章虽已在编写中,但因为时间跨度较大,服务器需要重新配置,事情也较多,最快也要在年后更新了。(因为原第二章内容较多,编写时间跨度较大,所以将其拆分为二三章)第四章将会介绍服务器的管理员操作及插件等进阶用法。
二三章目的:1、使读者可以自己建造一个CS:GO云服务器并从本地连接游玩 2、使读者可以对CS:GO服务器进行一些基础操作
本章节需要读者对Linux有一定了解,并适当了解vim编辑器并进行基础操作(相当于windows的文本文档)
一、连接至服务器(会这一步的伙伴可以直接跳转至后面第二大步)
上一章节有介绍,可以使用windows10自带的ssh功能(可以见上一章末尾),本章节讲解一下无ssh功能的windows系统应如何操作。
1、先下载一个Xshell(百度Xshell下载即可,这里推荐用第三方平台下载,因为Xshell官网(可能是海外应用商店)服务器在海外,所以下载速度比较慢)
2、安装Xshell后进入
3、依次点击文件—>新建或者按快捷键(Alt+N)
按照提示依次输入下列信息:
名称:可以自己随意填入
协议:默认为SSH,无需更改
主机:填入自己服务器ip地址(很重要!!!)
端口号:默认为22,看你有无在前面更改ssh端口号。如无做更改则保持不变,如更改了则改为你更改的端口号(顺便提一句,更改端口号时,要确保目标端口号也就是自己想要更改成的那个端口号没有被占用,否则可能造成两个服务都不正常)
说明:等于备注,可填可不填
其他如不清楚则不用更改,直接点击连接即可
4、点击连接后会弹出一个警告窗口,点击接受并保存
5、会弹出一个窗口,此时输入管理员用户名root,看个人可以选择是否勾选记住用户名
6、输入密码, 看个人可以选择是否勾选记住密码
二、CS:GO服务器的正式搭建
因为以root身份运行CS:GO程序有可能会报错,所以需要新建一个用户,这里新建一个名字为steam的用户
useradd -m steam
然后需要给steam用户设置密码,当然也可以从root用户直接跳转至steam用户。但不推荐这么做,因为以后直接用steam用户登录会造成无法登录的现象。
passwd steam ********* //“******”为自己设置的密码
进入steam用户的根目录进行操作
cd /home/steam/
在其根目录下创建一个名为steamcmd的文件夹
mkdir steamcmd
切换到该目录
cd steamcmd
下载steamcmd(steam局域网架设工具)
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
因为刚刚下载的是一个*.tar.gz的压缩文件,所以需要将其解压
tar zxvf steamcmd_linux.tar.gz
删除其压缩包
rm steamcmd_linux.tar.gz
下一步之前需要给予steam用户使用sudo的权限,sudo的功能简单来说就是普通用户也可以暂时获取只有超级用户(root)才拥有的部分或所有命令能操作的权限
visodu //进入sudo配置界面
进入sudo配置界面(此处需要大家对vim编辑器的操作有基础的了解)
使用键盘上下键移动光标找到如下一行代码
将光标放到root上在键盘上按下yyp三个字母(意为复制此行至下一行)
切换到steam用户
su steam //从root切换到所有用户都不需要输入密码,但所有用户切换到root账户都需要输入密码
(以下写于2021年11月5日)
安装steamcmd运行所需的库
sudo yum install glibc.i686=
这里会需要输入steam用户的密码(前面自己改过的),如果重复前面改密码操作即可
输入“y”后回车
出现complete!即代表安装完成
还有一个库
sudo yum install libstdc++.i686
运行steamcmd
./steamcmd.sh
使用匿名用户登录steamcmd
login anonymous
在steamcmd文件夹下强制创建cs:go服务器文件夹
force_install_dir ./csgo_server
如果出现以下图片,则先输入“logout”再输入“ force_install_dir ./csgo_server ”最后再输入“ login anonymous ”即可
安装CS:GO(740代表的是CS:GO)
app_update 740 validate
进度显示问题,出现最后一行即代表安装成功
退出steamcmd
quit
(以下写于2022年1月7日)
接下来进行CS:GO更新的配置(对vim编辑器不熟的可以跳过)
进入steam文件夹
cd /home/steam
用vim创建运行所需代码文本
vim update.txt
先按“i”进入编辑模式,在里面写入如下语句后保存退出(先按“Esc”退回命令模式,然后键入“: wq!”强制保存退出)
login anonymous
force_install_dir ./csgo_server
app_update 740
quit
用vim创建运行脚本
vi csgo_server_update.sh
同上操作进入编辑器后键入如下指令,并保存退出
#!/bin/bash
./steamcmd.sh +runscript update.txt
测试更新脚本
./csgo_server_update.sh
如出现此画面则代表权限不够,此时输入如下指令解决
chmod 775 csgo_server_update.sh
前往Steam 游戏服务器帐户管理注册steam令牌,点我直达!如无法打开则请使用魔法工具或者steamcommunity 302,后者自行百度安装即可!
然后需要登录自己的steam用户喔
在底下的app id中输入“730”,然后点击创建
记住自己的登录令牌(不要告诉别人!!)这个令牌是能运行CS:GO社区服务器的唯一认证
前往csgo中的cfg文件夹,进行服务器配置文件的编写
cd csgo_server/csgo/cfg/
从网上下载server.cfg文件
wget http://www.csgodev.com/downloads/server.cfg
编辑服务器配置文件
vi server.cfg
进入编辑模式增加如下代码,其中“xxxxxxxxxxxxxxxxxxx”为刚刚获取的登陆令牌
// steam account
sv_setsteamaccount "xxxxxxxxxxxxxxxxxxx"
注:“//”后面的为注解,不影响代码的实际运行。可加可不加,最好加,不然后面回来看的时候压根不知道这一块什么意思。(即复不复制都可)
找到以下代码并修改(xxxxxx均为自己随意设置)
hostname "xxxxxxxxx" //服务器的名字
rcon_password "xxxxxxxxx" // 服务器远程控制密码,在游戏中改参数的时候需要(可以理解为管理员密码)
sv_password "xxxxxxx" // 连接服务器时的密码,如不需要密码留空即可
上面这几个代码比较重要,剩下的大部分是游戏参数的配置,如果你懂是什么意思也可以修改,不懂百度即可。
下面推荐几个值得修改的参数,找到以下代码,并将其修改为如下
sv_accelerate "5.5" // 人物移动速度
sv_maxrate "128000" // 服务器最大带宽使用量
sv_minrate "80000" // 服务器最小带宽使用量
sv_friction "4" //世界摩擦
前往阿里云控制台,为云服务器配置防火墙规则,使CS:GO服务器能够正常被访问
点击右上角”添加规则“
添加的防火墙规则将协议改为“UDP”,将端口改为“27015”
然后回到服务器,返回至csgo_server文件夹目录下
下载screen应用,使服务器能在后台不间断运行
sudo yum install screen
使用screen命令来创建一个叫csgo的会话
screen -s csgo
如果screen会话在离开服务器时没有结束,则可输入如下代码恢复
screen -r csgo
输入如下代码来运行csgo服务器客户端
./srcds_run -console -game csgo -port 27015 -usercon -noipx -nobots -nohltv -tickrate 128 -steam_dir ~./steamcmd/ -steamcmd_script ~./steamcmd/update.txt -autoupdate +game_type 0 +game_mode 1 +map de_inferno
注:下一章会解释这串代码的具体含义及可替换的各种代码
回车后等待即可
显示如上界面即代表服务器启动成功,接下来就可以打开本地CS:GO客户端尝试连接游玩了
打开csgo,“~“呼出控制台,输入
connect xxxxxxxxx;password xxxxxxxxx
connect后填写服务器地址,password后面填写csgo服务器密码,如前面留空了则只需输入;前的字符即可
本篇文章到这里就结束了,接下来的内容估计需要很长一段时间后才能更新了(maybe,谁知道呢)
最近事情太多,实在很难抽出时间来完成本文的编写。希望大家有时间可以亲自动手尝试一下,自动很好玩,很有成就感
本文编写跨度长达5个月,更换了两台服务器,重新配置了5次服务器,如语言有逻辑问题敬请见谅!
2022年1月7日于湖南
事情真的是太多了,等到有时间的时候之前属于CS:GO的时代已经过去了,搭建CS2服务器的教程如果有可能会再发出来(虽然可能性不大)。这两篇文章就留在这吧,如今即将毕业,看着自己三年前刚上大学时写的东西未免不感慨万千。
2024年10月8日于湖南