Настал момент, когда ты устал от рейдов и решил стать админом. Проще простого сделать сервер Rust. Это открывает безграничные возможности для кастомизации игрового процесса и привлечения нового комьюнити. По заявке радиослушателей робот расскажет, как запустить сервер быстро и понятно.

Создаем VPS сервер

Системные требования сервера на Linux, в нашем случае Ubuntu
8 ГБ свободной оперативной памяти. Например карта 6000 будет использовать несколько больше. Также минимум 8 ГБ свободного места на диске, рекомендуется SSD или NVMe, хорошо будет 15ГБ.

Два ядра мало, но работать будет. Сервер Rust будет долго подниматься и быстро падать. Выйдет такой конфиг около 30₽ в сутки, а это почти две чашки капучино.

При создании сервера сразу укажем публичный ssh ключ, давайте сгенерируем SSH ключ. Откройте командную строку cmd, скомандуйте

ssh-keygen

Укажите путь к файлу для сохранения ключа, например создадим файл C:\Users\Neo/.ssh/id_rust. Введите надежную парольную фразу для защиты вашего приватного ключа. Это необязательно, но лучше такое провернуть, подтвердите фразу. Нажмите Enter и после найдите сгенерированные файлы. В указанной директории появятся два файла:

  • Приватный ключ id_rust, файл храните в секрете.
  • Публичный ключ id_rsa.pub, файл можно передавать и использовать для подключения к серверу.

Заходим на сервер через ssh

Робот использует софт от Bitvise SSH Client. Cоздаем новый профиль и импортируем SSH ключ в программу через key manager. Вводим IP адрес сервера и пользователя root, указываем порт 22, жмем батон логин и заходим на свой свежий сервер. Запускаем New terminal console

Устанавливаем SteamCMD

Текст написан на основе инструкции разработчика

Создаем для начала учётную запись пользователя с именем rust для безопасного запуска SteamCMD. Обязательно изоируем этого пользователя от остальной части операционной системы. Не запускайте steamcmd от имени root. Это сладкая конфетка для киберпанков.

Итак, давайте командовать

sudo useradd -m rust
sudo passwd rust
sudo -u rust -s
cd /home/rust

Для установки SteamCMD необходимо включить репозиторий Multiverse и пакеты x86.

sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install steamcmd

если вдруг пользователь не стал sudo, делаем его таким. Заходим под root и командуем

sudo usermod -aG sudo rust

Все, теперь логиним себя под rust и устанавливаем пакеты выше.

Запускаем SteamCMD

steamcmd

Заходим в SteamCMD

login anonymous

выбираем путь установки внутри текущей директории

login anonymous force_install_dir ./rust/

запускаем установку сервера rust dedicated server

app_update 258550 validate

Запускаем сервер Rust

после успешной установки запускаем сервер Rust

cd .local/share/Steam/steamcmd/rust/
./RustDedicated +server.hostname "oxistudio" +server.maxplayers 50 +server.worldsize 3000 +server.saveinterval 600
./RustDedicated -batchmode +server.ip 0.0.0.0 +server.port 28015 +server.tickrate 30 +server.hostname "Your Server Name" +server.identity "your_server_identity" +server.maxplayers 50 +server.worldsize 4000 +server.saveinterval 600 +rcon.ip 0.0.0.0 +rcon.port 28016 +rcon.password "Your_Rcon_Password" -logfile logfilename.log"

Параметры запуска сервера

Переключатель По умолчанию Описание
server.port 28015 Порт подключения к серверу
server.maxplayers 512 Максимум игроков
server.hostname "My server name" Название сервера
server.identity Идентификатор вашего сервера. Указывайте без пробелов и спец. символов
server.level "Procedural Map" Выбираем карту Rust: Procedural Map, TestLevel, Craggy Island, Hapis Island, Savas Island, Barren
server.seed 123456 Зерно, используемое для генерации процедурной карты. Значение должно быть между -2147483647 и 2147483647
server.worldsize 3000 или 9 км2 Размер карты должен быть от 1000 до 8000. Помните про ОЗУ вашего сервера.
server.saveinterval 60 Интервал авто сохранения сервера в секундах
server.secure true Включить VAC и EAC: true или false
server.tickrate 30 Количество тактов сервера в секунду. Меньше значение, значит выше производительность. Но при этом могут происходить аномалии и баги.
construct.frameminutes 600 Значение в минутах автоматического разрушения каркаса
server.radiation false Радиация во всяких радиоактивных местах: false или true
server.headerimage "url" Картинка в профиле сервера размер 512x256 формат .png или .jpg
server.description "text" Описание сервера и его правила, для переноса текста на новую строку используйте \n
server.url "url" Адрес сервера

Если сервер Rust падает с ошибкой dlopen failed trying to load: /home/rustist/.steam/sdk64/steamclient.so потому как отсутствует директория и файл в ней. Создаем директорию и копируем туда файл из /home/rust/.local/share/Steam/steamcmd/linux32/steamclient.so

cd /home/rust/.steam/

mkdir sdk64

