Как создать свой первый безопасный веб-сервер, готовый к продуктиву / Хабр
В этом руководстве мы рассмотрим некоторые из лучших методик создания своего первого безопасного сервера. Мы пошагово разберём весь процесс, и в результате получим сервер, полностью готовый к использованию в продуктиве для вашего приложения. Конечно, это не исчерпывающее руководство. Безопасный сервер — это постоянный поиск новых ресурсов и бесконечные улучшения. Но с этим материалом вы можете начать создавать собственную инфраструктуру.Для прогона тестов мы будем использовать Amazon EC2, но можно взять и Amazon LightSail, Digital Ocean, Vultr или другой сервис. Все они конфигурируются одинаково, так что выбирайте тот, который вам по душе.
Создаём публичный и приватный SSH-ключи
Сначала создадим пару ключей, которые понадобятся некоторым хостам при установке сервера. Этот и некоторые другие шаги можно пропустить, если вы решите создать свою пару ключей при запуске сервера на Amazon.SSH-ключи мы будем создавать с помощью ssh-keygen.
$ ssh-keygen -t rsa -b 4096В результате получим два файла: id_rsa и id_rsa.pub (приватный и публичный ключи). Никогда и никому не передавайте свой приватный ключ.
Подробную инструкцию по созданию ключей вы найдёте здесь.
Импорт публичного ключа в Amazon
Импортируем только что созданный публичный ключ в платформу Amazon.- Заходим в консоль управления Amazon.
- Кликаем AWS services → Compute > EC2
- Кликаем на левое меню Network & Security → Key Pairs
- Кликаем «Import Key Pair» и загружаем публичный ключ (id_rsa.pub)
Создаём свою виртуальную машину
Установим в Amazon EC2 виртуальную машину под управлением Ubuntu. Настройка подробно описана здесь:- Заходим в консоль управления Amazon.
- Кликаем AWS services → Compute → EC2
- Выбираем запускаемый экземпляр.
- Выбираем один из образов. В нашем случае это будет Ubuntu Server 16.04 LTS (HVM), с SSD-накопителем (но вы можете выбрать то, что вам больше подходит).
- Выбираем виртуальную машину (в соответствии с вашими нуждами). Кликаем «Review» и «Launch».
- Открываем новую вкладку и импортируем в Amazon созданный публичный ключ.
- Здесь нас попросят «выбрать существующую пару ключей или создать новую» («Select an existing key pair or create a new key pair»). Жмём «выбрать существующую» («Choose an existing key pair»). Выбираем ранее загруженный ключ.
- Кликаем «Launch Instances».
- Кликаем на ссылку виртуальной машины, которую мы только что создали.
Подключаемся к новому серверу
Обращаемся к виртуальной машине по SSH.Пишем в терминале:
$ ssh <USЕR>@<IP-ADDRЕSS> -p 22 -i <PATH-TO-PRIVАTЕ-KEY>
<USЕR>
: пользователь Linux-системы. В случае с Amazon используйте ubuntu, на других сервисах — root<IP-ADDRЕSS>
: IP-адрес созданной нами виртуальной машины. Это поле «Public DNS (IPv4)» во вкладке «Description» нашего сервера.<PATH-TO-PRIVATЕ-KEY>
: полный путь к сгенерированному ранее приватному ключу (например, /Users/flavio/.ssh/id_rsa).-i <PATH-TO-PRIVATЕ-KEY>
: это можно пропустить, если вы добавили ключ в свой SSH-агент.
Даём доступ новому пользователю
Создадим новый аккаунт пользователя по имени “wizard”:$ sudo adduser wizardДадим “wizard” разрешение выполнять sudo. Откроем файл:
$ sudo nano /etc/sudoers.d/wizardИ зададим содержимое:
wizard ALL=(ALL) NOPASSWD:ALLСоздадим директории:
$ mkdir /home/wizard/. ssh # create authorized_keys file and copy your public key here $ nano /home/wizard/.ssh/authorized_keys $ chown wizard /home/wizard/.ssh $ chown wizard /home/wizard/.ssh/authorized_keysСкопируем публичный ключ (PATH-TO-PUBLIC-KEY) и вставим в удалённый экземпляр /home/wizard/.ssh/authorized_keys. Настроим разрешения:
$ chmod 700 /home/wizard/.ssh $ chmod 600 /home/wizard/.ssh/authorized_keys
Обеспечиваем безопасность
Обновляем все установленные пакеты.$ sudo apt-get update $ sudo apt-get upgradeМеняем SSH-порт с 22 на 2201. Для конфигурирования файрвола (ufw, Uncomplicated Firewall, незатейливый файрвол) открываем файл /etc/ssh/sshd_config:
$ sudo nano /etc/ssh/sshd_configи меняем эти данные:
Port 2201 PermitRootLogin no PasswordAuthentication no # add this to avoid problem with multiple sshd processes ClientAliveInterval 600 ClientAliveCountMax 3Перезапускаем SSH-сервис:
$ sudo service ssh restartКонфигурируем Uncomplicated Firewall (UFW) так, чтобы пропускались только входящие подключения SSH (порт 2201), HTTP (порт 80) и NTP (порт 123).
# close all incoming ports $ sudo ufw default deny incoming # open all outgoing ports $ sudo ufw default allow outgoing # open ssh port $ sudo ufw allow 2201/tcp # open http port $ sudo ufw allow 80/tcp # open ntp port : to sync the clock of your machine $ sudo ufw allow 123/udp # turn on firewall $ sudo ufw enable
Конфигурируем серверные часы
Устанавливаем в качестве локального часового пояса UTC:$ sudo dpkg-reconfigure tzdataВыбираем опцию ‘None of the Above’ и снова UTC.
Отключаемся и добавляем наш ключ в SSH-агент
Для отключения вводим:$ exitа потом добавляем ключ.
Добавляем в Amazon разрешения по порту
Это необходимо сделать в Amazon. Зададим SSH-порт, который будем использовать также на Amazon.- Заходим в консоль управления Amazon.
- Кликаем AWS services > Compute > EC2
- Кликаем на левое меню Network & Security → Security Groups
- Выбираем группу безопасности, относящуюся к нашей виртуальной машине.
- Кликаем Action > Edit Inbound Rules
- Кликаем «добавить правило» («Add Rule») и задаём: Type: Custom TCP, Port Range: 2201, Source: 0.0.0.0/0 и Description: SSH
Подключаемся с новыми данными
Теперь вы можете подключиться к серверу по новому порту как новый пользователь:$ ssh wizard@<IP-ADDRESS> -p 2201 -i <PATH-TO-PRIVATE-KEY>Теперь у вас есть сервер, готовый обслуживать ваше приложение.
Как создать собственный сервер с нуля
Сервер — необходимая часть любой системы, основанной на использовании информационных технологий. Мы пользуемся серверами каждый день — например, почтовые ящики любых провайдеров (Google, Yandex, Mail, Yahoo и др.) связаны с облачными серверами, хранящими весь объем получаемой и отправляемой корреспонденции.
Существует несколько видов серверов, отличающихся по стоимости и функциям, поэтому их можно использовать как в коммерческих, так и в личных целях.
Создание собственного сервера не настолько сложная задача, как может показаться в начале. Даже не имея опыта в настройке серверов, написании кода или, в целом, работы с подобными технологиями, сервер может создать практически любой пользователь. В этой статье вы узнаете про основные этапы создания собственного сервера.
Несколько вопросов перед началом создания собственного сервера
Что необходимо для создания своего сервера?
Физический сервер, виртуальный сервер или обычный компьютер. “Железо” вашего сервера является его главным компонентом. Вы можете использовать другой компьютер в качестве сервера, достаточно убедиться, что он оснащен процессором с частотой 300 МГц и 64 МБ RAM. Альтернатива — приобрести физический сервер или виртуальный сервер. От этого будет зависеть его стоимость.
Сетевой роутер (маршрутизатор). В большинстве случаев подойдет обычный беспроводной домашний роутер, которым мы пользуемся для выхода в Интернет.
Кабель Ethernet: Необходим при создании сервера, который будет находится рядом с вами. Эти кабели также известны как CAT5 и используются для подключения компьютеров при установке сервера. С помощью кабеля Ethernet можно увеличить скорость получения данных до 100 МБ/с данных. То есть к серверу можно подключиться как по беспроводной, так и по проводной технологии.
Память. Убедитесь, что выбранный сервер (или компьютер) обладает достаточным объемом оперативной памяти (RAM). В сервере RAM важна для обработки данных, поступающих с жестких дисков (HDD) на центральный процессор (CPU).
Если вы планируете собрать собственный сервер из нескольких компонентов, то вам понадобятся:
- Оперативная память DDR4
- Для более сложных задач процессоры Ryzen или Xeon
- Материнская плата HP, Dell, Asus или ASRock
- Жесткий диск в виде SSD или NVMe
- Система охлаждения
- Сетевая карта, роутер и кабель Ethernet
- Блок питания мощностью от 300-500 Вт
- Корпус для всех компонентов сервера
Сколько стоит создать собственный сервер?
Стоимость сервера преимущественно зависит от его физической оболочки. Если вы планируете использовать домашний компьютер в качестве сервера, то это обойдется вам бесплатно. Покупка отдельного сервера или сбор из компонентов может быть более затратной.
Есть альтернативные варианты, которые не только сократят ваши расходы, но и облегчат работу с сервером. К ним относятся облачные хостинги, VPS и выделенные серверы.
Облачный хостинг — распространенная услуга, которую можно приобрести у Amazon, Google, DropBox и т.п. Однако такой сервер, вероятнее всего, будет привязан к конкретному приложению и будет полностью контролироваться провайдером. У вас не будет возможности настраивать его под ваши нужды.
VPS, или виртуальный приватный сервер, представляет собой часть физического сервера, выделенного под ваши потребности с помощью технологии виртуализации. В данном случае вы вольны самостоятельно выбирать ОС, программное обеспечение, варианты использования ресурсов виртуального сервера. Такой сервер можно масштабировать в любой момент. Стоимость VPS от is*hosting стартует от $5. 00.
Выделенный сервер — это физически представленная машина, все ресурсы и мощности которой предоставлены только одному арендатору. Это наиболее надежный вариант хостинга, в котором исключен эффект “плохих соседей”, а уровень безопасности вынесен на более высокий уровень. Такие серверы пользуются популярностью у крупных проектов. Стоимость выделенных серверов от is*hosting стартует от $70.00.
Для чего нужен собственный сервер?
- Сервер для проекта. Это может быть сайт, мобильное приложение или площадка для разработки новой программы. В данном случае имеется в виду коммерческое использование сервера, для которого необходима определенная настройка.
- Сервер для торговли на биржах. Многие трейдеры выбирают вариант собственного сервера для более эффективной торговли на популярных биржах. Как выбрать VPS/VDS для Forex и MetaTrader? Для торговли ботами на Binance также подойдет виртуальный сервер — VPS для Binance.
- Сервер для хранения бэкапов. Если вы не хотите доверять свои резервные копии таким компаниям как Google или Apple, то вы всегда можете сохранять бэкапы необходимых устройств на свой собственный сервер.
- Игровой сервер. Иногда для полного погружения в игру необходим собственный сервер. Например, многие игроки Minecraft и CounterStrike прибегают к созданию своих серверов. Как создать свой сервер Minecraft?
- Домашний медиа сервер. Если вы хотите иметь доступ ко всем локальным медиафайлам на любом устройстве в вашем доме, сервер — одно из лучших решений. Чтобы сделать процесс еще проще, вы можете использовать такие сервисы, как Plex или Kodi, для управления медиа файлами.
Определите требования к серверу
Первым шагом при создании сервера является определение ваших требований. Вы должны учесть количество пользователей, которые будут обращаться к серверу, тип приложений, которые вы будете запускать, объем памяти, который вам потребуется, и уровень производительности. При принятии решений следует также учитывать будущий рост и масштабируемость.
Некоторые приложения требуют больше ресурсов, чем другие, поэтому важно выбрать сервер, способный удовлетворить ваши конкретные потребности. Например, вы можете заранее узнать о “весе” нужных программ и отталкиваться от этих значений.
Что касается производительности, то в данном случае стоит обратить внимание на процессор (CPU), объем оперативной памяти и устройства хранения данных. При аренде выделенного сервера или VPS у хостинг-провайдера такие параметры можно выставить во время выбора сервера.
Устройства хранения данных — это хранилища, где вы будете накапливать различные данные, включая резервные копии, базы данных, медиафайлы и т.п.. Это может быть как выделенное на сервере место, либо отдельное устройство (дополнительный сервер или диск).
Для создания собственного сервера необходим сетевой маршрутизатор, поэтому стоит заранее подготовится к обеспечению нужной пропускной способности. Если вы планируете создать веб-сайт с высокой посещаемостью или предоставляете услуги внутри мобильного приложения большому количеству пользователей, вам понадобится сервер с быстрыми сетевыми интерфейсами и высокой пропускной способностью.
Создавая собственный сервер, не забудьте, что объем хранимых данных на нем со временем будет увеличиваться, как и устанавливаемые программы. Будь то личный сервер или коммерческий, ориентируйтесь на возможности масштабирования.
Выберите тип сервера
Итак, у вас есть два пути: собрать сервер своими руками из необходимых компонентов (или старого компьютера) или арендовать сервер с нужным набором технических характеристик у хостинг-провайдера.
Среди физических серверов выделяют башенные (Tower, подходят для личного использования), стоечные (для установки в серверную стойку), гибридные (сочетание выделенного сервера и виртуальных) и блейд-серверы (установка в блейд-шасси). Такое оборудование является дорогостоящим вариантом.
Аппаратное обеспечение стоит дорого, а на настройку системы уйдут часы, даже если вы опытный пользователь. Аренда сервера — это более простой и безопасный вариант, поскольку предлагаются готовые решения, подстраиваемые под ваши потребности.
Рассмотрим наиболее простые и популярные варианты, которые будут стоить вам ежемесячной арендной платы в зависимости от используемых ресурсов:
- Выделенный сервер. Выделенный сервер обеспечивает ту же функциональность, как и сервер в собственности компании или конкретного пользователя, но обслуживается хостинг провайдером и находится в защищенном дата-центре. Существуют администрируемые и не администрируемые выделенные серверы, оба вида отличаются высокой производительностью, высокой скоростью соединения, гибкой настройкой.
Выберите опции
Если вы планируете арендовать сервер у хостинг-провайдера, то вам доступно несколько опций.
Администрируемый сервер предполагает предустановку операционной системы, удобной панели управления, основных сервисов (php, ftp, apache, mySQL и т.д.) помощь при недоступности сервера, настройка автоматических бэкапов, антивирусная проверка, консультации и т.п.
При выборе не администрируемого сервера, хостинг-провайдер предоставит вам его с установленной чистой ОС, либо без ОС (если вы указали данное требование в примечаниях к заказу). Вы получаете доступ к специальному интерфейсу для удаленного управления сервером (IPMI) и можете самостоятельно настраивать сервер под свои нужды.
Многие хостинг-провайдеры имеют международную инфраструктуру, поэтому вы можете выбрать локацию вашего сервера в зависимости от целей его использования.
Сконфигурируйте свой сервер
При создании сервера своими руками его конфигурация зависит от приобретенных компонентов и выбранного ПО. При аренде сервера в специальном конфигураторе вы можете выбрать те параметры, которые вам необходимы, включая некоторые дополнительные сервисы:
- Операционная система (версии Windows или Linux)
- Объем оперативной памяти
- Объем дискового пространства
- Наличие графического процессора
- Количество IP-адресов
- Панель управления
- Вид администрирования
- Регулярность резервного копирования
- Скорость порта и размер пакета трафика
- Тип защиты от DDoS атак
Если вы не определились с выбором конфигурации, то можете обратиться в техническую поддержку за помощью.
Выбор операционной системы вашего сервера зависит от личных предпочтений и необходимой гибкости. В пользу Windows говорят ее практичность, производительность и наличие широких возможностей. За счет своей надежности Windows Server идеально подходит для терминалов и файловых серверов. Семейство Linux отличается несколькими дистрибутивами (Debian, Ubuntu, CentOS), которые имеют свои преимущества и подходят для разных задач. Одним из первых дистрибутивов Linux для серверов является Ubuntu, который до сих пор составляет конкуренцию Windows.
Также для работы с сервером понадобится панель управления. Среди наиболее популярных и понятных вариантов: cPanel, ISPmanager, VestaCP, Plesk. Выбор панели может зависеть начиная от графического интерфейса и заканчивая возможностями управления. Для работы вам также понадобится дополнительное ПО (службы для работы с базами данных и др.).
Что касается устройств хранения, то рассмотрите возможность использования твердотельных накопителей (SSD) для ускорения доступа к данным и скорости чтения/записи. Если вам нужен большой объем памяти, используйте жесткие диски (HDD) или сетевые устройства хранения данных (NAS).
Обеспечьте безопасность вашего сервера
Защита ваших данных и приложений от несанкционированного доступа, кражи или повреждения предполагает несколько мер:
- Настройте брандмауэры для ограничения доступа к вашему серверу и блокирования несанкционированного трафика. Вы можете использовать встроенные брандмауэры операционной системы или брандмауэры сторонних производителей.
- Защитите методы удаленного доступа, такие как SSH (Secure Shell), чтобы гарантировать, что только авторизованные пользователи могут получить удаленный доступ к вашему серверу. Используйте надежные пароли и двухфакторную аутентификацию для дальнейшего повышения безопасности.
- Используйте шифрование для защиты конфиденциальных данных, которые передаются и хранятся на вашем сервере. Это может включать шифрование SSL/TLS для веб-трафика или шифрование диска для хранения данных.
- Регулярно обновляйте операционную систему, программное обеспечение и патчи безопасности. Это гарантирует, что все известные уязвимости устранены и не смогут быть использованы злоумышленниками.
- Отслеживайте и просматривайте журналы логов, чтобы вовремя обнаружить любую подозрительную активность или попытки получить доступ к вашему серверу.
- Обеспечьте физическую защиту сервера, разместив его в запертой серверной комнате, к которой имеют доступ ограниченный круг лиц.
Управление и обслуживание вашего сервера
Отслеживайте производительность и использование ресурсов вашего сервера, чтобы выявить потенциальные уязвимости и устранить их до того, как они приведут к проблемам. Используйте инструменты мониторинга производительности для отслеживания использования процессора, памяти, дисков и сетевого трафика (IDS/IPS).
Немаловажно настроить автоматическое резервное копирование на удаленное хранилище. Существует несколько способов создания бэкапов и разные виды хранилищ — в этой статье мы рассказали, чем они отличаются и как выбрать подходящий.
Никто не защищен от аварийных ситуаций, поэтому следует разработать план по восстановлению данных и периодически его пересматривать на случай новых угроз.
Управление сервером начинается еще на этапе его создания и зависит от выбранных компонентов, конфигурации и даже провайдера. Важно поддерживать безопасность, производительность и доступность вашего сервера на соответствующем вашим потребностям уровне. От этого, в целом, зависит ваш опыт работы с сервером.
Все описанные в статье шаги можно сделать самостоятельно, но стоит учитывать, что это займет время и потребует значительных технических знаний. Если вы хотите, чтобы работа была сделана быстро и без ваших усилий, напишите нам. Специалисты создадут сервер под ваши требования и предоставят все в лучшем виде.
Как создать свой собственный сервер
Сервер является жизненно важным компонентом любой компьютерной системы. Вы, наверное, уже знаете, что на рынке существуют различные типы и размеры серверов для коммерческого и личного использования. Однако знаете ли вы, что вы можете создать свой собственный сервер, не выходя из дома, без опыта программирования?
Если вы хотите научиться проектировать персональный сервер с нуля, эта статья для вас. Он содержит все, что вам нужно знать, от того, как построить свой собственный сервер до того, сколько это стоит.
Зачем создавать собственный сервер
Создание сервера — важный процесс обучения для всех, кто интересуется играми, управлением базами данных или компьютерами в целом. Наличие собственного сервера дает вам полный контроль над его характеристиками, гарантируя, что вы получите всю пропускную способность, необходимую для работы ваших компьютеров. Вы также можете повысить безопасность данных вашего сервера и обеспечить качество продукта, создав собственный сервер базы данных для предприятия вместо аренды готового сервера.
Создание сервера — более доступный вариант, чем вы думаете, и большинство необходимых компонентов можно легко приобрести в обычных или интернет-магазинах. После того, как вы освоите этот процесс, вы сможете зарабатывать на этом навыке, создавая серверы для других или обучая их этому.
Насколько сложно создать собственный сервер?
Создать сервер несложно, если у вас есть правильный набор инструментов, а также время и терпение, необходимые для его правильной сборки. Помимо создания персональных серверов, вы также можете успешно спроектировать бизнес-сервер для своей сети малого и среднего бизнеса, не прибегая к услугам профессионального технического специалиста.
Сколько времени занимает сборка сервера?
Профессионалу требуется от шести до десяти часов, чтобы создать выделенный сервер и настроить его в соответствии с потребностями бизнеса. Это не следует путать с облачными серверами, которые уже имеют физические точки доступа и нуждаются только в виртуальной настройке. Сама настройка программного обеспечения занимает от 10 до 30 минут.
Сколько стоит построить собственный сервер?
Создание сервера для малого бизнеса стоит от 1000 до 3000 долларов, в зависимости от того, что вы ищете. Для большинства малых предприятий обычно проще, дешевле и энергоэффективнее просто заплатить за сервер через сервисную платформу, такую как Amazon, и подключиться к их облачному сервису за ежемесячную плату. Настройка оборудования для облачного сервиса стоит меньше, поскольку поставщик имеет дело с фактическим оборудованием.
Насколько дешевле построить собственный сервер?
Создать файловый сервер дороже, чем купить его. Например, малый бизнес может потратить от 300 до 400 долларов на установку оборудования для арендованного сервера, но стоимость его создания с нуля может превышать 2500 долларов. Еще дешевле облачные серверы, аренда которых стоит от 5 до 10 долларов в месяц.
Что нужно для создания собственного сервера?
Чтобы построить выделенный сервер для игровой комнаты, домашнего компьютера или сети малого бизнеса, вам потребуется собрать некоторые компоненты. Есть много вариантов для рассмотрения, но те, которые перечислены ниже, являются наиболее важными.
- Компьютер : Вы можете перепрофилировать старый настольный компьютер в эффективный сервер, даже если графический интерфейс больше не работает. Серверу для работы не нужен графический интерфейс, поэтому он требует значительно меньше рабочих функций, чем стандартный компьютер. Достаточно убедиться, что на сервере установлен процессор с частотой 300 МГц и 64 МБ оперативной памяти (ОЗУ).
- Сетевой маршрутизатор : хотя сетевой маршрутизатор не является обязательным для тех, кто строит сервер, он добавляет уровень защиты вашей домашней или деловой сети. Маршрутизатор фильтрует пакеты данных, входящие и исходящие с вашего домашнего сервера.
- Кабель Ethernet (CAT5) : Эти кабели также известны как кабели категории 5 и используются для подключения к компьютеру при настройке сервера. С кабелем Ethernet (CAT5) вы можете получить до 100 МБ/с данных.
- Память: Для вашего сервера вам понадобится оперативная память. Это временная память, необходимая для обработки данных. На сервере оперативная память важна для обработки данных с жестких дисков (HDD) на центральный процессор (ЦП).
Создание сервера с нуля: пошаговое руководство
Для установки сервера требуется правильное оборудование для настройки сервера и работающий блок питания.Если вы никогда раньше не собирали ПК или что-либо, отдаленно связанное с компьютерной системой, вам необходимо тщательно выполнить следующие шаги, чтобы создать функциональный сервер для вашего дома или бизнеса.
Сборка серверного оборудования
Если у вас нет компьютера, который может служить вашим серверным оборудованием, вам нужно будет собрать оборудование самостоятельно. Для этой части вам нужно будет создать целый ПК с материнской платой, процессором, оперативной памятью, монитором и всеми остальными жизненно важными частями персонального компьютера. Единственная часть компьютера, которая не требуется, — это графический процессор (GPU).
Установка программного обеспечения с диска ОС
Операционная система (ОС) сервера отделяет его от обычного компьютера. Самой популярной серверной операционной системой является Linux. Купите Linux или используйте бесплатную версию с открытым исходным кодом, сохраните ее на диске своей операционной системы и установите на ПК через порт USB. Вам нужно будет подключить его к монитору, чтобы обеспечить плавный процесс. Инструкции по настройке произвольного массива независимых дисков или RAID будут отображаться на экране монитора.
Протестируйте свой сервер
Один из лучших способов протестировать свой сервер — настроить его для размещения одного или двух веб-сайтов. Это помогает иметь программное обеспечение для измерения производительности, прежде чем вы начнете тестировать свой сервер в качестве хоста веб-сайта. Правильный продукт покажет вам ошибки, которых вы не видели.
Как монетизировать свой сервер
Вы можете монетизировать свой сервер с помощью веб-хостинга. Как веб-хостинг, вы можете продавать серверное пространство веб-сайтам, которые хотят создать и поддерживать свой домен. Вы можете заработать еще больше денег, продавая виртуальные частные сети (VPN) своим клиентам в дополнение к опции хранения. VPN-сервер выступает в роли посредника, обеспечивая безопасность IP-адресов.
Нужны ли вам навыки программирования для создания сервера?
Да, вам нужно будет научиться программировать для создания и обслуживания сервера, особенно если вы пытаетесь создать облачный сервер для своего онлайн-сайта или приложения. Тип языка программирования, который вы изучаете, будет зависеть от используемого вами поставщика услуг. Python, Java и PHP являются одними из самых популярных языков программирования для Microsoft Azure и других поставщиков.
Можете ли вы научиться создавать сервер в учебном лагере по программированию?
Да, вы можете научиться создавать облачный сервер в учебном лагере по программированию, где обучают сетевому администрированию, администрированию баз данных или даже сетевой безопасности. Лучшие учебные курсы по кодированию — это динамично развивающиеся учебные заведения, которые позволяют вам получить необходимые знания по доступной цене.
Собирайте отзывы, размышляйте и повторяйте
Когда ваш сервер будет готов и настроен в вашем доме или офисе, вы сможете получать отзывы от окружающих. Вы также можете предоставить отзыв самостоятельно, если вы можете быть честным в отношении того, что нужно изменить. Даже если сервер еще не полностью заработал или не достиг того уровня производительности, на который вы рассчитывали, не нужно отчаиваться. Вы можете сделать шаг назад и внести улучшения.
Создание серверов начального уровня должно быть связано не с тем, сколько денег вы можете сэкономить, а с тем, сколько опыта вы можете получить. Способность видеть завершение задачи многое говорит о ваших навыках решения проблем, самоотверженности и критического мышления. Все эти качества ищут потенциальные клиенты, когда нанимают сотрудников в сфере высоких технологий.
Часто задаваемые вопросы о том, как создать собственный сервер
Что можно сделать с сервером дома?Домашний сервер можно использовать для управления и хранения данных в вашем доме. Это особенно полезно для частых геймеров и людей, которые работают из дома. Если у вас дома есть выделенный сервер, вы можете снять нагрузку с персонального компьютера.
Могу ли я настроить веб-сервер дома?Да, вы можете установить выделенный веб-сервер у себя дома, если хотите. Серверы не занимают слишком много вычислительной мощности, если вы не размещаете большое количество сайтов, поэтому вам не нужно беспокоиться о резком увеличении ваших счетов за коммунальные услуги. Все, что вам нужно сделать, это настроить его самостоятельно или вызвать мастера. Вы также можете оплатить облачный сервер.
Сколько стоит сервер?Аренда сервера стоит от 100 до 200 долларов в месяц, в зависимости от размера вашего дома, бизнеса или любого другого учреждения, которое подключено к серверу. Облачные серверы от Amazon Web Services (AWS) и аналогичных платформ стоят значительно дешевле.
Нужен ли серверу Интернет?Нет, для доступа к серверу не всегда требуется подключение к Интернету. Если ваш сервер подключен к локальной сети (LAN), вы сможете свободно им пользоваться независимо от наличия подключения к Интернету. Однако зависимость от сети Интернет будет в значительной степени зависеть от назначения сервера.
Как создать свой собственный сервер
Сервер является необходимой частью любой ИТ-системы. Мы используем серверы каждый день — например, почтовые ящики каждого провайдера (Google, Yahoo и т. д.) подключены к облачным серверам, на которых хранится весь объем отправленной и полученной корреспонденции.
Существует несколько типов серверов, различающихся по стоимости и характеристикам, поэтому их можно использовать как в коммерческих, так и в личных целях.
Создать свой сервер не так сложно, как может показаться на первый взгляд. Даже не имея опыта настройки серверов, написания кода или вообще работы с такими технологиями, создать сервер может практически любой. В этой статье вы узнаете основные шаги по созданию собственного сервера.
Несколько вопросов перед тем, как вы начнете создавать свой сервер
Что мне нужно для создания собственного сервера?
Физический сервер, виртуальный сервер или обычный компьютер. Аппаратное обеспечение вашего сервера является его основным компонентом. Вы можете использовать другой компьютер в качестве сервера, только убедитесь, что он имеет процессор 300 МГц и 64 МБ оперативной памяти. Другой вариант — купить физический или виртуальный сервер.
Сетевой маршрутизатор. В большинстве случаев подойдет обычный беспроводной домашний маршрутизатор, который мы используем для выхода в Интернет. Маршрутизатор может действовать как фильтр для пакетов данных, поступающих на ваш домашний сервер и исходящих от него.
Кабель Ethernet . Это необходимо, если вы настраиваете сервер в своей локальной области. Эти кабели, также известные как кабели CAT5, используются для подключения компьютеров при настройке сервера. С кабелем Ethernet вы можете увеличить скорость передачи данных до 100 МБ/с. Это означает, что вы можете подключиться к серверу с помощью проводной или беспроводной технологии.
Память. Убедитесь, что на выбранном вами сервере (или компьютере) достаточно памяти. На сервере оперативная память важна для обработки данных с жестких дисков (HDD) на центральный процессор (ЦП).
Как запустить выделенный сервер? Если вы планируете собрать собственный сервер из нескольких компонентов, вам потребуется:
- ОЗУ DDR4
- Для более требовательных задач попробуйте процессоры Ryzen или Xeon
- Материнские платы HP, Dell, Asus или ASRock
- SSD или жесткий диск NVMe
- Система охлаждения
- Сетевая карта, маршрутизатор и кабель Ethernet
- Блок питания мощностью 300-500 Вт
- Шасси для всех серверных компонентов
Сколько стоит построить собственный сервер?
Стоимость сервера зависит в основном от его физической оболочки. Если вы планируете использовать свой домашний компьютер в качестве сервера, вам это ничего не будет стоить. Покупка отдельного сервера или сборка из компонентов может обойтись дороже.
Существуют альтернативы, которые не только снизят ваши расходы, но и упростят управление сервером. К ним относятся облачный хостинг, VPS и выделенные серверы.
Облачный хостинг — это обычная услуга, которую можно приобрести у Amazon, Google, DropBox и т. д. Однако такой сервер, скорее всего, будет привязан к конкретному приложению и полностью контролироваться провайдером. Вы не сможете настроить его под свои нужды.
VPS или виртуальный выделенный сервер — это часть физического сервера, предназначенная для ваших нужд с использованием технологии виртуализации. При этом вы вольны выбирать операционную систему, программное обеспечение и варианты использования ресурсов виртуального сервера. Такой сервер можно масштабировать в любое время. Стоимость VPS от is*hosting начинается от 5 долларов.
Выделенный сервер — это физическая машина, все ресурсы и мощность которой выделены одному арендатору. Это самый надежный вариант хостинга, который исключает эффект «плохих соседей» и выводит уровень безопасности на более высокий уровень. Эти серверы популярны для крупных проектов. Стоимость выделенного сервера на is*hosting начинается от $70.00.
Зачем мне собственный сервер?
- Сервер для проекта.
Это может быть веб-сайт, мобильное приложение или сайт для разработки нового программного обеспечения. В данном случае мы имеем в виду коммерческое использование сервера, требующее некоторой настройки.
- Сервера для торговли на биржах.
Многие трейдеры предпочитают иметь собственный сервер для более эффективной торговли на популярных биржах. VPS для Binance также является отличным выбором для торговли ботами.
- Сервер для хранения ваших резервных копий.
Если вы не хотите доверять свои резервные копии таким компаниям, как Google или Apple, вы всегда можете хранить резервные копии нужных вам устройств на собственном сервере.
- Игровой сервер.
Иногда вам нужен собственный сервер, чтобы погрузиться в игру. Например, многие игроки в Minecraft и Counter-Strike прибегают к созданию собственных серверов. Как создать сервер Майнкрафт?
- Домашний медиасервер.
Если вы хотите получить доступ ко всем вашим локальным медиафайлам на любом устройстве в вашем доме, сервер — одно из лучших решений. Чтобы сделать этот процесс еще проще, вы можете использовать такие сервисы, как Plex или Kodi, для управления медиафайлами.
Определите свои требования к серверу
Первым шагом в создании сервера является определение ваших требований. Вам необходимо учитывать количество пользователей, которые могут получить доступ к серверу, тип приложений, которые вы будете запускать, объем памяти, который вам потребуется, и требуемый уровень производительности. Будущий рост и масштабируемость также следует учитывать при принятии решений о конфигурации.
Некоторым приложениям требуется больше ресурсов, чем другим, поэтому важно выбрать сервер, отвечающий вашим конкретным потребностям. Например, вы можете заранее определить требования к приложениям, которые хотите установить, и сделать свой выбор на их основе.
С точки зрения производительности следует обратить внимание на процессор (ЦП), объем оперативной памяти и объем хранилища. Если вы арендуете выделенный сервер или VPS у хостинг-провайдера, вы можете задать эти параметры при выборе сервера.
Устройства хранения — это место, где вы храните различные данные, в том числе резервные копии, базы данных, медиафайлы и т. д. Это может быть как выделенное место на сервере, так и отдельное устройство (дополнительный сервер или жесткий диск).
Для настройки собственного сервера вам понадобится сетевой маршрутизатор, поэтому рекомендуется подготовиться к правильной пропускной способности. Если вы планируете создать сайт с высокой посещаемостью или предоставлять услуги большому количеству пользователей в рамках мобильного приложения, вам понадобится сервер с быстрыми сетевыми интерфейсами и высокой пропускной способностью.
При создании собственного сервера помните, что объем хранимых на нем данных и установленного на нем программного обеспечения со временем будет увеличиваться. Будь то персональный сервер или коммерческий, сосредоточьтесь на масштабируемости.
Выберите тип сервера
Итак, у вас есть два варианта: собрать сервер своими руками (или старый компьютер) или арендовать сервер с нужными характеристиками у хостинг-провайдера.
Физические серверы включают в себя башню (для личного использования), стойку (для установки в серверную стойку), гибрид (сочетание выделенных и виртуальных серверов) и блейд (для установки в блейд-шасси). Такое оборудование является дорогим вариантом.
Оборудование стоит дорого, и настройка системы может занять несколько часов, даже если вы опытный пользователь. Аренда сервера — более простой и безопасный вариант, так как есть готовые решения, которые можно настроить под свои нужды.
В зависимости от используемых ресурсов рассмотрим самые простые и популярные варианты, которые будут стоить вам ежемесячную арендную плату:
- Выделенный сервер. Выделенный сервер предлагает ту же функциональность, что и сервер, принадлежащий компании или конкретному пользователю, но обслуживаемый хостинг-провайдером и расположенный в безопасном центре обработки данных. Существуют управляемые и неуправляемые выделенные серверы, оба из которых предлагают высокую производительность, высокую скорость соединения и гибкую настройку.
- ВПС. Это изолированная виртуальная среда на выделенном сервере с определенным процессором, оперативной памятью и жестким диском. Поскольку на выделенном сервере можно разместить несколько VPS независимо друг от друга, стоимость виртуального частного сервера намного ниже. В то же время он предлагает те же возможности, что и выделенный сервер.
Дополнительные функции
Существует ряд доступных опций и услуг, если вы хотите арендовать сервер у хостинг-провайдера.
Управляемый сервер включает в себя предустановку операционной системы, удобную панель управления, базовые сервисы (php, ftp, apache, mySQL и т. д.) и поддержку при недоступности сервера, настройку автоматического резервного копирования, антивирусную проверку, консультации и т.д.
Если вы выберете неуправляемый сервер, хостинг-провайдер доставит его вам с установленной чистой ОС, либо без ОС (если вы укажете это требование перед заказом). Вы получаете доступ к специальному интерфейсу удаленного управления сервером (IPMI) и можете настроить сервер под свои нужды.
Многие хостинг-провайдеры имеют международную инфраструктуру. Это позволяет вам выбирать расположение вашего сервера в зависимости от цели его использования.
Настройте свой сервер
Если вы строите сервер самостоятельно, его конфигурация зависит от приобретаемых вами компонентов и выбранного вами программного обеспечения. При аренде сервера вы можете выбрать нужные вам параметры, включая некоторые дополнительные услуги, в специальном конфигураторе:
- Операционная система (версии Windows или Linux)
- Объем оперативной памяти
- Место на диске
- Графический процессор
- Количество IP-адресов
- Панель управления
- Тип введения
- Регулярные резервные копии
- скорость порта и размер пакета трафика
- Тип защиты от DDoS-атак
Если вы не уверены, какую конфигурацию выбрать, вы можете обратиться за помощью в службу технической поддержки.
Выбор операционной системы для вашего сервера зависит от ваших личных предпочтений и необходимой вам гибкости. Windows имеет преимущество в практичности, производительности и широком спектре возможностей. Его надежность делает его идеальным для терминальных и файловых серверов. Семейство Linux характеризуется несколькими дистрибутивами (Debian, Ubuntu, CentOS), каждый из которых имеет свои преимущества и подходит для разных задач. Одним из первых дистрибутивов Linux для серверов является Ubuntu, который до сих пор конкурирует с Windows.
Вам также понадобится панель управления для работы с сервером. Среди самых популярных вариантов — cPanel, ISPmanager, VestaCP и Plesk. Выбор панели управления может зависеть от графического интерфейса и возможностей управления. Вам также понадобится дополнительное программное обеспечение (сервисы баз данных и т. д.).
В качестве хранилища рассмотрите твердотельные накопители (SSD) для более быстрого доступа к данным. Используйте жесткие диски (HDD) или сетевое хранилище (NAS), если вам нужно больше места для хранения.
Защитите свой сервер
Существует несколько способов защитить ваши данные и приложения от несанкционированного доступа, кражи или повреждения:
- Настройте брандмауэры для ограничения доступа к вашему серверу и блокировки несанкционированного трафика. Вы можете использовать встроенные брандмауэры операционной системы или сторонние брандмауэры.
- Безопасные методы удаленного доступа, такие как SSH (Secure Shell), чтобы гарантировать, что только авторизованные пользователи могут получить удаленный доступ к вашему серверу. Используйте надежные пароли и двухфакторную аутентификацию для дальнейшего повышения безопасности.
- Используйте шифрование для защиты конфиденциальных данных при передаче и хранении на вашем сервере. Это может включать шифрование SSL/TLS для веб-трафика или шифрование жесткого диска для хранения данных.
- Регулярно обновляйте операционную систему, программное обеспечение и исправления безопасности. Это гарантирует, что любые известные уязвимости будут исправлены и не могут быть использованы злоумышленниками.
- Отслеживайте и просматривайте журналы для обнаружения любых подозрительных действий или попыток доступа к вашему серверу.
- Физически обезопасьте сервер, поместив его в запертую серверную комнату с ограниченным доступом.
Управляйте своим сервером и обслуживайте его
Отслеживайте производительность сервера и использование ресурсов, чтобы выявлять потенциальные уязвимости и устранять их до того, как они приведут к проблемам. Используйте инструменты мониторинга производительности для отслеживания использования ЦП, памяти, диска и сетевого трафика (IDS/IPS).
Крайне важно настроить автоматическое резервное копирование на удаленное хранилище. Существует несколько способов создания резервных копий и различных типов хранилищ.
Никто не застрахован от чрезвычайных ситуаций, поэтому вы должны иметь план восстановления данных и регулярно пересматривать его в свете новых угроз.