Linux — это сервер.

28.01.2019

Чтобы создать терминальный, файловый (FTP) или почтовый сервер на Linux, надо уметь работать в этой операционной системе. Иначе разобраться будет сложно. ОС не нужен мощный компьютер. Потому что она не расходует лишние ресурсы на графическое оформление. Дистрибутивы Линукса можно развернуть даже на старом ПК. Поэтому для создания различных серверов часто используют Linux или Ubuntu Server.

Об этом написано много различной литературы. Некоторые книги о Линуксе насчитывают тысячу страниц. Работать придётся через терминал и все команды вводить вручную. Но всё же вы сможете сделать небольшой Linux-сервер своими руками, который будет включать файловое хранилище, Web-сервисы и почтовый протокол.

Ubuntu Server создана на базе операционной системы Linux. Для её работы не нужен современный процессор, хорошая видеокарта или большой объём оперативной памяти. С Линукс можно развернуть сервер даже на старом ноутбуке. И в нём будут все нужные компоненты: почта, FTP, Web.

Скачать образ диска с Linux можно с сайта Ubuntu.ru. Выбирайте любую версию с Server (не Desktop!). Загрузка будет проходить через Torrent-клиент . Этот образ надо записать на болванку или флешку (с помощью LiveUSB). Также можно воспользоваться виртуальным приводом.

У Ubuntu упрощённый интерфейс. В нём нет никаких графических излишеств. Эта ОС прекрасно подходит, чтобы сделать Linux-сервер своими руками. С ней ресурсы компьютера будут использоваться для нужд домена. Ведь ей для работы нужно совсем немного.

Её установка проходит так:

  • Выберите язык и регион, в котором проживаете.
  • Придумайте имя администратора. Оно используется для управления сервером.
  • Также задайте имя пользователя в поле «Username for your account». Под этим аккаунтом вы будете общаться с техподдержкой Ubuntu.


Указываем имя пользователя в Ubuntu

  • Введите пароль. Подтвердите его.


Вводим пароль учетной записи

  • Укажите домен, если он есть. На нём будут находиться все сервисы: файловый (FTP), почтовый, хостинг для сайтов и так далее.
  • Подождите, пока установится система.
  • После этого она предложит дополнительные компоненты.

Вот список того, что необходимо для сервера Linux и его полноценной работы:

  • Open SSh. Используется для удалённого администрирования. Пригодится, если вы решите управлять сервисом с другого компьютера. Тогда на ПК с Линуксом можно будет отключить монитор и видеоадаптер.
  • LAMP. Комплекс утилит Linux, который включает Apache (Web-сервер). MySQL (базы данных) и PHP (язык программирования для CMS). Эти компоненты нужны для создания управляющего интерфейса.
  • Samba file server. Позволяет настроить обмен файлами между компьютерами. Если вам нужен FTP-сервер, выберите этот пункт.
  • Virtual Machine host. Устанавливайте, если собираетесь пользоваться возможностями виртуализации.
  • Print server. Сетевые принтеры.
  • DNS server. Система доменных имён. С ней можно распознать IP-адрес по имени компьютера и наоборот.
  • Mail server. Почтовый сервер.
  • PostgreSQL database. Объектно-реляционные базы данных.

Выберите то, что вам нужно, и подтвердите установку. При первом запуске надо будет ввести логин администратора и пароль. Откроется консоль. Она похожа на командную строку Windows или интерфейс операционной системы MS DOS.


Изначально вам надо будет проверить наличие обновлений. Введите команду «Sudo apt-get update» или «Sudo apt-get upgrade» без кавычек. После апдейта можно заняться настройкой всех компонентов серверов: FTP, почтового, Веб.

Для Ubuntu существует псевдографический интерфейс - Midnight Commander. Это аналог оболочки Norton Commander, которая разработана для системы MS DOS. С таким интерфейсом легче работать - всё нагляднее, чем в консоли.

Запуск терминала Linux

В современных Linux вместо консоли используется терминал. Чтобы в него зайти:

  1. Откройте «Приложения».
  2. Нажмите «Стандартные».
  3. Там будет «Терминал».


В него можно вводить команды так же, как в Ubuntu Server.

  • Чтобы установить компоненты LAMP (если их ещё нет), надо последовательно ввести команды «sudo apt-get update», «sudo apt-get install tasksel» и «sudo tasksel install lamp-server». После каждой нажимайте Enter.
  • Чтобы загрузить Open SSh, введите «sudo apt-get install openssh-server».
  • Чтобы поставить Samba file server, напишите «sudo apt-get install samba».

