Linux — это сервер

Операционная система Unix (как прородитель Linux) созадвалась прежде всего для серверных задач, поэтому большинство GNU утилит является консольными (т.е. работают только в командной строке Linux-терминала), потому-что на сервере нет необходимости в графической оболочке. Однако со временем функциональность серверных служб в Linux настолько выросла, что постоянное редактирование файлов конфигурации из командной строки стало затруднительным и поэтому для в настоящее время существует огромное количество графических инструментов администрирования (чаще реализованные в виде WEB-интерфейса), которые значительно упрощают жизнь системным администраторам.

Webmin-Configuration

На базе серверных служб и утилит Linux работает огромное количество коммерческих решений и продуктов. Linux сервер может выполнять практически любую серверную роль. Вкратце, постараюсь рассказать про основные роли Linux:

Файловый сервер Linux

Linux  может достаточно легко выступать в качестве файлового сервера как для Windows пользователей так и для Linux. Основной службой для этого выступает пакет Samba,  который позволяют обращаться к сетевым дискам и принтерам по протоколу используемому в Windows сетях. Имеет клиентскую и серверную части. Является свободным программным обеспечением, выпущена под лицензией GPL. С помощью Samba возможно организовать полноценный обмен файлами между пользователями с четким разграничением прав доступа.

Для более опытных системных администраторов могу сказать, что текущая версия Samba-сервера может выступать в роли контроллера домена и сервиса Active Directory (централизованное управление компьютерами и пользователями работающие на операционной системе Windows), способна обслуживать все поддерживаемые Microsoft версии Windows клиентов, в том числе Windows 10. Ранее это было возможно только при наличии дорогостоящего Microsoft Windows Server.

smb

Сервер базы данных

Практически все системы любой сложности и назначения не могут обходиться без базы данных. Не секрет, что практически все сайты размещенные в сети Интернет работают с использованием базы данных, которая работает на платформе Linux (как правило MySQL). Системы бухгалтерского учета (например 1С), CRM, проектные системы и прочие все используют базы данных.Однако большинство ранее написанных настольных приложений (работающие на пользовательских компьютерах) разработанных под Windows работают с использованием  баз данных под этой операционной системой. Однако в настоящее время в Linux их количество просто огромно, а функционал часто не уступает мощнейшим конкурентам от Microsoft или Oracle. Большинство известных баз данных в Linux имеют свои версии и под Windows. В настоящее время даже российский разработчик компания 1С активно развивает и поддерживает версии своих продуктов работающих под Linux. Самыми популярными являются следующие базы данных:

MySQL —  свободная реляционная система управления базами данных, является решением для малых и средних приложений.

PostgreSQL — свободная объектно-реляционная система управления базами данных. При помощи этой базы данных строят системы обработки больших данных и зачастую именно PostgreSQL конкурирует с Oracle DB.

query-builder

Сервер электронной почты

Как и любой другой сервер Linux очень даже пригоден для создания своего собственного сервера электронной почты. На базе Linux работает большинство бесплатных почтовых сервисов Google,Mail.ru, Yandex и другие. В отличии от Windows платформы (в которой большинство функциональных серверов являются платными) Linux имеет большое количество различных пакетов для запуска собственной службы корпоративной или личной электронной почты и предоставляются они бесплатно. Однако популярность Linux приводит к тому что большинство бесплатных решений модифицируются, дописываются и продают за деньги. Но тут есть свои плюсы — официальная поддержка, постоянные обновления, удобный интерфейс администрирования и контроля (не всем же нравиться работать в консоли).

Сервер Интернета

Это сервер, который обеспечивает доступ компьютеров локальной сети к сети Интернет. Такие сервера часто называют (прокси-серверами) и они выполняют следующие задачи:

  • Кэширование данных: если часто происходят обращения к одним и тем же внешним ресурсам, то можно держать их копию на прокси-сервере и выдавать по запросу, снижая тем самым нагрузку на канал во внешнюю сеть и ускоряя получен запрошенной информации.
  • Защита локальной сети от внешнего доступа: например, можно настроить прокси-сервер так, что локальные компьютеры будут обращаться к внешним ресурсам только через него, а внешние компьютеры не смогут обращаться к локальным вообще (они «видят» только прокси-сервер).
  • Ограничение доступа из локальной сети к внешней: например, можно запретить доступ к определённым веб-сайтам, ограничить использование интернета каким-то локальным пользователям, устанавливать квоты на трафик или полосу пропускания, фильтровать рекламу и вирусы.

Такие сервера так же очень часто разворачиваются именно на Linux. Самым распространенным функциональным является пакет Squid. Он является полностью бесплатным, а его функциональность при совместном использовании с сетевыми службами Linux-а дает огромный эффект.

proxy

 Телефонная станция (IP АТС — IP-PBX)

Связь и коммуникации между сотрудниками являются неотъемлемой частью практически любой организации и конечно связь невозможна без телефонной связи. Однако, с ростом технологических решений функциональность и требования к телефонной связи значительно выросли. Но позволить себе дорогостоящие, функциональные системы может позволить не каждый. Именно желание получить такую систему побудило создателей, самого популярного в мире телефонного решения (Asterisk), разработать бесплатный аналог таких система в Linux.

Asterisk в комплексе с необходимым оборудованием обладает всеми возможностями классической АТС, поддерживает множество VoIP-протоколов и предоставляет богатые функции управления звонками, среди них:
Голосовая почта
Конференц-связь
IVR (интерактивное голосовое меню)
Центр обработки звонков (постановка звонков в очередь и распределение их по абонентам, используя различные алгоритмы)
Call Detail Record (подробная запись о вызове) и множество других функций.

Благодаря свободной лицензии Asterisk активно развивается и поддерживается тысячами людей со всей планеты. Практически все «коробочные» IP-АТС работают на базе Linux и под управлением Asterisk. Данная АТС отлично работает на любых малобюджетных системах, например BananaPi 🙂

banAster
Asterisk на Banana Pi

Конечно это очень малая часть того, как Linux может быть сервером, так возможности безграничны. Linux может быть как простым файловым сервером так и узлом мощного вычислительного кластера в каком-нибудь научном центре. Linux сервер — это по большей части конструктор для специалистов и гиков, но его возможности практически безграничны.

Linux — это сервер