教程

搭建一个CS:GO服务器(二)

因为最近事情比较多,所以拖到现在才更新。本教程共四章,本章讲的是CS:GO服务器的正式搭建。第三章虽已在编写中,但因为时间跨度较大,服务器需要重新配置,事情也较多,最快也要在年后更新了。(因为原第二章内容较多,编写时间跨度较大,所以将其拆分为二三章)第四章将会介绍服务器的管理员操作及插件等进阶用法。

二三章目的:1、使读者可以自己建造一个CS:GO云服务器并从本地连接游玩 2、使读者可以对CS:GO服务器进行一些基础操作

本章节需要读者对Linux有一定了解,并适当了解vim编辑器并进行基础操作(相当于windows的文本文档)

一、连接至服务器(会这一步的伙伴可以直接跳转至后面第二大步)

上一章节有介绍,可以使用windows10自带的ssh功能(可以见上一章末尾),本章节讲解一下无ssh功能的windows系统应如何操作。

1、先下载一个Xshell(百度Xshell下载即可,这里推荐用第三方平台下载,因为Xshell官网(可能是海外应用商店)服务器在海外,所以下载速度比较慢)

Xshell下载地址

2、安装Xshell后进入

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
出现”Steam>“即代表成功

使用匿名用户登录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编辑器

用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"    // 连接服务器时的密码,如不需要密码留空即可
xxxxxxxxx均为自己修改

上面这几个代码比较重要,剩下的大部分是游戏参数的配置,如果你懂是什么意思也可以修改,不懂百度即可。

下面推荐几个值得修改的参数,找到以下代码,并将其修改为如下

sv_accelerate "5.5"    // 人物移动速度
sv_maxrate "128000"    // 服务器最大带宽使用量
sv_minrate "80000"    // 服务器最小带宽使用量
sv_friction "4"  //世界摩擦
一般不需要更改此项

前往阿里云控制台,为云服务器配置防火墙规则,使CS:GO服务器能够正常被访问

点击轻量应用服务器
点击大方块进入
在左侧安全菜单下选择防火墙进入

点击右上角”添加规则“

添加的防火墙规则将协议改为“UDP”,将端口改为“27015”

然后回到服务器,返回至csgo_server文件夹目录下

下载screen应用,使服务器能在后台不间断运行

sudo yum install screen
输入y后回车
此时即为安装成功

使用screen命令来创建一个叫csgo的会话

screen -s csgo

如果screen会话在离开服务器时没有结束,则可输入如下代码恢复

screen -r csgo
这样即代表screen正确启动

输入如下代码来运行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日于湖南