При установке MySQL из пакета LAMP нужно будет задать пароль администратора, для SQL.

Локальный Web-сервер

Для создания Web у сервера должен быть свой выделенный IP. Тогда после установки LAMP по этому IP-адресу будет доступна тестовая страница Apache. Это и есть будущий Веб. В дальнейшем на него можно будет поставить FTP, базы данных, почтовый протокол. Для настройки Web-сервера:

  • Установите phpMyAdmin. Для этого в терминале или в консоли введите друг за другом введите «sudo apt-get install phpmyadmin»


  • И потом «sudo service apache2 restart».
  • Компонент загрузится. Apache будет перезагружен. Дальнейшие действия зависят от версии операционной системы.

Если у вас Ubuntu 13.1 и выше, используйте команды:

  1. sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
  2. sudo a2enconf phpmyadmin
  3. sudo /etc/init.d/apache2 reload

Вбивайте их последовательно друг за другом, после каждой нажимайте Enter.

В Ubuntu 16.04, нужны другие указания:

  1. sudo apt-get install php-mbstring php-gettext
  2. sudo phpenmod mcrypt
  3. sudo phpenmod mbstring
  4. sudo systemctl restart apache2

После их ввода и автоматического перезапуска службы по адресу http:///phpmyadmin будет доступен веб-интерфейс.

  • Конфигурация и данные о ней находятся в папке сервера Apache «etc/apache2/». Apache2.conf - конфигурационный файл для дистрибутива
  • В директориях «mods-available»/«sites-available» и «mods-enabled»/«sites-enabled» находятся моды и сайты.
  • В Ports.conf расписаны прослушиваемые порты.
  • Если вы добавите после команды «sudo /etc/init.d/apache2» слово «Stop», Apache приостановит работу. Если «Start» - снова запустится. Если «Restart» - перезагрузится.
  • Чтобы самостоятельно выбирать путь для сохранения сайтов, последовательно введите в терминал «sudo a2enmod rewrite» и «sudo a2enmod userdir».

Каждый раз после внесения каких-либо изменений надо перезапускать службу командой «Restart».

Почтовый сервер

Чтобы создать почтовый сервер на Линукс, у вас уже должен быть зарегистрирован домен. Также нужно иметь статический IP.

  • Установите компонент Postfix. Для этого наберите в консоли «sudo apt-get postfix».
  • Когда он загрузится, напишите команду «sudo /etc/initd/postfix start». Сервис начнёт работать.
  • В Postfix уже прописаны параметры, которые нужны для полноценной работы с протоколом SMTP. Но всё же не помешает небольшая настройка.
  • Откройте файл /etc/postfix/main.cf.
  • Найдите в нём значение «mydomain =». После знака «=» напишите имя домена.
  • Потом отыщите «myhostname =». И введите имя машины.
  • Теперь почтовый сервер может отправлять письма другим компьютерам, которые находятся с ним в одной сети. Чтобы он мог посылать корреспонденцию и на другие домены в интернете, в файле «main.cf» найдите строчку «inet_interfaces =». Поставьте после неё слово «all».
  • В переменной «mynetworks =» пропишите диапазон адресов всех компьютеров вашей подсети (например, 127.0.0.0/8).

Если служба настроена верно, и выполнены все условия (постоянный IP-адрес, зарегистрированный домен), то Server сможет принимать и отправлять корреспонденцию. Если запись MX вашего домена ссылается на ваш хост.

Чтобы посмотреть логи ресурса, используйте команду «tail -f /var/log/mail/info». Чтобы получить от него сообщение, введите «mailq».

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

FTP-сервер Linux может понадобиться для обмена документами и загрузки файлов. Существует несколько версий таких ресурсов: vsFTPd, Samba, proFTPd.

