在适用于Minecraft服务器的Ubuntu 14.04上安装MineOS
MineOS是一个完整的Minecraft服务器平台,具有Web GUI,自动备份,存档,性能统计信息以及其他功能。配置
这些说明是为32位Ubuntu 14.04设计的,但在所有版本的Ubuntu上均应适用。本教程将教您如何制作Garry's Mod游戏服务器。
以root用户身份通过终端登录。
首先,我们需要确保防火墙是安全的,以减少出现安全问题的机会。假设此服务器专用于Garry's Mod,则可以安全地阻止除Garry's Mod所需的端口之外的所有传入端口(包括ICMP)。服务器的运行不需要ICMP,并且完全阻止它不会对Garry的Mod产生任何负面影响,但是,它将有助于减少DDoS攻击的攻击向量。
要阻止所有不需要的端口,需要以下命令:
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j DROP
这基本上告诉防火墙忽略接收到的每个ICMP数据包,并对它绝对不采取任何措施。这也意味着,如果有人尝试对您的服务器执行ping操作,则他们将没有任何响应。第二行告诉防火墙阻止所有传出的ICMP数据包,它的重要性不那么重要,但只需两次以确保不会发生任何ICMP通信。
接下来,我们需要使用以下命令专门允许Garry Mod(包括27005-27015)所需的所有端口:
iptables -I INPUT -p tcp --dport 27005:27015 -j ACCEPT
iptables -I INPUT -p udp --dport 27005:27015 -j ACCEPT
这表示允许在27005和27015之间的端口上进行任何操作。第一个命令用于TCP,第二个命令用于UDP。第二个命令(UDP)在这里是最重要的,因为服务器和播放器之间的几乎所有通信都是通过UDP完成的。有人报告了TCP被阻止的问题,因此出于这个原因,我们应该允许它。
现在,我们要告诉防火墙允许我们打开自己(或服务器上的软件已打开)的连接。这意味着,如果我们与服务器联系,我们将能够看到响应。输入以下命令以允许它:
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
如果要使用SSH控制服务器(而不是使用帐户中的控制台),则需要此命令才能使SSH在标准端口上运行。如果您不使用SSH,请不要运行以下命令:
iptables -I INPUT -p tcp --dport 22 -j ACCEPT
最后是设置防火墙的最后一条命令。此命令将阻止除我们允许的连接之外的所有传入连接:
iptables -A INPUT -j REJECT
这些设置仅在重新启动服务器之前应用,这意味着每次计算机重新启动时我们都必须手动重新配置它。这是不可接受的,因此有一个要安装的软件包将防火墙规则保存到文件中,然后在每次服务器启动时将其加载。要安装此软件包,请键入以下内容:
apt-get install iptables-persistent
按照屏幕上的说明进行操作。当询问您是否要保存当前的防火墙规则时,请按是。
现在,我们的防火墙已设置完毕,关于防火墙的任何配置都将不再需要。
如果您使用的是SSH,则应安装一个软件包,如果他们继续尝试使用错误的SSH密码,它将自动阻止人们与服务器的连接。这对于防止您的SSH密码被强行使用非常有用。要安装软件包,请使用以下命令:
apt-get install fail2ban
Fail2ban已配置为仅在几次尝试失败的密码后阻止人们访问,因此我们无需对其进行配置。现在,您的服务器比我们启动时安全得多。
接下来,我们需要安装“屏幕”。基本上,这使您可以连续运行命令,即使您从服务器注销也是如此。这对于使Garry's Mod服务器长时间连续运行至关重要,尤其是在使用SSH控制服务器时。要安装“屏幕”,请键入以下内容:
apt-get install screen
安装完成后,运行以下命令:
screen
屏幕上将显示免责声明,只需按Enter即可继续。键入screen
控制台启动屏幕,并允许您在虚拟控制台中工作,如果您断开与SSH的连接或注销,则该虚拟控制台将继续运行,并带有您的命令(Garry的Mod服务器作为Linux命令运行,因此这是我们需要使用屏幕的地方。
现在,在安装Steam,Garry's Mod和所需文件之前,我们需要一个专用于它的帐户。我建议叫它steam
。要创建一个新帐户,请输入以下内容:
adduser steam
您需要使用与root密码不同的密码来确保一切安全。您将很少使用此密码。系统将询问您有关该帐户的一些问题,例如其全名,电话号码等。所有这些均保留为空白。
现在,我们要在下载所有必需文件时登录“ steam”帐户。这意味着“ steam”将获得这些文件的所有所有权,并且无需任何配置即可正确设置Linux权限。如果以root身份安装Steam,然后尝试更改这些权限,则要获得正确的权限要困难得多。要以Steam身份登录,请键入以下内容:
su steam
我们需要一个目录(文件夹)来保存Steam软件。要创建目录,请使用以下命令:
mkdir ~/Steam
现在,我们希望位于该目录中。要使其成为当前工作目录,请键入以下内容:
cd ~/Steam
现在,我们需要输入以下内容来下载Steam软件:
wget http://media.steampowered.com/client/steamcmd_linux.tar.gz
现在,我们需要使用以下命令解压缩并安装它:
tar -xvzf steamcmd_linux.tar.gz
如果您使用的是64位操作系统,则需要安装32位库才能运行Steam。
apt-get install lib32stdc++6
apt-get install lib32gcc1
运行以下命令以打开Steam,让它以“匿名”身份登录(任何人都可以从其服务器下载免费软件的Steam帐户),并告诉其将Garry's Mod服务器安装到gmodds文件夹(存储在Steam帐户的主目录)。
./steamcmd.sh +login anonymous +force_install_dir ../gmodds +app_update 4020 validate +quit
我们可以预期该命令将持续很长时间,但是我们可以观察它的进度。该命令可能会失败,Steam服务器通常会遇到一些小麻烦,从而导致下载失败(或根本无法启动)。如果发生这种情况,只需重新启动即可。
完成此命令后,我们将获得Garry Mod服务器的工作副本,但是,大多数Garry Mod的内容都需要安装CounterStrike:Source(简称CS:S)。要安装CS:S,请运行以下命令:
./steamcmd.sh +login anonymous +force_install_dir ../cssds +app_update 232330 validate +quit
此命令也将花费一些时间。
安装Garry的Mod和CounterStrike之后,需要使用配置文件将它们链接在一起。为此,我们需要使用以下命令编辑以下文件:
nano /home/steam/gmodds/garrysmod/cfg/mount.cfg
在包含“ cstrike”的行上,我们需要删除该行开头的两个斜杠(//),然后替换该行的整个路径部分(以开头C:/
)。该行的该部分需要替换为:
/home/steam/cssds/cstrike
现在,整个行应如下所示:
"cstrike" "/home/steam/cssds/cstrike"
在单词cstrike之前的开头应该有一个制表符空格,并且该行的任何地方都不应包含双斜杠(//)。完成后,您可以先按Ctrl + X,再按Y保存此文件。这会告诉Garry's Mod在哪里可以找到CounterStrike,以便可以使用它。
现在,我们已经安装了基本的Garry's Mod服务器。要运行它,请使用以下命令确保我们位于正确的目录中:
cd /home/steam/gmodds/
然后运行以下命令:
./srcds_run -game garrysmod +gamemode terrortown +maxplayers 16 +map cs_office
一旦启动,您应该可以通过在Garry的Mod Console中键入以下内容来加入(不是服务器终端):
connect IP_ADDRESS
替换IP_ADDRESS
为服务器的IP地址。如果您不知道自己的IP地址,请在服务器终端中键入以下内容,这将告诉您它是什么:
url -s checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'
如果要更改服务器上允许的播放器数量,请通过执行Ctrl + C停止服务器并再次执行启动命令,但将其替换maxplayers 16
为maxplayers x
(更改x
为所需的播放器数量)。要更改默认地图(播放的第一张地图),请替换cs_office
为所需地图的名称。最后,要更改游戏模式,请替换terrortown
为所需的游戏模式。terrortown
默认情况下,Garry的Mod仅随附(在“恐怖镇”中为“简短内容”)和沙盒。
为了进一步配置服务器,有一个可以编辑的配置文件。该文件中的每一行都称为配置变量(cVar)。运行以下命令以编辑文件:
nano /home/steam/gmodds/garrysmod/cfg/server.cfg
可以更改以下值,稍后将解释每个值的作用:
hostname "server name"
sv_downloadurl "http://example.com/files/"
sv_allowupload 1
sv_password "secret password"
sv_timeout 60
更改主机名值使您可以更改服务器的名称。除非您进行更改,否则它将称为“ Garry's Mod”。例如,这将您的服务器称为“我的酷服务器”:
hostname "My cool server"
您可以根据需要向文件中添加尽可能多的变量,每个新变量都需要换一行。
该sv_downloadurl
变量允许您选择从何处下载定制服务器内容。自定义内容包括Garry的Mod贴图,声音,插件和纹理。默认情况下,Garry的Mod仅允许以极慢的速度从您的服务器下载数据,这就是为什么我们需要提供一个URL以便可以全速下载数据的原因。您提供的URL必须是“ garrysmod”文件夹的克隆,以便所有文件都可用。
sv_allowupload
可以有两个选择,0或1,它指定是否要允许人们将内容上载到服务器。这仅用于喷涂(玩家可以喷涂到墙上的图形),并且可能引起安全问题。通常会要求使用喷雾,因此使用“ 1”会使玩家感到高兴,但使用“ 0”会使服务器更安全。
sv password
允许您选择服务器的密码。每当有人加入时,都会要求他们输入此密码,如果没有密码,他们将无法加入。
sv_timeout
是您希望服务器在踢出失去连接的人之前等待的时间(以秒为单位)。服务器将自动等待他们恢复连接,但是在这种情况下,播放器似乎静止不动。最好在60秒或更短的时间内完成。更改这些设置后,需要重新启动服务器。
还可以安装附加组件以为游戏提供其他功能。需要以特定方式安装某些插件,因此您应始终阅读其网站上的说明,但这是下载和安装大多数插件的方式:
cd /home/steam/gmodds/garrysmod/addons/
wget http://example.com/addon.zip
unzip addon.zip
替换http://example.com/addon.zip
为插件所在位置的URL。您还需要更改addon.zip
为附件的zip文件的名称。现在,该插件已下载并解压缩,您可以删除zip文件以节省空间,如下所示:
rm addon.zip
同样,用addon.zip
zip文件的实际名称替换。
如果服务器当前正在运行,则需要使用Ctrl + C重新启动它,然后重新发出启动命令。您可以按键盘上的向上箭头以自动插入您最后运行的命令。
如果您失去SSH连接,则在重新连接时,您需要发出screen -r command
,使您可以从上次所在的位置(游戏机)恢复。
MineOS是一个完整的Minecraft服务器平台,具有Web GUI,自动备份,存档,性能统计信息以及其他功能。配置
欢迎来到另一个Vultr教程。在这里,您将学习如何安装和运行SAMP服务器。本指南是为CentOS 6编写的。先决条件
使用其他系统?简介在本指南中,您将学习如何在运行Ubuntu 16.04的Vultr VPS上设置Unturned 2.2.5服务器。注意:锡
简介在本指南中,您将学习如何在Vultr VPS上创建ARK:Survival Evolved服务器。要求Vultr VPS至少为8192 M
那些拥有专门的CS:GO(反恐精英:全球攻势)经验的人都知道,使用命令行界面进行管理的过程
有时,《我的世界》中的世界可能会崩溃。本文介绍了如何修复破碎的世界。不幸的是,腐败的世界无法修复
Multicraft面板Multicraft是用于Minecraft服务器的简单,易于使用的基于Web的控制面板。您可以创建,停止,启动,监视,配置,上传
简介Reflex是Turbo Pixel Studios推出的具有竞争力的竞技场FPS。本教程将向您展示如何在以下服务器上设置自己的Reflex服务器
在本指南中,您将学习如何在运行Debian 8的Vultr VPS上设置Unturned 2.2.5服务器。注意:这是Unturned的编辑版本,不会
在本指南中,我们将在Debian 7上设置《反恐精英:全球攻势》游戏服务器。这些命令已经在Debian 7上进行了测试,但应该也可以
使用其他系统?在本文中,我们将介绍安装Sponge(一种Minecraft服务器)的过程。海绵是一个旨在
在本教程中,我将介绍如何设置“反恐精英:全球攻势”服务器。本指南中的步骤是针对CentOS 7编写的。
在本教程中,您将学习如何设置自己的Killing Floor服务器。这些命令是为Ubuntu编写的,但可能会被其他Linu采用
McMyAdmin是用于管理服务器的Minecraft服务器控制面板。尽管McMyAdmin是免费的,但有多个版本,其中一些是pai
Terraria是基于采矿,建筑和战斗的MMORPG。有人说它是Minecraft的2D版本,但这对Terraria来说是不公平的
使用其他系统?在本教程中,很高兴创建Tekkit Classic服务器。Tekkit是为Minecraft制造的另一种流行的modpack。由于阿蒙
在本文中,我们将创建Dota 2服务器。Dota是Steam背后的Valve公司发行的免费多人游戏。提醒一下,
简介Multicraft是一个Minecraft服务器管理控制面板,用于管理您的Minecraft服务器。在本教程中,我们将安装
使用其他系统?简介在本指南中,您将学习如何在Linux上设置和安装Unturned服务器。幸免于难
勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根
ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。
Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+
閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。
最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息
大數據的13個商業數據提取工具
我們的計算機以稱為日誌文件系統的有組織的方式存儲所有數據。這是一種有效的方法,可以讓計算機在您點擊搜索時立即搜索和顯示文件。 https://wethegeek.com/?p=94116&preview=true
隨著科學的快速發展,接管了我們的大量工作,我們陷入無法解釋的奇點的風險也在增加。閱讀,奇點對我們意味著什麼。
洞察 26 種大數據分析技術:第 1 部分
過去幾十年,醫療保健領域的人工智能取得了巨大飛躍。因此,醫療保健中人工智能的未來仍在日益增長。