Участник:Alfacom/Guide to VPS(VDS): различия между версиями
Alfacom (обсуждение | вклад) |
UcnaHez (обсуждение | вклад) м (папки в шкафу стоят) |
||
(не показана 1 промежуточная версия 1 участника) | |||
Строка 43: | Строка 43: | ||
# На основной машине идем на сайт BYONDa в раздел скачивания [http://www.byond.com/download/ http://www.byond.com/download/] где кликаем правой кнопкой мыши на стабильную или бета-версию клиента для Линукса и жмем "копировать адрес ссылки". | # На основной машине идем на сайт BYONDa в раздел скачивания [http://www.byond.com/download/ http://www.byond.com/download/] где кликаем правой кнопкой мыши на стабильную или бета-версию клиента для Линукса и жмем "копировать адрес ссылки". | ||
− | # Затем в командной строке вашего VDS пишем '''wget''', ставим пробел и | + | # Затем в командной строке вашего VDS пишем '''wget''', ставим пробел и вставляем ссылку. Enter. |
# Через пару секунд закачка закончится и нужно будет выполнить команду '''unzip *_byond_linux.zip''' для распаковки архива. | # Через пару секунд закачка закончится и нужно будет выполнить команду '''unzip *_byond_linux.zip''' для распаковки архива. | ||
− | # Теперь, чтобы установить BYOND надо выполнить '''cd byond && | + | # Теперь, чтобы установить BYOND надо выполнить '''cd byond && make install'''. |
− | # Финальным действием удаляем ставшие ненужными | + | # Финальным действием удаляем ставшие ненужными директории с помощью команды '''cd .. && rm -rf *byond*''' |
PS. Комбинация команд для установки BOYND одним движением: | PS. Комбинация команд для установки BOYND одним движением: | ||
− | wget [ссылка на линукс-версию BYONDa] && unzip *_byond_linux.zip && cd byond && | + | wget [ссылка на линукс-версию BYONDa] && unzip *_byond_linux.zip && cd byond && make install && cd .. && rm -rf *byond* |
Не забудьте убрать '''[''' и ''']'''. | Не забудьте убрать '''[''' и ''']'''. | ||
Строка 57: | Строка 57: | ||
Теперь скачаем и скомпилируем код станции. | Теперь скачаем и скомпилируем код станции. | ||
# На основной машине идем на гитхаб-страницу желаемой станции и жмем на кнопочку "Clone or Download". Там мы увидим ссылку на этот репозиторий, подозрительно похожий на ссылку на гитхаб-страницу. Разве что в конце будет стоять .git. Это ссылку надо скопировать. | # На основной машине идем на гитхаб-страницу желаемой станции и жмем на кнопочку "Clone or Download". Там мы увидим ссылку на этот репозиторий, подозрительно похожий на ссылку на гитхаб-страницу. Разве что в конце будет стоять .git. Это ссылку надо скопировать. | ||
− | # Возвращаемся к полюбившейся(полюбившейся, ясказал!) командной строке | + | # Возвращаемся к полюбившейся(полюбившейся, ясказал!) командной строке, пишем '''git clone''', ставим пробел и вставляем ссылку. Enter. |
# Дожидаемся, когда закончится закачка... | # Дожидаемся, когда закончится закачка... | ||
− | # Дождавшись, зайдем в | + | # Дождавшись, зайдем в директорию со скаченным кодом. Для этого надо выполнить '''cd''', пробел и имя репозитория, что вы качали. Например, для блюбея, чей гитхаб открывается по ссылке [https://github.com/animusdev/Old-World-Blue https://github.com/animusdev/Old-World-Blue], имя репозитория и имя директории будет Old-World-Blue. |
− | # Зайдя в | + | # Зайдя в директорию компилируем билд командой '''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. Комбинация команд для скачивания и компилирования кода в одной команде | PS. Комбинация команд для скачивания и компилирования кода в одной команде | ||
Строка 78: | Строка 78: | ||
==Безопасность превыше всего!== | ==Безопасность превыше всего!== | ||
WIP | 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 |
Текущая версия от 20:04, 14 апреля 2017
Предисловие
В качестве примера используется ОС Debian 8 x64. В гайде присутствуют инструкции и для 32-х битного Дебиана. Также этот гайд можно использовать для Убунты и, возможно, для других Дебиано-подобных Линуксов. Для других Линуксов замените apt-get и dpkg на пакетные менеджеры этих ОС. К слову, на форуме BYOND есть раздел LINUX TALK с инструкциями для установки BYOND на Линуксы.
Общие понятия
Итак, вы закончили освоение исходного кода и уже разобрались как создать свою станцию и даже подняли на своем древнем ПеКа локалочку. Теперь у вас появилась мысль провести свой ивэнт или просто держать сервер 24/7 и кто-то вам даже подсказал использовать для этого VDS(также известный как VPS). Вы даже уже наверняка приобрели один на странного вида сайте. Ну или планируете сделать это в будущем. Что значит "а где взять бесплатный"? Бесплатна только мышь в мышеловке! Или сыр... Да какая разница, сейчас эти штуки стоят совсем недорого и рублей за 300-500 можно арендовать неплохой виртуальный выделенный(или приватный, кому как нравится) сервер на целый месяц. Да-да, именно так расшифровывается этот VDS(VPS). "Виртуальный", потому что это один обычный сервер, "поделенный" на несколько с помощью магической виртуализации. Но отойдем от теории, мы сюда за сервером пришли, а не пересказом википедии, да?
Когда вы заказывали(или еще закажите) свой VDS, вам должны были дать три вещи. Это IP вашего сервера, логин(скорее всего "root") и пароль для доступа к серверу. Все, делайте с этим что хотите, а я пошел. Щутка.
Первым делом вам потребуется нечто, называющееся ssh-терминал. Для Виндозников это может быть PuTTY, линуксоиды могут ограничиться простым набором магической фразы ssh %IP% в командной строке, где %IP% - ip-адрес вашего сервера.
Вернемся к Виндозникам. После того как скачаете PuTTY открываете PuTTY.shexe и в поле Host Name пишите полученный IP. А если после этого в поле Saved Session написать какое-либо понятное имя для вашего нового сервера и затем нажать на кнопочку Save, то в последствии вы сможете открыть свой сервер просто дважды кликнув на строчке с его именем в громадном поле. Нажимаем Open и мы уже на полпути к нашему серверу, но злостный PuTTY что-то от нас хочет. Не пугайтесь, просто PuTTY в первый раз видит ваш сервер и он тоже слегка в шоке. Просто жмите "ДА", в последствии таких сообщение не будет.
Вот наша консоль светится зловещим "login as:" и мы можем смело писать туда "root"(или что вам дали в качестве логина). На появившийся запрос пароля также смело вводите его, но учтите: символы отображаться не будут! Вот так, даже банальных звездочек-точек не будет. Не забудьте использовать Enter после ввода логина и пароля, а то всякие бывают...
После всех унижений вы наконец достигли точки назначения №1: вам открылась командная строка вашего сервера. Поздравляю, на этом ваш эпический квест "Подключиться к VDS" закончен, вот вам новый. Называется "Что делать дальше". Опыт и шмот возьмете потом, сейчас склады пусты.
Как установить BYOND
Готовимся к установке
Для Виндозников будет шоковым состоянием первый раз находится в системе, отличной от подделок Microsоfta, но ничего, привыкнут. Для справки: многие команды для cmd то бишь командной строки виндоуза могут работать и в линуксе. А могут и не работать. Мы же для верности будем использовать только набор файловых команд и парочку команд сверху.
Для начала проверьте, какой разрядности у вас система. Это очень важно, т.к. сам BYOND 32-х битный и могут возникнуть проблемы при его установке на 64-х битную ОС без необходимых дополнение. Битность вашей ОС должна быть указанна где-нибудь в письме с данными логина-пароля, но может быть также в панели управления, если таковая имеется. В крайнем случае используйте команду uname -m. Если результат x86_64, значит 64-х битная. Если i386 то вы на 32-х битной ОС. На результат типа armh я пошлю вас подальше, ибо это армовские процессоры и они не для обычных юзеров.
Дальше перечислим названия необходимых пакетов с программами.
- unzip - необходим для распаковки zip-архивов.
- git - для скачивания свежего кода станции и его упрощенного обновления.
Для установки BYONDa на 64-х битные системы так же необходимы:
- libc6:i386
- libncurses5:i386
- libstdc++6:i386
Если вы хотите иметь сервер с базами данных то необходимо еще для 64-х битных систем
- libmysqlclient-dev:i386
или для 32-х битных:
- libmysqlclient-dev
PS. Если вы работаете не от root-пользователя, то вам потребуется дополнительно добавлять sudo к каждой команде. Это аналог "Запустить от имени администратора", но я сомневаюсь, что вы успели создать нового пользователя поэтому даю команды без использования sudo.
Итак, вот комбинация команд для 32-х битной ОС, где 2 команды совмещены символом &&. По желанию добавить libmysqlclient-dev в конец команды.
apt-get update && apt-get install unzip git
Комбинация команд для пользователей 64-х битной ОС, где 3 команды совмещены символом &&. По желанию добавить libmysqlclient-dev:i386 в конец команды.
dpkg --add-architecture i386 && apt-get update && apt-get install unzip git libc6:i386 libncurses5:i386 libstdc++6:i386
Установка BYOND
Дальше мы поставим BYOND для линуксов.
- На основной машине идем на сайт BYONDa в раздел скачивания http://www.byond.com/download/ где кликаем правой кнопкой мыши на стабильную или бета-версию клиента для Линукса и жмем "копировать адрес ссылки".
- Затем в командной строке вашего VDS пишем wget, ставим пробел и вставляем ссылку. Enter.
- Через пару секунд закачка закончится и нужно будет выполнить команду unzip *_byond_linux.zip для распаковки архива.
- Теперь, чтобы установить BYOND надо выполнить cd byond && make install.
- Финальным действием удаляем ставшие ненужными директории с помощью команды cd .. && rm -rf *byond*
PS. Комбинация команд для установки BOYND одним движением:
wget [ссылка на линукс-версию BYONDa] && unzip *_byond_linux.zip && cd byond && make install && cd .. && rm -rf *byond*
Не забудьте убрать [ и ].
Отлично, полпути мы прошли. BYOND установлен и по команде DreamDaemon -v будет показана версия клиента.
Скачивание кода и запуск сервера
Теперь скачаем и скомпилируем код станции.
- На основной машине идем на гитхаб-страницу желаемой станции и жмем на кнопочку "Clone or Download". Там мы увидим ссылку на этот репозиторий, подозрительно похожий на ссылку на гитхаб-страницу. Разве что в конце будет стоять .git. Это ссылку надо скопировать.
- Возвращаемся к полюбившейся(полюбившейся, ясказал!) командной строке, пишем git clone, ставим пробел и вставляем ссылку. Enter.
- Дожидаемся, когда закончится закачка...
- Дождавшись, зайдем в директорию со скаченным кодом. Для этого надо выполнить cd, пробел и имя репозитория, что вы качали. Например, для блюбея, чей гитхаб открывается по ссылке https://github.com/animusdev/Old-World-Blue, имя репозитория и имя директории будет Old-World-Blue.
- Зайдя в директорию компилируем билд командой DreamMaker, пробел и .dme файл. Его имя можно глянуть на гитхаб-странице вашей станции. У блюбея этот файл называется baystation12.dme Кстати, запомните имя вашего .dme файла, оно вам еще понадобится.
- Скомпилировав без ошибок переходим к запуску станции. Для этого используем код DreamDaemon [имя .dme файла].dmb [порт] [опции]. Для блюбея это было бы DreamDaemon baystation12.dmb 2506 -invisible -logself -trusted. Заметьте, все опции начинаются со знака -
- Рекомендованные опции
- invisible - не показывает сервер в клиенте BYONDa, в итоге зайти на ваш сервер можно только по прямой ссылке вида byond://ip-адрес:порт
- logself - создает файл [имя .dme файла].log с логом событий в каталоге с кодом станции. Полезен при выявлении проблем с запуском и работой сервера станции.
- 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