Подробнее остановимся на vsFTPd. Его можно установить и запустить одной командой - «sudo apt-get install vsftpd». Дальнейшие настройки зависят от ваших предпочтений и от того, какой сервис вы хотите сделать. Для изменения параметров могут понадобиться права администратора.

  1. Сразу после загрузки программы система создаёт нового пользователя и добавляет в домашнюю директорию папку, которая предназначена для работы с серверным хранилищем. Также в каталоге «etc» появляется файл «ftpusers». Туда можно добавлять пользователей, которым запрещён доступ к файлам.
  2. После установки лучше сменить директорию, в которой должны находиться файлы, в папку «var». Для этого от имени администратора напишите команду «usermod -d /var/ftp ftp && rmdir /home/ftp».
  3. Создайте новую группу пользователей. Например, «userftp». Напечатайте в консоли «addgroup userftp».
  4. Добавьте в неё новый аккаунт (для простоты назовём пользователя и группу одинаково). Используйте команду «useradd -a /var/ftp -g userftp userftp». Она заодно создаёт пользователя. Чтобы включить в группу уже существующий никнейм, вместо «useradd» напишите «usermod».
  5. Надо придумать пароль новому пользователю. Введите в терминале «passwd userftp».
  6. Напечатайте «chmod 555 /var/ftp && chown root:userftp /var/ftp», чтобы предоставить аккаунту доступ к корневой папке файлового сервера.
  7. Теперь создайте публичную директорию. Последовательно введите «mkdir /var/ftp/pub» и «chown userftp:userftp /var/ftp/pub».

Изначально FTP запускается в автономном режиме. У неё есть скрипт, который играет роль демона. При такой функциональности доступно несколько команд. Они вводятся после строки «sudo service vsftpd».

  • Stop и Start. Отключение и включение.
  • Restart и Reload. Перезапуск. Нужен для применения новых настроек. Разница между командами в том, что во второй перезагрузка происходит без полного отключения.
  • Status. Информация о состоянии.

Дальнейшая настройка сервера заключается в переписывании файла конфигурации, который находится в etc/vsftpd.conf. У него простая и понятная структура. Разобраться в нём достаточно просто. Хотя для этого нужны определённые знания. Перед изменением этого файла имеет смысл сделать его резервную копию. Чтобы в случае выявления ошибок можно было всё восстановить. Введите команду «cp /etc/vsftpd.conf /etc/vsftpd_old.conf» и информация будет сохранена.

После этого можно приступать к редактированию.

  • В параметре «listen=» напишите «YES». Тогда сервер будет работать в независимом режиме.
  • «Local_enable» разрешает вход локальным пользователям.
  • «Write_enable» даёт им доступ в домашние каталоги.
  • «Anonymous_enable». Можно ограничить права анонимных пользователей, если поставить «NO». Также есть опция «no_anon_password» - анонимные входят без пароля. Её тоже можно запретить.

Если вы хотите делать публичный сервер, то после строки «listen» надо добавить несколько дополнительных параметров.

  • «Max_clients». Количество одновременных соединений.
  • «Idle_session_timeout» и «data_connection_timeout». Таймауты сессии.
  • «Ftpd_banner». Приветственное сообщение для посетителей. Можно написать, к примеру, «Hello!».

Терминальный сервер

Терминальный сервер на Linux предназначен для предприятий и офисов , все компьютеры в которых объединены в одну сеть. Очень удобно, когда с любого ПК (если у него есть доступ) организации можно зайти на терминал. Это открывает большие возможности для удалённого администрирования.

Для такой задачи подходит LTSP - Linux Terminal Server Project. Программа есть в стандартном пакете Ubuntu. Чтобы её установить:

  1. Введите команду «ltsp-server-standalone».
  2. Потом напишите «apt-get update && apt-get install ltsp-server-standalone».
  3. Подождите, пока всё загрузится и обновится.
  4. Теперь надо поставить клиентскую систему. Напечатайте «ltsp-build-client».
  5. Затем «ltsp-build-client -dist trusty -arch i386 -fat-client-desktop lubuntu-desktop».
  6. Используйте команду «debootstrap», и дистрибутив автоматически развернётся в директорию «opt/ltsp/i386».

Linux Server может работать даже на слабых ПК. Поэтому его очень часто используют для создания серверов и удалённого администрирования. На этой операционной системе делают почтовые сервисы, FTP-хранилища, терминалы.

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

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

Возможно, некоторые из них вы уже знаете, а о других услышите впервые. В обзоре учитывались такие характеристики, как простота установки и использования, цена, доступность коммерческой поддержки, надежность и так далее. А теперь давайте перейдем к списку 10-ти лучших linux дистрибутивов для сервера.

На первом месте нашего списка Ubuntu. Это очень популярный дистрибутив Linux, основанный на Debian и разрабатываемый компанией Canonical. Кроме версии для рабочего стола, есть версия для сервера.


Ubuntu имеет несложный установщик, проста в использовании и настройке, а также имеет коммерческую поддержку мирового уровня от компании Canonical.

