Изменения

Материал из Chaotic Onyx
Перейти к навигацииПерейти к поиску
м
папки в шкафу стоят
Строка 1: Строка 1: −
Предисловие: В качестве примера используется ОС Debian 8 x64. В гайде присутствуют инструкции и для 32-х битного Дебиана. Также этот гайд можно использовать для Убунты и, возможно, для других Дебиано-подобных Линуксов. Для других Линуксов замените '''apt-get''' и '''dpkg''' на пакетные менеджеры этих ОС. К слову, на форуме BYOND есть раздел LINUX TALK с инструкциями для установки BYOND на Линуксы.
+
==Предисловие==
 
+
В качестве примера используется ОС Debian 8 x64. В гайде присутствуют инструкции и для 32-х битного Дебиана. Также этот гайд можно использовать для Убунты и, возможно, для других Дебиано-подобных Линуксов. Для других Линуксов замените '''apt-get''' и '''dpkg''' на пакетные менеджеры этих ОС. К слову, на форуме BYOND есть раздел LINUX TALK с инструкциями для установки BYOND на Линуксы.
 +
==Общие понятия==
 
Итак, вы закончили [[Downloading_the_source_code|освоение исходного кода]] и уже разобрались как создать свою станцию и даже подняли на своем древнем ПеКа локалочку. Теперь у вас появилась мысль провести свой ивэнт или просто держать сервер 24/7 и кто-то вам даже подсказал использовать для этого VDS(также известный как VPS). Вы даже уже наверняка приобрели один на странного вида сайте. Ну или планируете сделать это в будущем. Что значит "а где взять бесплатный"? Бесплатна только мышь в мышеловке! Или сыр... Да какая разница, сейчас эти штуки стоят совсем недорого и рублей за 300-500 можно арендовать неплохой виртуальный выделенный(или приватный, кому как нравится) сервер на целый месяц. Да-да, именно так расшифровывается этот VDS(VPS). "Виртуальный", потому что это один обычный сервер, "поделенный" на несколько с помощью магической [https://ru.wikipedia.org/wiki/%D0%92%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F виртуализации]. Но отойдем от теории, мы сюда за сервером пришли, а не пересказом википедии, да?
 
Итак, вы закончили [[Downloading_the_source_code|освоение исходного кода]] и уже разобрались как создать свою станцию и даже подняли на своем древнем ПеКа локалочку. Теперь у вас появилась мысль провести свой ивэнт или просто держать сервер 24/7 и кто-то вам даже подсказал использовать для этого VDS(также известный как VPS). Вы даже уже наверняка приобрели один на странного вида сайте. Ну или планируете сделать это в будущем. Что значит "а где взять бесплатный"? Бесплатна только мышь в мышеловке! Или сыр... Да какая разница, сейчас эти штуки стоят совсем недорого и рублей за 300-500 можно арендовать неплохой виртуальный выделенный(или приватный, кому как нравится) сервер на целый месяц. Да-да, именно так расшифровывается этот VDS(VPS). "Виртуальный", потому что это один обычный сервер, "поделенный" на несколько с помощью магической [https://ru.wikipedia.org/wiki/%D0%92%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F виртуализации]. Но отойдем от теории, мы сюда за сервером пришли, а не пересказом википедии, да?
   Строка 13: Строка 14:  
После всех унижений вы наконец достигли точки назначения №1: вам открылась командная строка вашего сервера. Поздравляю, на этом ваш эпический квест "Подключиться к VDS" закончен, вот вам новый. Называется "Что делать дальше". Опыт и шмот возьмете потом, сейчас склады пусты.
 
После всех унижений вы наконец достигли точки назначения №1: вам открылась командная строка вашего сервера. Поздравляю, на этом ваш эпический квест "Подключиться к VDS" закончен, вот вам новый. Называется "Что делать дальше". Опыт и шмот возьмете потом, сейчас склады пусты.
    +
==Как установить BYOND==
 +
===Готовимся к установке===
 
Для Виндозников будет шоковым состоянием первый раз находится в системе, отличной от подделок Microsоfta, но ничего, привыкнут. Для справки: многие команды для cmd то бишь командной строки виндоуза могут работать и в линуксе. А могут и не работать. Мы же для верности будем использовать только набор [http://help.ubuntu.ru/wiki/%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D1%80%D0%BE%D0%BA%D0%B0#файловые_команды файловых команд] и парочку команд сверху.
 
Для Виндозников будет шоковым состоянием первый раз находится в системе, отличной от подделок Microsоfta, но ничего, привыкнут. Для справки: многие команды для cmd то бишь командной строки виндоуза могут работать и в линуксе. А могут и не работать. Мы же для верности будем использовать только набор [http://help.ubuntu.ru/wiki/%D0%BA%D0%BE%D0%BC%D0%B0%D0%BD%D0%B4%D0%BD%D0%B0%D1%8F_%D1%81%D1%82%D1%80%D0%BE%D0%BA%D0%B0#файловые_команды файловых команд] и парочку команд сверху.
   Строка 36: Строка 39:  
Комбинация команд для пользователей 64-х битной ОС, где 3 команды совмещены символом '''&&'''. По желанию добавить '''libmysqlclient-dev:i386''' в конец команды.
 
Комбинация команд для пользователей 64-х битной ОС, где 3 команды совмещены символом '''&&'''. По желанию добавить '''libmysqlclient-dev:i386''' в конец команды.
 
  dpkg --add-architecture i386 && apt-get update && apt-get install unzip git libc6:i386 libncurses5:i386 libstdc++6:i386
 
  dpkg --add-architecture i386 && apt-get update && apt-get install unzip git libc6:i386 libncurses5:i386 libstdc++6:i386
 +
===Установка BYOND===
 
Дальше мы поставим BYOND для линуксов.
 
Дальше мы поставим BYOND для линуксов.
    
# На основной машине идем на сайт BYONDa в раздел скачивания [http://www.byond.com/download/ http://www.byond.com/download/] где кликаем правой кнопкой мыши на стабильную или бета-версию клиента для Линукса и жмем "копировать адрес ссылки".
 
# На основной машине идем на сайт BYONDa в раздел скачивания [http://www.byond.com/download/ http://www.byond.com/download/] где кликаем правой кнопкой мыши на стабильную или бета-версию клиента для Линукса и жмем "копировать адрес ссылки".
# Затем в командной строке вашего VDS пишем '''wget''', ставим пробел и жмем правую кнопку мыши. Enter.
+
# Затем в командной строке вашего VDS пишем '''wget''', ставим пробел и вставляем ссылку. Enter.
 
# Через пару секунд закачка закончится и нужно будет выполнить команду '''unzip *_byond_linux.zip''' для распаковки архива.
 
# Через пару секунд закачка закончится и нужно будет выполнить команду '''unzip *_byond_linux.zip''' для распаковки архива.
# Теперь, чтобы установить BYOND надо выполнить '''cd byond && sudo make install'''.
+
# Теперь, чтобы установить BYOND надо выполнить '''cd byond && make install'''.
# Финальным действием удаляем ставшие ненужными папки с помощью команды '''cd .. && rm -rf *byond*'''
+
# Финальным действием удаляем ставшие ненужными директории с помощью команды '''cd .. && rm -rf *byond*'''
 +
 
 +
PS. Комбинация команд для установки BOYND одним движением:
 +
wget [ссылка на линукс-версию BYONDa] && unzip *_byond_linux.zip && cd byond && make install && cd .. && rm -rf *byond*
 +
Не забудьте убрать '''[''' и ''']'''.
    
Отлично, полпути мы прошли. BYOND установлен и по команде '''DreamDaemon -v''' будет показана версия клиента.
 
Отлично, полпути мы прошли. BYOND установлен и по команде '''DreamDaemon -v''' будет показана версия клиента.
    +
===Скачивание кода и запуск сервера===
 
Теперь скачаем и скомпилируем код станции.
 
Теперь скачаем и скомпилируем код станции.
 
# На основной машине идем на гитхаб-страницу желаемой станции и жмем на кнопочку "Clone or Download". Там мы увидим ссылку на этот репозиторий, подозрительно похожий на ссылку на гитхаб-страницу. Разве что в конце будет стоять .git. Это ссылку надо скопировать.
 
# На основной машине идем на гитхаб-страницу желаемой станции и жмем на кнопочку "Clone or Download". Там мы увидим ссылку на этот репозиторий, подозрительно похожий на ссылку на гитхаб-страницу. Разве что в конце будет стоять .git. Это ссылку надо скопировать.
# Возвращаемся к полюбившейся(полюбившейся, ясказал!) командной строке и пишем '''git clone''', ставим пробел и жмем правую кнопку мыши. Enter.
+
# Возвращаемся к полюбившейся(полюбившейся, ясказал!) командной строке, пишем '''git clone''', ставим пробел и вставляем ссылку. Enter.
 
# Дожидаемся, когда закончится закачка...
 
# Дожидаемся, когда закончится закачка...
# Дождавшись, зайдем в папку со скаченным кодом. Для этого надо выполнить '''cd''', пробел и имя репозитория, что вы качали. Например, для блюбея, чей гитхаб открывается по ссылке [https://github.com/animusdev/Old-World-Blue https://github.com/animusdev/Old-World-Blue], имя репозитория и имя папки будет Old-World-Blue.
+
# Дождавшись, зайдем в директорию со скаченным кодом. Для этого надо выполнить '''cd''', пробел и имя репозитория, что вы качали. Например, для блюбея, чей гитхаб открывается по ссылке [https://github.com/animusdev/Old-World-Blue https://github.com/animusdev/Old-World-Blue], имя репозитория и имя директории будет Old-World-Blue.
# Зайдя в папку компилируем билд командой '''DreamMaker''', пробел и имя .dme файла. Его имя можно глянуть на гитхаб-странице вашей станции. У блюбея этот файл называется '''baystation12.dme''' Кстати, запомните имя вашего .dme файла, оно вам еще понадобится.
+
# Зайдя в директорию компилируем билд командой '''DreamMaker''', пробел и .dme файл. Его имя можно глянуть на гитхаб-странице вашей станции. У блюбея этот файл называется '''baystation12.dme''' Кстати, запомните имя вашего .dme файла, оно вам еще понадобится.
 
# Скомпилировав без ошибок переходим к запуску станции. Для этого используем код '''DreamDaemon [имя .dme файла].dmb [порт] [опции]'''. Для блюбея это было бы '''DreamDaemon baystation12.dmb 2506 -invisible -logself -trusted'''. Заметьте, все опции начинаются со знака '''-'''
 
# Скомпилировав без ошибок переходим к запуску станции. Для этого используем код '''DreamDaemon [имя .dme файла].dmb [порт] [опции]'''. Для блюбея это было бы '''DreamDaemon baystation12.dmb 2506 -invisible -logself -trusted'''. Заметьте, все опции начинаются со знака '''-'''
 
## Рекомендованные опции  
 
## Рекомендованные опции  
 
##* invisible - не показывает сервер в клиенте BYONDa, в итоге зайти на ваш сервер можно только по прямой ссылке вида byond://ip-адрес:порт
 
##* invisible - не показывает сервер в клиенте BYONDa, в итоге зайти на ваш сервер можно только по прямой ссылке вида byond://ip-адрес:порт
##* logself - создает файл [имя .dme файла].log с логом событий в папке с кодом станции. Полезен при выявлении проблем с запуском и работой сервера станции.
+
##* logself - создает файл [имя .dme файла].log с логом событий в каталоге с кодом станции. Полезен при выявлении проблем с запуском и работой сервера станции.
##* trusted - доверенный режим, позволяет использовать файлы не только в папке с кодом станции. Если не доверяете проекту, то лучше не использовать.
+
##* trusted - доверенный режим, позволяет использовать файлы не только в директории с кодом станции. Если не доверяете проекту, то лучше не использовать.
 +
 
 +
PS. Комбинация команд для скачивания и компилирования кода в одной команде
 +
git clone [адрес репозитория] && cd [имя проекта] && DreamMaker [имя .dme файла].dme
 +
На примере блюбея:
 +
git clone https://github.com/animusdev/Old-World-Blue.git && cd Old-World-Blue && DreamMaker baystation12.dme
 +
 
 +
==Базы данных и с чем их едят==
 +
WIP
 +
apt-get instal mysql-server
 +
 
 +
==Безопасность превыше всего!==
 +
WIP
 +
 
 +
- SSH Security:
 +
 
 +
#. https://www.digitalocean.com/community/tutorials/how-to-configure-ssh-key-based-authentication-on-a-linux-server
 +
#. Fail2ban
 +
 
 +
Fail2ban is mainly used to protect your ssh against passwords bruteforce.
 +
 
 +
apt-get install fail2ban && nano /etc/fail2ban/jail.local
 +
 
 +
Must be something like that:
 +
 
 +
[DEFAULT]
 +
## If you do not want to use a permanent ip,
 +
## then it's better to comment out this line
 +
## there and in jail.conf.
 +
ignoreip = 57.66.158.131
 +
 +
[ssh]
 +
## If within 1 hour:
 +
findtime = 3600
 +
## 6 failed login attempts were made:
 +
maxretry = 6
 +
## Then ban the IP for 24 hours:
 +
bantime = 86400
 +
 
 +
And restart it '''service fail2ban restart'''
 +
 
 +
- MySQL Security
 +
 
 +
After installing MySQL DB it's a good idea to delete a security hole.
 +
mysql_secure_installation
317

правок

Навигация