копируем steamclient.so не забываем выставить на файл атрибуты 775 и владельца rust

Делаем файл подкачки

Сервер ложится при нагрузке на ОЗУ, сделаем ему файл подкачки, пусть работает. Прежде чем создать swap-файл, нужно узнать текущее состояние диска. Чтобы получить эти данные, введите:

sudo swapon --show

сервер Rust и чувствуем себя всемогущим под водой

Создаем swap файл

Получив все данные о системе, можно приступить к созданию swap-файла. В мануале такой файл называется swapfile и находится в root-каталоге. Файл должен иметь объем необходимого swap пространства.

Поскольку в данном случае используется сервер с 4 Гб RAM, мы создадим 4 Гб swap-пространства.

sudo fallocate -l 4G /swapfile

Чтобы проверить выделенный объём памяти, введите:

ls -lh /swapfile
-rw-r--r-- 1 root root 1.0G Apr 25 11:14 /swapfile

команда создала файл с указанным объёмом памяти.

rust update

Включаем swap

Для начала нужно изменить права на файл,  только root имел право на чтение. Swap-файл с правами на чтение и изменение другими пользователями – огромный риск для безопасности сервера. Чтобы передать все права пользователю root, введите:

sudo chmod 600 /swapfile

Проверяем права на файл:

ls -lh /swapfile
-rw------- 1 root root 1.0G Apr 25 11:14 /swapfile

Итак, файл защищен, и можно указать системе на swap с помощью команды

sudo mkswap /swapfile
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
no label, UUID=6e965805-2ab9-450f-aed6-577e74089dbf

Чтобы включить swap пространство

sudo swapon /swapfile

Все прошло успешно, проверив отчеты системы о swap:

sudo swapon --show
NAME      TYPE  SIZE USED PRIO
/swapfile file 1024M   0B   -2

Автозагрузка swap

Итак, теперь swap пространство включили, а чтобы при перезапуске сервер запускал автоматически, отредактируйте файл /etc/fstab. Создайте его резервную копию файла:

sudo cp /etc/fstab /etc/fstab.bak

Добавьте данные о swap в конец файла

echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

facepunch support

Как остановить сервер Rust

У нас получилось сделать сервер RUST и запустить его. Из консоли сервер  можно остановить через Ctrl+Z и потом снова запустить командой

fg

А можно просто остановить сервер Ctrl+C

Как стать администратором сервера Rust

Мечта рядом, осталось лиши получить права администратора своего сервера Rust.

администратор сервера Rust
С правами администратора игрок выдает себе и себе подобным игровые ассеты в неограниченном количестве. Может летать, становиться неуязвимыми, телепортироваться, вызывать вертолёты и другой вид транспорта.

В консоль терминала сервера вбиваем команду

ownerid 12344567890

Где цифры это ваш steamid 64. Запустите клиент стим и посмотрите свой профиль.

?xml=1
https://steamcommunity.com/id/myrust/?xml=1
<steamID64>1234567890</steamID64>

цифры это ваш steamid 64

Ссылка в левом углу должна быть скопирована путем ее нажатия и вставлена в браузер, в конец ссылки подставляем и наблюдаем свой <steamID64> в новом открывшемся окне. Для того чтобы права администратора вступили в силу, нужно покинуть сервер Rust и снова на него зайти.

Если это не сработало, тогда идем rust/.local/share/Steam/steamcmd/rust/server/my_server_identity/cfg/users.cfg открываем файл и пишем

ownerid steamid64 name / comment

Сохраняем конфиг users.cfg и медленно перезагружаем сервер, подключаемся из клиента Rust и чувствуем себя всемогущим.

Rust и чувствуем себя всемогущим

Команды консоли Rust

Команда Описание
status Вывод общего статуса сервера, в том числе подключенные игроки например
say говорить Передать свой месседж всем на сервере
find . Вывести список всех консольных команд
rcon.password Установить пароль rcon для использования в клиенте игры rcon.login пароль
kick имя_пользователя Кикнуть пользователя с сервера. Имя_пользователя может быть первые несколько букв имени или steamid
ban имя_пользователя Команда банит пользователя на сервере, но не кикает
banid steamid Забанить по userid
unbanall Всех разбанить
server.hostname hostname Установить имя хоста
server.clienttimeout int Как долго ждать до подключения к серверу (по умолчанию 2 минуты)
server.pvp bool Вкл/выкл. pvp-режим (по умолчанию true)
sleepers.on bool Вкл./выкл. спящих игроков (по умолчанию true)
quit Выключить сервер (сохраняется уровень)

 

0 0 голоса
Article Rating
Подписаться
Уведомить о
guest

0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Oxistudio
Обзор конфиденциальности

На этом сайте используются файлы cookie, что позволяет нам обеспечить наилучшее качество обслуживания пользователей. Информация о файлах cookie хранится в вашем браузере и выполняет такие функции, как распознавание вас при возвращении на наш сайт и помощь нашей команде в понимании того, какие разделы сайта вы считаете наиболее интересными и полезными.