Последний релиз Ubuntu 16.04, который состоялся в апреле 2016, стал еще лучше. Теперь здесь поддерживается OpenStack Mitaka support, и контейнерная виртуализация LXD, а также унифицированная система поставки пакетов Snappy. Кроме серверов, Ubuntu приспособлена для работы с новыми технологиями, такими как контейнеры, мобильные устройства и устройства интернета вещей IoT.

Сейчас Ubuntu чаще всего используется для обеспечения работы веб-серверов среди всех других дистрибутивов. Последний релиз Ubuntu имеет пометку LTS, это значит длительный срок поддержки. Такая операционная система будет получать обновления на протяжении пяти лет.

2. Red Hat Enterprise Linux

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


Разработчики из Red Hat активно принимают участие в развитии открытого программного обеспечения, у них даже есть собственная инфраструктура для создания веб-приложений, основанная на Red Hat Linux — OpenShift.

Дистрибутив Red Hat Linux используется крупными компаниями по всему миру, содержит самые новые, но уже достаточно проверенные технологии и обеспечивает поддержку и обновление версий своих дистрибутивов на протяжении десяти лет.

Red Hat Entrprice Linux основан на наработках дистрибутива Fedora, разрабатываемого сообществом и спонсируемого Red Hat. Fedora обновляется чаще, чем RHEL и служит тестовым полигоном для новых возможностей и технологий, которые потом будут включены в Red Hat. Но здесь нет такой стабильности и коммерческой поддержки как в Red Hat.

На данный момент последняя версия Red Hat Enterprice Linux 7, который разрабатывался с 2010 года и вышел в июне 2014. Основные улучшения это масштабируемость для предприятий, новая файловая система, которая может масштабироватся до 500 терабайт, а также поддержка технологии виртуализации Docker. Последний корректирующий релиз Red Hat Enterprse Linux 7.2 состоялся в ноябре 2015.

3. SUSE Linux Enterprise Server


SUSE Linux Enterprise Server (SLES) разрабатывается компанией Novell. Это стабильный, быстрый и простой в использовании дистрибутив Linux, с быстрой технической поддержкой 24/7.

Подобно тому как Red Hat Enterprice основан на Fedora, SUSE Linux основан на свободном дистрибутиве OpenSUSE. Разработчики фокусируются на стабильность, техническую поддержку на протяжении долгого времени и поддержку дистрибутивом самых новых технологий. Если у вас достаточно денег, чтобы платить за поддержку, это лучший linux для сервера.

Последний крупный релиз SUSE Linux Enterprise 12 (SLES 12) вышел в конце октября 2014 года. Здесь появились такие интересные возможности, как поддержка фреймворка Docker, полноценная система отката версий, горячее обновление ядра на лету, а также другие программные модули для улучшения бесперебойной работы и эффективности системы. В SLES 12 SP1, который вышел в декабре 2015 была добавлена поддержка настройки сети и JeOS.

4. CentOS


Если у вас есть сайт, размещенный на каком-нибудь веб-хостинге, есть много шансов, что ваш веб-сервер работает на CentOS. Это свободная система, основанная на Red Hat Enterprise Linux, причем это не полностью коммерческая система, но вы можете рассчитывать на коммерческую поддержку.

Community Enterprise Operating System или CentOS разрабатывается и поддерживается сообществом. За основу взят код Red Hat, но оттуда были удалены все товарные знаки этой системы. Можно сказать, что это лучший linux для сервера.

В 2014 году были заявления, что CentOS будет сотрудничать с Red Hat для уменьшения разрыва между ориентированным на инновации дистрибутивом Fedora и коммерческим дистрибутивом CentOS.

Но CentOS будет продолжать поставлять систему для пользователей бесплатно. В то же время эта система остается поддерживаемой сообществом, а не компанией Red Hat. Последняя версия CentOS 7.2 выпущена в декабре 2015 и основана на Red Hat Enterprise Linux 7.2.

5. Debian

Debian — свободная операционная система, и здесь нет коммерческой поддержки. Но вы можете воспользоваться поддержкой сертифицированных центров Debian, которые есть по всему миру. Проект Debian возник в 1993 году и сейчас на нем основано большое количество дистрибутивов, самые известные из которых: Ubuntu и Linux Mint.


Debian остается отличным вариантом, для тех, кто ценит стабильность взамен на отказ от последних технологий. Последним крупным стабильным релизом был Debian 8 Jessie, выпущенный в апреле 2015 года, он будет получать обновления в течение пяти лет.

В этой версии Debian перешел на новую систему инициализации Systemd, вместо старой SysV init, также было обновлено ядро и программное обеспечение — Apache, LibreOffice, Perl, Python, Xen Hypervisor, GNU Compiler Collection, окружение рабочего стола GNOME и Xfce. Последнее обновление Debian было в июле 2016, версия 8.5.

6. Oracle Linux

Если вы не знали, Oracle выпускает свой дистрибутив Linux — Oracle Linux. Он основан на Red Hat и содержит различные улучшения от компании Oracle.


Oracle Linux это достаточно сильный конкурент для Red Hat Enterprise Linux, так как поддержка от Oracle, наполовину дешевле, чем поддержка Red Hat.

Дистрибутив оптимизирован в первую очередь для работы баз данных, поэтому если вам нужны базы данных, лучше использовать именно этот дистрибутив.

Последняя версия Oracle Linux 7.2 вышла в ноябре 2015 и основана на Red Hat Enterprise 7.2.

7. Mageia / Mandriva

Mageia — это форк с открытым исходным кодом проекта Mandriva Linux, который был закрыт в 2011 году. Релиз Mageia 5 состоялся в 2015 году, а релиз Mageia 6 ожидается в августе-сентябре 2016.


Этот дистрибутив разработан во Франции и пользуется популярностью в Европе и Южной Америке. Название Mandriva и сама кодовая база взята из дистрибутива Mandrake и Connectiva Linux.

Mageia сохраняет сильные стороны Mandriva и развивается дальше поддерживая новые функции и возможности. Обновления Mageia выпускаются раз в 9 месяцев и каждый релиз поддерживается в течение двух циклов, 18 месяцев.

8. ClearOS

ClearOS — это дистрибутив с открытым исходным кодом на основе Red Hat Enterprise Linux и CentOS, разрабатываемый в Intel. Он может использоваться в качестве сервера, шлюза в сеть, или платформы для приложений.


Ранее известный как ClarkConnect, ClearOS стал отличным вариантом для реализации сервера на Linux для малого бизнеса. Здесь есть отличный веб-интерфейс, для управления системой, а также очень много документации. Поэтому этот дистрибутив будет отличным вариантом для начинающих.

Кроме коммерческой версии, есть ClearOS Community Edition, а также недорогая профессиональная версия, в которой есть техническая поддержка и целый ряд дополнительных функций. Дистрибутив поддерживается Clear Foundation, также здесь есть магазин приложений как платных, так и бесплатных, которые могут быть использованы для расширения возможностей ОС.

Последний крупный релиз ClearOS стал доступен для загрузки в марте 2015. Последнее обновление ClearOS 7.2 получило редакции для дома и бизнеса, улучшенную поддержку виртуализации (в том числе Microsoft HyperV), поддержку XFS и Btrfs, новую динамическую панель приборов, поддержку кэширования LVM и поддержку IPv6.

9. Arch Linux

Простой, легкий дистрибутив Arch Linux, разработан для более опытных пользователей Linux. Здесь нет поддержки, а установка совсем непростая, в отличие от того, что предлагают другие лучшие дистрибутивы linux для сервера. Но это не значит, что Arch Linux нельзя использовать в качестве сервера.


Как и в Gentoo, здесь используется модель скользящих релизов, а это значит, что система всегда будет обновляться до самой новой версии, без релизов.

Менеджер пакетов Pacman обеспечивает обновление программного обеспечения до последних версий, с разрешением зависимостей. Правда, такой способ обновлений может иногда вызвать проблемы, при неаккуратном обращении.

10. Slackware

Несмотря на то что Slackware не является коммерческим дистрибутивом, разработчики поддерживают отношения с несколькими компаниями, которые обеспечивают платную поддержку.


Это один из самых ранних дистрибутивов Linux. Он выпущен в 1993 году и имеет много поклонников. Разработчики регулярно выпускают новые версии, последняя Slackware 14.2 вышла в июле 2016.

Выводы

Вот и подошел к концу наш обзор, теперь вы знаете какой дистрибутив linux выбрать для сервера..04. Возможно, здесь перечислены не все лучшие дистрибутивы. Какой linux лучше сервера по-вашему? Какой используете? Напишите в комментариях?

Вы не знаете как создать локальный сервер на LINUX? Тогда эта статья для вас. В ней я доступно расскажу как создать и настроить локальный сервер на LINUX.

В последнее время популярность свободного программного обеспечения, и в том числе операционных систем семейства LINUX растет быстрыми темпами. Сегодня linux уже совсем не тот, что раньше. Для того, чтобы начать работать с ним, достаточно лишь базовых знаний о компьютере. «Из коробки» уже доступны большинство программ, необходимых неискушенному пользователю. Однако если вы являетесь веб-разработчиком, или просто создаете для себя сайт, вам, скорее всего, понадобится локальный сервер. И полистав некоторые форумы, я заметил, что пользователи, перешедшие с windows систем в linux сталкиваются с некоторыми проблемами при создании сервера у себя на компьютере.

Нам нужно чтобы наш сервер поддерживал не только статические сайты, но и большинство современных CMS, таких как WordPress, Joomla, Drupal и др. Для этого нам будут нужны следующие компоненты:

  • apache (веб-сервер);
  • php (язык, на котором написаны многие CMS);
  • mysql (сервер баз-данных).

Сочетание Apache + PHP + MySQL является достаточно популярным. В windows среде его обычно называют WAMP (об этом я писал в ). В linux же, как вы уже, неверное, догадались, существует аналогичное название - LAMP (Linux + Apache + PHP + MySQL).

Итак, первым делом мы установим пакет программ LAMP , для чего в терминале введем следующие команды

sudo apt-get update
sudo apt-get install tasksel
sudo tasksel install lamp-server

Первой командой мы обновляем информацию с репозиториев, далее устанавливаем команду tasksel, необходимую для установки пакетов, и последней командой устанавливаем именно пакет LAMP .



В результате установки мы получим все необходимые компоненты для сервера, настроенные на правильное взаимодействие друг с другом.

Настройка веб-сервера Apache

У apache очень много настроек, которые, как и большинство настроек различных программ на linux хранятся в текстовых файлах. Но для начала мы обойдемся лишь изучением некоторых из них. Для комфортной работы нам этого вполне хватит.

Конфигурационные данные веб-сервера apache расположены в папке /etc/apache2/ .

В папках mods-available и sites-available находятся все доступные модули и сайты. А в папках mods-enabled и sites-enabled только те из них, которые включены в данный момент. Apache2.conf - основной конфигурационный файл apache. Ports.conf - список прослушиваемых портов.

Управление сервером осуществляется через терминал:

sudo /etc/init.d/apache2 start - запуск локального сервера

sudo /etc/init.d/apache2 stop - остановка сервера

sudo /etc/init.d/apache2 restart - перезапуск apache.

Командами

sudo a2enmod rewrite
sudo a2enmod userdir

включаем модули rewrite и userdir, позволяющий создавать пользовательские пути для сайтов.

После любого действия по включению-выключению модулей или сайтов, для применения изменений требуется перезапуск apache.

Теперь займемся созданием площадок для локальных сайтов. Я для примера создам два локальных сайта. Большее их количество создается аналогично.

Сначала создаем два файла с названиями будущих сайтов в директории /etc/apache2/sites-available/

1
sudo gedit /etc/apache2/sites-available/test1

и прописываем в нем следующие строки


ServerAlias test1 www.test1
DocumentRoot /home/user/sites/test1

AllowOverride All

2
sudo gedit /etc/apache2/sites-available/test2

и соответственно


ServerAlias test2 www.test2
DocumentRoot /home/user/sites/test2

AllowOverride All

/home/ваш пользователь/sites/test1

/home/ваш пользователь/sites/test2 .

В них создаем по одному файлу index.html. Для первой папки - с текстом «Страница первого сайта», для второй — «Страница второго сайта».

Для того чтобы в браузере при наборе в строке адреса названий наших сайтов test1 и test2 переход осуществлялся на локальных сервер редактируем файл hosts

sudo gedit /etc/hosts .

В первою строчку дописываем имена создаваемых сайтов.

У вас должно получиться следующее

127.0.0.1 localhost test1 test2
127.0.1.1 comp

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

comp - это имя вашего компьютера, поэтому оно будет другим.

В терминале вводим команды для включения сайтов

sudo a2ensite test1
sudo a2ensite test2

не забываем перезапустить apache.

Все готово! Можно проверить, набрав в браузере имена только что созданных сайтов.

Если у вас что-то не вышло или вышло не так - задавайте вопросы, постараюсь ответить.

В следующий раз я расскажу как работать с базами данных на локальном сервере в LINUX .

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

Так как основной системой для наших решений является Ubuntu Server, то ставить мы будем именно ее. Свежий релиз всегда можно получить со страницы: http://www.ubuntu.com/download/server . Мы настоятельно рекомендуем использовать только LTS-версии, как наиболее стабильные и имеющие продолжительный срок поддержки. Обычные версии, как правило, являются полигоном для обкатки новых технологий и могут работать нестабильно, не говоря уже о том, что срок поддержки в 9 месяцев абсолютно неприемлем для работающих серверных систем.

Первое что вы увидите, загрузившись с установочного носителя - это меню выбора языка:


От его выбора зависит не только то, на каком языке с вами будет общаться инсталлятор и система, но и какие локали будут сгенерированы. Набор локалей влияет не только на то, каким образом будут отображаться символы национальных алфавитов, но и на работу некоторых программ и служб, которые критичны к региональным установкам, например, Сервера 1С.

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


От автоматического определения раскладки следует отказаться:


И выбрать необходимую раскладку из списка, в большинстве случаев достаточно согласиться с выбором системы:


Затем следует указать комбинацию клавиш для ее переключения. Мы категорически не рекомендуем, если только это не ваша личная система, указывать что-либо иное, нежели принятое по умолчанию Alt+Shift . Потому как крайне неприятно, оказавшись в незнакомой системе, угадывать, какую именно комбинацию выбрал устанавливавший ее администратор.


Следующим шагом система попробует получить сетевые настройки, так как в большинстве сетей присутствует DHCP сервер, то уже на этом этапе система сконфигурирует сеть и получит доступ в интернет.


Если по каким-либо причинам автоматически получить сетевые настройки не удастся, вы можете указать их вручную или пропустить данный этап. Мы, исключительно с образовательной целью, выберем пункт Пропустить пока настройку сети .


После этого потребуется указать имя системы и имя пользователя. Следует помнить, что в Ubuntu учетная запись root отключена и созданный на этом этапе пользователь получает полномочия повышать свои права до суперпользователя при помощи команды sudo . Подробнее смотрите в нашей статье: . Также не забывайте, что Linuх - регистрозависимая система, поэтому правилом хорошего тона будет использование, в том числе и в именах пользователей, только нижнего регистра.


От предложения зашифровать домашний каталог также следует отказаться.

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

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

После настройки времени мы переходим к наиболее ответственному этапу - настройке диска. Система предлагает несколько вариантов, среди которых автоматическая разметка. В большинстве случаев мы выбираем именно этот пункт. Если говорить о единственном диске, то мы не видим смысла разбивать его на разделы, за исключением настольных систем, где на отдельный раздел стоит вынести /home .

В нагруженных системах имеет смысл выносить разделы с данными, например, /var/www или /opt/zimbra , на отдельные дисковые массивы. Если вы хотите установить систему на программный RAID, то обратитесь к статье: . В остальных случаях смело выбирайте автоматическую разметку без LVM, в этом случае на диске будет создан раздел подкачки (swap ) размером в единицы ГБ и корневой раздел на остальном пространстве.


Еще один важный вопрос - установка обновлений. С одной стороны, обновления позволяют своевременно закрывать уязвимости и поддерживать систему в актуальном состоянии, с другой, неконтролируемое обновление вполне способно привести к серьезным сбоям. Как поступить - выбирать вам. Мы предпочитаем на ответственных системах устанавливать обновления вручную, после их тестирования на специально выделенной системе, но если вы настраиваете роутер, то обновления можно включить.


Установив основу системы, инсталлятор предложит вам выбрать наборы ПО для установки. Можно выбрать на этом этапе необходимые роли и получить готовую к настройке систему. Разве это плохо, особенно для начинающего администратора? Плохо! И вот почему: при таком подходе система остается для администратора "черным ящиком", нет представления о назначении отдельных пакетов, их роли и влиянии на систему в целом. Поэтому мы рекомендуем отказаться от предлагаемых вариантов и устанавливать требуемые пакеты вручную. Это поможет вам глубже понять систему и взаимодействие между ее компонентами. А когда вы станете чувствовать себя в среде Linux как рыба в воде, вы сами решите нужно ли вам устанавливать софт автоматически.

Поэтому не выбираем ничего и (нажав Tab ) переходим к пункту Продолжить .


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

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


После чего вам будет предложено перезагрузить систему, установка на этом будет закончена и в вашем распоряжении окажется полноценная серверная операционная система.

Итак, первый вход в систему, мы бы не стали об этом писать, если бы не читательский отклик, который показал, что на этом моменте у многих возникали затруднения. Так вот, в Linux-системах процесс ввода пароля никак визуально не отображается, вам просто нужно набрать нужную комбинацию символов и нажать Enter , хотя внешне система ведет себя так, как будто ничего не происходит. Такое поведение унаследовано от UNIX-систем и преследует цели безопасности, чтобы злоумышленник не мог узнать длину вашего пароля.

После того, как вы вошли в систему, в первую очередь стоит настроить сеть. Как помните, мы не производили никаких настроек на стадии установки, поэтому возможности установить дополнительные пакеты у нас нет и следует выходить из положения тем, что есть в наличии. По умолчании в системе имеется текстовый редактор nano , он не столь удобен, как встроенный редактор mc , но нужно уметь им пользоваться, как раз на случай таких ситуаций.

Прежде всего повысим свои права до суперпользователя:

И откроем редактором конфигурационный файл с настройками сети:

Nano /etc/network/interfaces

И приведем его содержимое к следующему виду:

Auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.44.62
netmask 255.255.255.0
gateway 192.168.44.2
dns-nameservers 192.168.44.2 8.8.8.8

Первая секция auto lo задает настройки для петлевого интерфейса и уже присутствует в файле. Вторая секция задает настройки внешнего сетевого интерфейса eth0 для работы со статическим адресом. Опции понятны и отдельных разъяснений не требуют, адреса, естественно, взяты исключительно для примера. Если в вашем сервере несколько сетевых адаптеров, то следует прописать секцию для каждого из них.

Допустим мы хотим получать настройки второго сетевого адаптера eth1 по DHCP, для этого добавим секцию:

Auto eth1
allow-hotplug eth1
iface eth1 inet dhcp

Немного остановимся на опциях auto и auto-hotplug . Первая указывает инициировать подключение при загрузке, а вторая запускает механизм отслеживания горячего переподключения и инициировать получение адреса при наступлении данного события.

Закончив редактировать файл следует выйти из редактора по Ctrl + X , утвердительно (Y ) ответив на предложение записать файл.


После чего перезагрузите компьютер:

Если все сделано правильно, то система получит доступ к сети и интернет. Проверить это можно командой ping:

Ping ya.ru

Прервать выполнение команды следует комбинацией Ctrl + С , запомните эту комбинацию, она еще не раз вам пригодится.

Просмотреть настройки сетевых интерфейсов можно командой

Ifconfig


Этой же командой можно выяснить, какие именно сетевые карты видит система и под какими именами, для этого воспользуйтесь параметром HWaddr , который представляет MAC-адрес сетевой платы.

Перед тем, как приступить к дальнейшей настройке, систему следует обновить, для этого снова повысим права до суперпользователя и обновим список пакетов командой:

Apt-get update

Затем обновим систему командой:

Apt-get upgrade


Внимательно изучаем вывод команды, как видим, по какой-то причине не обновляются три пакета, в данном случае это пакеты ядра. Поэтому попробуем обновить их вручную. Для этого выполним команду:

Apt-get install linux-generic

Которая установит новое ядро и пакеты зависимостей к нему. После обновления систему также рекомендуется перезагрузить.

После перезагрузки установим инструменты администрирования: пакет ssh для удаленного доступа к серверу и файловый менеджер mc , который значительно упрощает работу с системой.

Apt-get install ssh mc

Для запуска mc используйте простую команду:

если хотите запустить его с правами суперпользователя.

Работа с ним довольно проста, те кто работал в DOS с менеджерами Norton Commander или Volkov Commander вообще не должны испытывать затруднений.


Навигация осуществляется стрелками, переход между панелями клавишей Tab , а выделение клавишей Insert . Основные действия указаны внизу, цифры рядом с ними обозначают номер функциональной клавиши, отвечающей за это действие, так, например, F4 - Правка, F8 - Удаление, F10 - Выход. Вы всегда можете свернуть, а затем развернуть, mc сочетанием клавиш Ctrl + O и получить доступ к консоли.


В открывшемся окне стрелками перейдите на опцию Встроенный редактор и выберите ее при помощи клавиши Пробел . Для подтверждения настроек и выхода нажмите Далее .


Это позволит сразу использовать для редактирования конфигурационных файлов более удобный чем nano встроенный редактор.


В заключение проверим возможность удаленного подключения, для этого будем использовать популярную утилиту PuTTY (скачать). В последней версии просто достаточно указать IP-адрес или доменное имя сервера:


Однако, на всякий случай, проверьте в Window - Translation кодировку соединения, там должно быть указано UTF-8 .


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

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

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

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

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

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


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

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

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

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


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

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

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

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

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

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


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

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

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

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



Asterisk на Banana Pi

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

Linux — это сервер