Как настроить веб-сервер на вашем собственном компьютере linux

Установка и настройка веб-сервера для сайта в Ubuntu

LAMP расшифровывается как Linux, Apache, MySQL, PHP. Связка технологий Apache, MySQL, PHP необходима для того, чтобы запустить веб-сайты как собственной разработки, так и сайты на популярных CMS: WordPress, Joomla, Prestashop, Drupal и прочих.

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

Установка Apache

Apache — это веб-сервер с открытым исходным кодом. Работу веб-сервера можно описать так: На каждый запрос, веб-сервер отдает ответ в зависимости от запроса.

Иными словами, по аналогии, если вы обратитесь с каким-либо вопросом к человеку, он вам ответит или не ответит.

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

Для того, чтобы установить веб-сервер Apache, введите команду в терминал:

Что такое команда sudo и зачем она нужна, вы можете прочитать в этой статье. 

После установки Apache, для проверки работоспособности веб-сервера, введите в браузере ip адрес сервера.

Если вы устанавливали Apache сервер на локально, например на ваш домашний компьютер, введите в браузере 127.0.0.1 и вы должны увидеть страницу приветствия веб-сервера Apache.

Установка PHP

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

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

После выполнения команды выше, введите в терминале php -v и вы должны удивить версию php:

Если вы у себя это видите в терминале, это значит, что php установлен. 

Установка MySQL

MySQL — это база данных, в которой хранятся данные вашего сайта. SQL — это язык запросов к базе данных MySQL. Подробнее о языке запросов SQL вы можете почитать в этой статье. 

Установка MySQL на ваш с сервер с Ubuntu/Linux очень простая. Для установки введите команду:

В процессе установки MySQL вас попросят ввести пароль для пользователя root в MySQL, затем попросят ввести пароль для root пользователя MySQL повторно. 

Будьте внимательны, перед вводом запишите пароль.

В данной статье мы установили не только MySQL сервер, но и консольный MySQL клиент. Для удобства работы с MySQL давайте установим графический веб-клиент к MySQL — PhpMyAdmin.

Для установки PhpMyAdmin введите команду:

В процессе установки PhpMyAdmin вам предложат настроить связку веб-сервера и phpmyadmin автоматически. На этом шаге выберите автоконфигурацию для веб-сервера apache2. 

На следующий вопрос о конфигурации ответьте Yes. После этого вас снова попросят ввести пароль к пользователю root.

После этого, установка и настройка phpmyadmin будет завершена. Для проверки работоспособности phpmyadmin введите в браузере ip адрес вашего веб-сервера и после слеша допишите phpmyadmin.

Если вы устанавливали phpmyadmin на локальный сервер, введите в браузере:

В результате вы увидите страницу авторизации phpmyadmin:

Введите root и пароль, который вы задавали в процессе установки MySQL и вы войдете в phpmyadmin.

Настройка конфига веб-сервера Apache для работы на домене

Очень часто простой установки веб-сервера Apache бывает недостаточно, если вы хотите разрабатывать сайт и просматривать его так, как будто он находится в интернете и доступен по вашему доменному имени, например superdomain.com.

Давайте настроим конфиг Apache2 для того, чтобы это реализовать.

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

После этого создайте каталог для вашего сайта:

Для того, чтобы мы могли вносить изменения в каталог superdomain, нам нужно изменить владельца каталога с пользователя root на вашего пользователя.

Для этого введите в терминале команду:

А после этого команду:

Последней командой мы поменяли владельца и группу каталога superdomain на вашего пользователя (вместо user:user напишите имя вашего пользователя)

Затем перейдите в созданный каталог superdomain и создайте в нем файл index.php и php скриптом.

Для этого в терминале введите команду:

и введите команду: 

после этого вставьте php скрипт, например с таким содержимым:

Для того, чтобы сохранить изменения в редакторе nano, нажмите сочетание клавиш ctr+x и букву y, затем enter.

Команды Linux описаны в этой статье.

А сейчас мы настроим конфиг веб-сервера apache2.

Для этого введите команду:

и вставьте этот текст:

После этого нажмите сочетание клавиш ctr+x и букву y, затем enter.

В этом конфиге мы создали указали пути к директории нашего сайта superdomain, указали название домена, правила, email веб-мастера, если пользователь будет видеть ошибку, пути к лог файлам apache и другие настройки.

После этого нам необходимо перейти в каталог apache :

и выполнить команду:

Если все сделали правильно после ввода этой команды вы должны увидеть это:

Для применения нового конфига apache для нашего сайта superdomain.com введите команду:

Если после запуска команды выше, веб-сервер apache2 не будет ругаться на ошибки, значит вы все сделали правильно и остался последний шаг, чтобы запустить наш сайт с домена superdomain.com.

Если у вас нет понимания команд которые вы вводите в терминал Linux, прочитайте статью о Bash командах.

Последнее изменение которое необходимо внести, для запуска сайта на домене superdomain.com, прописать в файле hosts ip-адрес сервера(в данном примере веб-сервер локальный) и название домена superdomain.com:

Файл hosts находится в Linux:

В операционной системе Winodows, файл hosts находится:

Все готово! Сохраните файл hosts и в браузере введите

В результате вы должы увидеть php вывод страницы index.php из каталога superdomain.

Выводы

В данной статье мы настроили LAMP сервер в операционной системе Ubuntu. Аналогично, вы можете создавать каталоги и конфиги apache2 для других ваших сайтов.

Мы показали базовые настройки LAMP. А если ваш проект перерастет во что-то большое, вы можете купить VDS сервер, от компании Timeweb с Ubuntu на борту и произвести настройку LAMP в нем. 

В следующих статьях мы рассмотрим расширенные настройки PHP, Apache, MySQL и то, как настройть WAMP(Windows, Apache, PHP, MySQL).

Оставайтесь с нами и следите за новыми публикациями в нашей группе VK.

Читайте также

Все материалы с сайта wh-db.com и ru.wh-db.com защищены авторским правом. Копирование, публикация, продажа и распространение материала строго запрещены.

Источник: https://ru.wh-db.com/article/ustanovka-i-nastroyka-web-servera-dla-sayta-v-ubuntu/

Установка веб-сервера (Apache, PHP, MySQL, phpMyAdmin) на Linux Mint

Если вы веб-мастер, или программист на PHP, или вам просто нужно запустить веб-сайт на вашем компьютере, то вы можете это сделать с помощью веб-сервера. На Linux веб-сервер (Apache), а также сопутствующие компоненты (PHP, MySQL, phpMyAdmin) устанавливаются буквально в несколько команд.

В этой инструкции будет показано, как установить веб-сервер для сайтов на Linux Mint.

Установка Apache, PHP, MySQL, phpMyAdmin на Linux Mint

Большинство операций мы будет делать в командной строке – терминале Linux.

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

sudo apt-get update sudo apt-get install apache2 mysql-server php libapache2-mod-php php-mysql php-xml php-gd php-imap php-mysql php-gettext phpmyadmin

В процессе установки появится окно, в котором вы можете установить пароль для MySQL:

Рекомендуется сразу установить пароль, это нужно для безопасности, также в своих стандартных настройках phpMyAdmin не даст войти без пароля.

Если для локального веб-сервера вы не хотите указывать пароль, то оставьте поле пустым, переключитесь клавишей TAB на OK и нажмите ENTER.

В этом окне оставьте всё без изменений, переключитесь клавишей TAB на OK и нажмите ENTER.

На вопрос «Настроить базу данных для phpmyadmin с помощью dbconfig-common?» клавишей TAB выберите «Нет» и нажмите ENTER:

Вот и всё! Веб-сервер (связка Apache, PHP, MySQL, phpMyAdmin) установлен и готов к работе. Откройте в браузере ссылку

Вы увидите стандартную страницу Apache:

Чтобы веб-сервер запускался вместе с каждым включением компьютера, выполните команду:

sudo systemctl enable apache2

Настройка phpMyAdmin

Нам нужно сделать небольшую настройку для phpMyAdmin. Введите команду

sudo gedit /etc/apache2/apache2.conf

Она откроет текстовый файл. Пролистните этот файл до самого конца и в самый низ добавьте строку:

Include /etc/phpmyadmin/apache.conf

Перезапустите веб-сервер, чтобы изменения вступили в силу:

sudo systemctl restart apache2

Теперь phpMyAdmin доступен по ссылке

По умолчанию phpMyAdmin не позволяет входить без пароля. Если вы не установили пароль для СУБД MySQL, то у вас на выбор две опции:

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

Рекомендуется задать пароль для базы данных. Для изменения пароля можно воспользоваться скриптом:

sudo mysql_secure_installation

Если вы хотите разрешить входить в phpMyAdmin без пароля, то откройте файл

sudo gedit /etc/phpmyadmin/config.inc.php

Найдите вторую (их там две) строку

// $cfg['Servers'][$i]['AllowNoPassword'] = TRUE;

и раскомментируйте её (уберите два слеша из начала строки), чтобы получилось:

$cfg['Servers'][$i]['AllowNoPassword'] = TRUE;

Скорее всего, при подключении вас ждёт сюрприз в виде ошибки «#1698 – Access denied for user 'root'@'localhost'». Пошаговые действия для её решения в этой инструкции.

Где в веб-сервере Apache находятся сайты?

По умолчанию корневой папкой для веб-документов является /var/www/html. В /var/www вы можете делать ваши собственные виртуальные хосты.

Папка /var/www/html и все файлы внутри неё принадлежат пользователю рут.

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

sudo nemo /var/www/html

Все другие программы, которые вносят изменения в /var/www/html, также должны быть запущенными с sudo

На локальном сервере для упрощения использования вы можете сделать себя владельцем этой папки:

sudo chown -R $USER:$USER /var/www/html

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

nemo /var/www/html

Индексные файлы Apache

Если пользователь запрашивает у веб-сервера не файл, и директорию, то сервер ищет в ней файлы index.html, index.php, index.htm и т.п.

Если эти файлы есть в этой директории, то показывается их содержимое. Эти файлы называются индексными.

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

Посмотреть, какие файлы для вашего сервера являются индексными и в каком порядке выстроен их приоритет вы можете в файле

sudo gedit /etc/apache2/mods-enabled/dir.conf

Там вы увидите что-то вроде:

DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm

Обычно пользователи хотят переместить индексный файл PHP (index.php) в первую позицию после DirectoryIndex, чтобы получилось примерно так:

DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm

После внесения изменений, сохраните и закройте файл, перезапустите веб-сервер.

Заключение

В этой инструкции было показано, как установить веб-сервер Apache на свой компьютер с Linux Mint. По своей функциональность этот сервер не отличается от возможностей хостингов. Вы можете на нём тестировать свои сайты, использовать при изучении PHP, установить WordPress и т.д. Более того, этот сервер можно сделать доступным для локальной или даже глобальной сети.

Читайте также:  Установить файловый менеджер nemo 3.4 в ubuntu

Источник: https://ZaLinux.ru/?p=1142

Домашний web сервер: Ubuntu Server + LAMP (установка и основные настройки)

В данной статье я опишу вариант настройки домашнего web сервера на базе операционной системы Linux Ubuntu Server.

Набор компонентов web сервера сокращенно называется LAMP — Linux, Apache, Mysql, PHP. Данная система будет использоваться для разработки сайтов, web приложений и плагинов, доработки CMS и т.д.

Сервер будет подключен к локальной сети, удаленный доступ к системе — по SSH, возможность загрузки файлов по FTP, доступ к базе данных MySQL через phpMyadmin.

Язык программирования — PHP, версия веб сервера — Apache2.

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

Приступаем к установке ОС. Операционную систему я установил 32-х битную Ubuntu Server версии 14.04.5 — минимальный образ, для создания системы под свой список задач. Качаем с официального сайта http://ubuntu.ru/get.

Скачиваем iso образ по ссылке и устанавливаем на машину. Я ставил по-старинке, с диска. Старая материнка ни как не хотела загружаться с флешки.

ВНИМАНИЕ! Во время установки, при выборе программного обеспечения список компонентов оставляем пустым, т.к. все версии компонентов будем ставить свои.

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

По окончании установки система запросит пароль для root.

Настройка сети

Сразу после установки, заходим в систему под root. Первым делом нам нужно настроить сеть.

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

dmesg | grep eth

 Как мы видим, наш сетевой интерфейс имеет имя eth0. Настроим его. Для этого при помощи встроенного редактора Nano откроем файл конфигурации сетевых интерфейсов. Я оставил dhcp, т.к. ip адрес сервер будет получать автоматически от роутера.

nano /etc/notwork/interfaces

Мой конфиг сети выглядит так:

Так же вы можете прописать сетевые настройки в ручную:

auto eth0

iface eth0 inet static

address 192.168.0.101

network 192.168.0.0

netmask 255.255.255.0

broadcast 192.168.0.255

gateway 192.168.0.1

Я рекомендую оставить dhcp. Так же необходимо проверить чтобы присутствовала строка auto eth0 (автоматический запуск сетевого интерфейса).

После того как отредактировали файл конфигурации, сохраняем его (Сtrl + O), закрываем (Ctrl + X).

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

ping yandex.ru

Если пинг идет, значит сеть настроена и интернет есть. Можно приступать к установке компонентов сервера, но перед этим обновим систему:

apt-get update

apt-get upgrade

Установка SSH 

Для управления сервером удаленно, ставим SSH:

apt-get install ssh

Запускаем сервис SSH:

service ssh start

Теперь пробуем подключиться с нашему новому серверу по SSH. Для этого переходим на основной компьютер и ставим программу PuTTY. Качаем с сайта putty.org.ru/download.html.

Запускаем программу и пробуем соединиться с сервером: вводим ip адрес, порт по умолчанию 22, кнопку оставляем в значении SSH, жмем Connect.

Должно появиться: login as:

Вводим root и пароль.

Если все получилось, то все остальные настройки сервера мы будем проводить удаленно. Можно отключать от сервера все периферию и оставить только кабель питания и ethernet.

В этом файле все команды SSH.

Установка и настройка FTP 

Для передачи файлов на сервер, устанавливаем FTP сервер:

apt-get install vsftpd

Редактируем файл конфигурации FTP при помощи редактора Nano:

nano /etc/vsftpd.conf

Пример текста файла конфигурации vsftpd.conf

Добавляем в систему пользователя FTP по имени Петр

dduser petr

Переходим в директорию home

cd /home

Создаем группу пользователей 

addgroup myusers

Добавляем Петра в группу пользователей myusers

usermod -G myusers petr

Создаем для пользователя папку (папки)

mkdir /home/petr/userfolder

mkdir /home/petr/www

Поднимаемся на уровень выше

cd ..

Задаем пользователю права на его папки

chown petr:myusers /home/petr/userfolder

chown petr:myusers /home/petr/www

chown 555 /home/petr

Перезапускаем фтп сервер, чтобы сохранить настройки

service vsftpd restart

FTP сервер настроен. Пробуем подключиться по FTP при помощи программ FileZilla FTP Client или Total Commander. Если используете FileZilla, то порт по умолчанию 21, быстрое соединение. Если Total Commander — FTP — Новое FTP соединение — Убрать галку «Анонимное соединение».  Далее ip адрес, имя пользователя, пароль.

Установка  web сервера Apache 2 + PHP + MySQL

Устанавливаем сам веб сервер:

apt-get install apache2

Устанавливаем zip для работы с архивами:

apt-get install zip

Установка PHP. Устанавливаем интерпретатор языка PHP, чтобы скрипты написанные на нем могли исполняться на сервере: 

apt-get install php5 libapache2-mod-php5 php5-cli

Устанавливаем БД MySQL

apt-get install libapache2-mod-auth-mysql php5-mysql mysql-server

Ставим модуль веб сервера

a2enmod rewrite

Устанавливаем phpmyadmin

apt-get install phpmyadmin  

Если phpmyadmin выдает ошибку Not found, то вводим в консоль следующую строку

ln -s /usr/share/phpmyadmin /var/www/phpmyadmin

Установка файлового менеджера MC

apt-get install mc

Запуск файлового менеджера

mc

Редактируем файл конфигурации веб-сервера.

etc/apache2/apache2.conf

Сервер готов к использованию!

Подробнее процесс установки у меня показан на видео:

Источник: https://informatiktv.ru/index.php/servery-na-baze-unix/61-ubuntu-server-lamp-ustanovka-i-osnovnye-nastrojki

Установка и настройка локального web-сервера в Ubuntu 14.04

Тестовая страница

Откроем /etc/hosts

sudo nano/etc/hosts

Здесь в первую строку добавим имя нашего сайта.

127.0.0.1 localhost testsite

Сохраняем и закрываем (Ctrl+О и Ctrl+x соответственно).

Теперь выполняем в терминале

sudo cp /etc/apache2/sites-available/000-default.conf/etc/apache2/sites-available/testsite.conf

Таким образом мы создали кофигурационный файл сайта testsite, скопировав конфигурационный файл дефолтного сайта. Теперь откроем этот файл и настроим его под наш сайт.

sudo nano/etc/apache2/sites-available/testsite.conf

Здесь раскомментируем (т.е. уберем #) строчку

#ServerName www.example.com

И пропишем имя нашего сайта. Должно получиться:

ServerName testsite

Далее исправим DocumentRoot, прописав вместо /var/www/html /home/user/public_html/testsite (не забываем вместо user поставить реальное имя пользователя).

Сохраняем и закрываем. Теперь включаем наш сайт.

sudo a2ensite testsite

В терминале нам любезно подсказывают, что активировать новую конфигурацию мы можем, перезагрузив настроки Апача.

sudoservice apache2 reload

В адресной строке браузера пишем

http://testsite

И видим нашу тестовую страничку. Если не видим — тщательно проверяем правильность своих предыдущих действий.

Ну и в дальнейшем будем работать уже с этим тестовым сайтом, а не с дефолтным.

ЧПУ

В большинстве случаев нам придется работать с ЧПУ-ссылками. Поэтому необходимо подключить модуль Апача mod_rewrite.

sudo a2enmod rewrite

sudo service apache2 restart

Теперь проверим. Создадим в корне нашего сайта (папке testsite) файл .htaccess и запишем в нем следующее

RewriteEngine on

RewriteRule ^test sef.html [L]

Это означает, что запросы на testsite/test будем перенаправлять на страницу sef.html.

Теперь создаем этот самый файл sef.html с содержимым, аналогичным index.html, кроме заголовка и текста:

Тест ЧПУ

Идем на http://testsite/test. Если видим нашу новосозданную страницу, значит порядок.

PHP

Теперь проверим PHP. Для этого в папке /home/user/public_html/testsite создадим текстовый файлик со следующим содержимым:

Сохраняем этот файлик под именем, например, info.php. Если мы теперь перейдем по адресу http://testsite/info.php, то увидим полную информацию об установленном в системе PHP.

Если увидели — PHP работает.

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

php.ini

Ну а теперь поковыряемся в конфигурационном файле PHP, находящемся по адресу /etc/php5/apache2/php.ini. Да не просто поковыряемся, а и кое-что поменяем.

sudo nano/etc/php5/apache2/php.ini

Короткая форма записи

short_open_tag = Off

Это значит, что по умолчанию запрещено использовать короткую форму записи тегов, т.е.<\p>

Перейдем по адресу http://testsite/db-test.php. Если видим текст «OK… Localhost via UNIX socket», то все хорошо.

phpMyAdmin

Поехали дальше. Теперь очередь phpMyAdmin. В терминале вводим

sudo apt-getinstall phpmyadmin

После получения списка пакетов нажимаем Enter на вопрос, хотим ли мы продолжить. В ходе установки нас спрашивают, какой сервер будем настраивать. Поскольку у нас Apache, то и выбираем, естественно, его же. Для этого нажимаем пробел, убедившись, что красный курсор установлен в квадратных скобках напротив строчки apache2. И убеждаемся, что там же, в скобках, появилась звездочка.

Нажимаем Enter. Через некоторое время появится еще одно окно с предложением установить и настроить базу данных. У нас уже выбрано «Да», жмем Enter. Вводим пароль административного пользователя базы данных (тот самый, который вводили при установке MySQL), жмем Enter, задаем пароль для регистрации phpmyadmin в базе, подтверждаем. Дожидаемся конца установки.

Теперь в терминале последовательно вводим

sudo php5enmod mcrypt

sudo service apache2 restart

И идем в браузер.

http://localhost/phpmyadmin

Видим окно входа в phpMyAdmin

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

Порядок.

Библиотеки GD и CURL

Теперь доустановим библиотеки PHP GD и CURL. Здесь все крайне просто. В терминале вводим

sudo apt-getinstall php5-gd php5-curl

Опять-таки, подтверждаем, что мы действительно хотим их установить. И перезагружаем Apache.

sudo service apache2 restart

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

Теперь почтовик. В принципе, можно обойтись SSMTP — это легкая утилита, отправляющая письма через сторонний SMTP-сервер, например Gmail. Но в этом случае о тестировании почты оффлайн придется забыть. Если тестирование оффлайн не актуально, то ставим и настраиваем:

sudo apt-getinstall ssmtp

sudo nano/etc/ssmtp/ssmtp.conf

И здесь меняем значения на следующие (для Gmail-сервера).

root=youraccount@gmail.com mailhub=smtp.gmail.com:587 AuthUser=youraccount@gmail.com AuthPass=password

UseSTARTTLS=YES

Здесь youraccount@gmail.com — ваш существующий адрес на Gmail; password — пароль вашего аккаунта на Gmail. Если не хотите Gmail, то для других сервисов настройки принципиально отличаться не будут.

Далее. В /etc/php5/apache2/php.ini находим строку ;sendmail_path =, раскомментируем ее (т.е. уберем ;) и пропишем путь к ssmtp. Должно получиться

sendmail_path = /usr/sbin/ssmtp -t

Перезагружаем сервер.

sudo service apache2 restart

А теперь проверим. Создадим файл index.php в testsite, откроем его и пропишем туда следующее

Здесь опять же testaccount@gmail.com — ваш существующий адрес, к которому у вас есть доступ (здесь — какой угодно, не обязательно Gmail).

Теперь перейдем по http://testsite. Отобразиться у нас должна пустая страница. Теперь проверяем testaccount@gmail.com — туда должно прийти наше тестовое письмо.

Sendmail

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

На всякий случай. Речь не идет об одновременном использовании SSMTP и Sendmail — устанавливаем либо то, либо другое!

sudo apt-getinstall sendmail

По окончанию установки запускаем

sudo sendmailconfig

На все три вопроса, задаваемых в ходе установки, отвечаем утвердительно, т.е. жмем Enter.

Теперь

sudo nano/etc/hosts

И здесь в строчку с 127.0.0.1 дописываем через пробел

localhost.loc testserver

Здесь testserver — имя нашего сервера. Оно уже прописано строчкой ниже для 127.0.1.1. Сохраняем, закрываем и перезапускаем сервер.

sudo service apache2 restart

Теперь командуем

telnet localhost smtp

Получаем.

Trying 127.0.0.1… Connected to localhost. Escape character is ‘^]’.

220 localhost.loc ESMTP Sendmail 8.14.4/8.14.4/Debian-4.1ubuntu1; Sat, 26 Jul 2014 21:46:56 +0300; (No UCE/UBE) logging access from: localhost(OK)-localhost [127.0.0.1]

Начинаем тестирование. Вводим

helo localhost

Ответ

250 localhost.loc Hello localhost [127.0.0.1], pleased to meet you

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

mail from: no-reply@gmail.com 250 2.1.0 no-reply@gmail.com… Sender ok

rcpt to: user@localhost

Здесь user — ваше имя пользователя в Linux.

Читайте также:  Gnome и kde полностью поддерживают телефон librem 5

250 2.1.5 user@localhost… Recipient ok data

354 Enter mail, end with «.» on a line by itself

Теперь мы вводим текст тестового письма. Закончить его обязательно точкой.

test message

Жмем Enter и получаем ответ.

250 2.0.0 s6QItc6L010145 Message acceptedfor delivery

Прекрасно. А теперь настроим почтовый клиент, чтобы иметь возможность видеть отправленные с сайта и полученные в user@localhost письма. Настраивать будем Thunderbird. Идем в Создать — Другие учетные записи. Выбираем тип учетной записи Unix Mailspool (Movemail), жмем Далее.

Выводимое имя абсолютно без разницы, мы сюда письма только получать будем, а Адрес электронной почты прописываем user@localhost (вновь, user — это ваше имя пользователя в Ubuntu). Жмем Далее, затем еще раз Далее, и еще раз Далее, и, наконец, Готово.

Если все сделали правильно — во входящих видим наше только что отправленное при тестировании письмо.

Можем протестировать через PHP, аналогично тому, как мы делали это с SSMTP, только в index.php исправим адрес получателя на user@localhost.

Теперь при работе с популярными CMS в админке будем прописывать адрес получателя писем с сайта user@localhost.loc. Почему не user@localhost? Потому что такой адрес не пройдет валидацию. User заменяем на ваше имя пользователя в Ubuntu.

SSH

Осталось установить SSH-сервер. Как уже говорилось, это нужно лишь в том случае, если необходимо управлять сервером удаленно.

sudo apt-get install ssh
sudo nano /etc/ssh/sshd_config

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

Port 22

и меняем на любой из диапазона от 1025 до 65536, . Главное — не забыть его потом. В нашем примере пропишем

Port 1111

и будем его использовать в дальнейших примерах.

Дальше находим строку

PermitRootLogin yes

и меняем значение yes на no.

Можно вообще запретить входить по SSH всем, кроме одного пользователя — вас. Для этого добавляем следующую строку (здесь, как всегда, user нужно заменить на ваше имя пользователя).

AllowUsers user

Перезагружаем SSH-сервер

sudo servicessh restart

А теперь пробуем подключиться с удаленного устройства. Предположим, что IP-адрес сервера — 192.168.1.2. Вводим (заменив user на свое имя пользователя на сервере)

ssh -p 1111 user@192.168.1.2

Вводим свой пароль на сервере и наслаждаемся. Чтобы отключиться, вводим exit.

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

ssh/known_hosts на клиенте, подключитесь вновь и ответьте yes на вопрос Are you sure you want to continue connecting?(действительно ли вы хотите подключиться?). Все, можно работать.

Для заливки файлов на сервер удаленно также можно воспользоваться SSH, а не традиционным FTP. Можно это делать и в консоли. Но можно и проще. Показываю на примере файлового менеджера Dolphin в KDE.

В левой панели (Точки входа) жмем Сеть, здесь Добавить сетевую папку. Выбираем Папка SSH, жмем Далее и заполняем поля:

Имя — пишем что угодно, лишь бы понимать, куда мы подключаемся. Ну например, LocalServer.

Пользователь — имя пользователя на сервере.

Сервер — IP-адрес (или имя, если прописано в /etc/hosts) сервера.

Порт — мы меняли на 1111, его здесь и прописываем. Если не меняли — оставляем 22.

Протокол — выбираем fish.

Папка — для удобства пропишем корневую папку нашего web-сервера, т.е. /home/user/public_html. Теперь при подключении будем сразу попадать туда. Если оставить поле пустым — будет открываться корень Ubuntu, т.е. /.

Теперь жмем Сохранить и подключиться. И можем гонять файлы туда-сюда, как на родном компьютере.

В дальнейшем чтобы подключиться жмем Сеть и в открывшемся окне папку с земным шариком поверх с именем LocalServer.

Git

Устанавливаем.

sudo apt-getinstall git

Настраиваем.

git config —global user.name «User Name»
git config —global user.email «username@gmail.com»

Здесь username — ваше имя, а username@gmail.com — ваша существующая почта. В общем-то, это все. Об использовании Git в ближайшем будущем надеюсь написать отдельную статью.

Удаленный доступ к сайтам

Осталось понять, как зайти браузером с удаленного компьютера (в локальной сети) на наш сервер. Возьмем мою ситуацию. Напомню, сервер — на нетбуке, а работаю я на стационарном компьютере. Так вот, на компьютере открываем /etc/hosts и в новой строке прописываем

192.168.1.2 testsite

Здесь 192.168.1.2 — IP-адрес нашего сервера, testsite — имя тестового сайта (их может быть много через пробел). Теперь, набрав в адресной строке http://testsite, мы попадем именно на testsite на нашем сервере.

Владельцы и права

Вводим три команды

sudo adduser user www-data

chown user:www-data -R public_html

chmod -R 775 public_html

Здесь user — ваше имя пользователя в Ubuntu. Мы добавили себя в группу www-data (поскольку от пользователя www-data группы www-data работает Apache и, как следствие, все популярные CMS) и сделали группу www-data группой владельца корневой папки наших сайтов и присвоили для этой папки права чтения и записи для владельца и его группы.

Это нужно для того, чтобы у пользователя user (от имени которого мы заливаем файлы на сервер) и пользователя www-data (от имени которого работет CMS) имели одинаковые права. При добавлении каждого сайта над его папкой нужно будет производить эту процедуру (кроме первой команды; только не ко всей public_html, а лишь к папке нового сайта).

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

Всем Удачи!

Материал статьи взят с сайта senokosov.info

Источник: https://users-pc.ru/ustanovka-i-nastroyka-lokalnogo-web-servera-v-ubuntu-14-04/

Как научится настраивать web-сервер под Linux?

Конфигурирование немного, но зависит от дистрибутива. К примеру, Ubuntu:

apt-get install apache2 php5 mysql-client mysql-server phpmyadmin libapache2-mod-php5 php5-mysql

Эта строчка установит Apache2, PHP5, клиент и сервер MySQL, модуль php5 для Apache2 и модуль MySQL для php5. Разобраться в строчке не сложно. Чаще всего ещё нужны модули GD или Imagick (для изображений), Mcrypt и Mhash (для шифрования и хеширования), а также PhpMyAdmin:

apt-get install php5-gd php5-imagick php5-mcrypt php5-mhash phpmyadmin

Можно объединить вместе с предыдущими командами. Если запускаете не из под root — добавляйте sudo в начало строки (для Ubuntu).

Для настройки самих сайтов — смотрите пример /etc/apache2/sites-available/default, копируете его с новым именем, и запускаете в консоли a2ensite название файла, потом service apache2 reload — загружаете новую конфигурацию.

В файл /etc/hosts добавляете строчку 127.0.0.1 название_домена и готово. Для удобства можете установить файловый менеджер mc (название пакета и команда для запуска тоже mc, как устанавливать написано выше). На других дистрибутивах может меняться менеджер пакетов (тот, что apt-get) но в общем то же самое. Для более сложных ситуаций читайте документацию/примеры конфигурационного файла apache. Для установки nginx в целом то же самое, просто немного иные пакеты, и другой конфигурационный файл.

Краткий мануал набросал в самом простом виде, ещё их много в сети. Попробуйте установить на локальную виртуальную машину Ubuntu Server (или даже Desktop для начала, чтобы было проще ориентироваться) и попробовать.

Нравится 1 5 комментариевЭксперименты и обучение лучше всего проводить в виртуальной машине (я делал именно так).

Поставьте например VirtualBox, установите туда CentOS (для этого надо скачать iso установочного диска, вставить его в виртуальный привод и загрузить виртуалку с него, установщик интерактивный и трудностей не вызывает, после установки обычно сразу всё работает.

Возможно протребуется проброс портов, это делается через меню виртуалки по правому клику, например для работы через программу-терминал нужно пробросить порт 22, а для открытия сайта из виртуали в браузере — порт 80. Пробрасывать можно и на другой порт хоста, например 8080, если вдруг у вас например свой девелоперский апач там уже висит).

Во время установки можно сразу выбрать пакеты софта, но чтобы научиться ставить софт и управлять сервером, лучше не выбирать ничего. Установить всё веб-добро через yum не представляет никаких трудностей, начать можно с команды «yum help».

Разве что, возможно, потребуется установка некоторых дополнительных репозиториев (epel, remi, centalt, об этом много написано и легко гуглится). В большинстве случаев хватает поиска по репозиториям (yum list php*) и установки того, что нужно через yum install, а так же запуска через «service название start».

Автозапуском установленных служб можно управлять через chkconfig, например «chkconfig mysqld off». (конечно, базовые консольные команды, по управлению файлами и правами, такие как cat, cp, mv, rm, chmod, chown, ls, mkdir, find и т.д.

— нужно знать, если этих знаний тоже нет лучше начать именно с них, ещё могут потребоваться знания в управлении фаерволлом iptables, но для начала его можно выключить,«service iptables stop»). Конфиги установленных сервисов будут лежать в большинстве случаев в директории /etc/названиесофта. Конфигурирование каждого становленного пакета может оказаться уже не столь тривиальной задачей, у каждого будут свои нюансы, и потребуется поискать соответствующую информацию от комментариев в конфиге до тематических форумов. Модули для php ставятся через «yum php-pecl-название nistall» или через pecl (см «pecl help»). Соответственно, для pear — «pear help».

Это базовая информация, которой мне в своё время очень не хватало для облегчения «старта». Надеюсь, она вам пригодится.

Вариантов несколько. Для начала желательно определиться с дистрибутивом. Это связано с тем, что одно и то же ПО под разными дистрибутивами может использоваться разное ПО. Потом разбираться как устанавливать ПО под выбранный дистрибутив. Веб серверов (популярных), которые можно для хостинга веб сайтов несколько.

Для связки «(html + php + js)» на серверной стороне устанавливать js не нужно, но программисту это объяснять не нужно 😉 Пробуйте просто ставить любое ПО. Дальше я-бы порекомендовал просто поставить связку Apache + php. Или nginx + php. И пробовать запускать. Как результат в процессах должен появиться соответствующий процесс.

И сервер должен начать слушать «сетевой порт». После удачной установки простой связки — уже можно будет переходить и на более сложные связки, просто дополнительно устанавливая недостающее ПО. И/или добавляя недостающие модули к существующему.

ЗЫЖ Так же рекомендую не забывать про возможность учиться на виртуальных машинах.

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

Источник: https://toster.ru/q/22063

Web сервер на Ubuntu

опубликовано 11 февраля 2011 г.

Ubuntu

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

1. Краткий обзор

В этой статье я преследую несколько вещей:

  • Мы используем для установки  Ubuntu Server. Почему? Потому что Я обычно используют Ubuntu из-за ее простоты в использовании и простом администрировании. Ubuntu имеет довольно большое и очень активное сообщество благодаря которому можно получить поддержку..
  • Мы установим OpenSSH сервер. Это позволит Вам управлять вашим сервером с удаленного компьютера.
  • LAMP (Linux, Apache, MySQL, и PHP) так же будет установлен. Это основная составляющая работы ващего сайта. Apache является самым распространенным веб-сервером на Unix систем, это то.
  • Мы установим брандмауэр для защиты сервера от несанкционированного доступа.
Читайте также:  Tailsos 2.2.1 самый защищенный дистрибутив для сети

Для работы с этим руководством, вам понадобится:

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

Вы можете спросить, зачем нам собственный выделенный сервер? Есть несколько причин: вы сможете тестировать свои проекты  и самое главное вы узнаете много нового о Linux / Unix системах.

https://www.youtube.com/watch?v=6WnNoPq8UOY

Ну а теперь приступим непосредственно к работе с нашим сервером.

2. Скачать Ubuntu Server

Прежде всего, нам понадобиться дистрибутив с операционной системой Ubuntu. Скачать его можно с сайта http://www.ubuntu.com/ ,
Вам будет предложены два варианта ОС: «Desktop Edition» и «Server Edition».

 Поскольку мы ведем речь о сервере, то выбираем «Server Edition» далее выберите версию актуальную на сегодняшний день выберите «Ubuntu 10.10 LTS».

 Далее, выберите место нахождения из выпадающего списка и жмем «Начать загрузку».

Теперь нужно записать ISO (файл, который вы скачали) на пустой CD. Если вы не знаете, как это сделать, есть
отличное руководство на  HTTPS://help.ubuntu.com /community/BurningIsoHowto

3. Установка Ubuntu Server

Теперь, когда вы скачали и записали ISO образ на диск, приступим к установке Ubuntu на ваш сервер. Загрузитесь с компакт-диска. В большинстве современных компьютеров, это произойдет по умолчанию, если диск есть в приводе.. Если этого не произойдет, то вам необходимо включить загрузку с диска в BIOS.

 Для этого сразу после включения нажмите: для  ноутбука, это F12, для большинства стационарных компьютеров это Del. Все зависит от вашего компьютера.  Как сделать установку с компакт-диска можете посмотреть в книжке для вашей материнской платы. – все зависит от производителя BIOS.

 Хорошо сделали? Теперь, когда вы загрузились в Ubuntu, вы должны увидеть следующий экран:

Выберите язык и нажмите ввод. Теперь вы увидите такой экран:

Выберите «Установить Ubuntu Server», и нажмите Enter!

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

После того как вы закончили с раскладкой клавиатуры, вы увидите кучу экранов загрузки, которые говорят нам : «Обнаружение CD-ROM диски», и так далее. Они должны проходить быстро и без проблем.

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

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

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

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

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

Программа спросит вас о том, действительно ли вы хотите записать изменения на диск. Выберите «Да» и нажмите ввод. После чего программа установки отформатирует диск и установить разделов. Теперь система начинает установку.

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

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

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

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

Следом поступит предложение ввести пароль. Очень важно, что бы вы выбирали надежный пароль, иначе вы стате под угрозу безопасность вашего сервера. Я рекомендую использовать цифры, строчные  заглавные буквы.. НЕ используйте пароль короче 7 символов.

Повторно введите пароль, чтобы убедиться, что вы ввели его правильно.

Система попытается настроить «Менеджер пакетов”. Выберите пункт «Продолжить», оставив поле пустым

На следующем шаге система производит сканирование серверов в поиске обновлений и настройки конфигурации

После завершения поиска обновлений и настройки вам будет предложено несколько вариантов для установки серверного программного обеспечения.
Обязательно выберите OpenSSH сервер и нажмите Space, а не ENTER. Если вы нажмите ввод, установка будет продолжаться без установки сервера OpenSSH.

Теперь программа установки, установит выбранное программное обеспечение и другие компоненты системы

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

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

4. Обновление программного обеспечения сервера

Прежде чем идти дальше, мы должны убедиться, что ваш сервер обновлен. Чтобы сделать это, вам необходимо: Войти. Во-первых, введите имя пользователя (Тот, который вы выбрали ранее), нажмите клавишу ВВОД, а затем введите пароль.

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

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

Вводим команды:

Система спросит пароль, введите его. Для продолжения выполнения нашей команды выбирите “Y” и нажмите Enter. На экране вы увидите примерно следующее:

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

Для этого, введите:

5. Установка Apache, MySQL, PHP

Вот мы и подошли к самому интересному. Для того чтобы наш сайт был доступен из сети Интернет, нам необходимо установить веб-сервер Apache, сервер баз данный MySQL и поддержку PHP

Приступим!

Установка программ на Ubuntu сильно отличается от установки программы на Windows или OS X, в том, что Ubuntu будет скачивать и устанавливать программы для вас с помощью простых команды. Это потому, что Ubuntu имеет Package Manager, который управляет почти всеми программами в системе. Все, что мы должны сделать, это сказать менеджер пакетов.

Достаточно просто сказать системе что мы хотим установить Apache, MySQL, PHP, введя для этого:

И нажмите Enter.

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

Во время процесса установки, MySQL Вас попросят ввести пароль. Установите его

После этого вы имеете полноценный рабочий веб-сервер. Чтобы проверить это, во-первых найти IP сервера, набрав:

Он как правило идет первым в строке. В моем случае, это 192.168.177.129. Теперь, когда вы знаете IP, откройте веб-браузер и укажите в нем IP вашего сервера. Если вы видите «Она работает!»  То все идет очень хорошо. Веб-сервер работает отлично

Однако мы еще не закончили.

Теперь откройте файл конфигурации:

Выделите вниз (стрелка вниз), до “ServerTokens Full” и изменить его следующим образом: «ServerTokens Prod»

Теперь, прокрутите вниз немного дальше и изменените «ServerSignature Оn» до «ServerSignature Off»

Теперь сохраните изменения комбинацией клавиш Control-O и выйдите из редактора Control-X.  Теперь, н для PHP. Сначала создайте резервную копию оригинального файла конфигурации PHP:

Открыть файл конфигурации:

Изменение «expose_php = ON» на «expose_php = Off»

Снова нажмите Control-O и Control-X. Теперь обновите файлы конфигурации перезагрузкой Apache:

Настройки Apache, MySQL, PHP закончены

6. Утановка брандмауэра

Теперь мы более тщательно обезопасим наш сервер путем установки брандмауэра Shorewall,

Для его установки введите:

По умолчанию, Shorewall устанавливается без правил, что означает полный доступ. Нам это не нужном.
Вместо этого, мы собираемся блокировать все соединения из вне, кроме порта 80 (HTTP) и порт 22 (SSH).

Во-первых, копруем конфигурацию  в каталог Shorewall:

Теперь откройте » rules » файл:

Добавьте эти строки над “#LAST LINE”:

  HTTP/ACCEPT net $FW
  SSH/ACCEPT net $FW

Затем нажмите Control-O и Control-X. Ваш брандмауэр теперь настроен на прием только HTTP и SSH трафик. Последнее, что нам нужно сделать, заставить Shorewall стартовать при загрузке нашего веб-сервера.

Для этого открываем основной конфигурационный файл Shorewall:

  sudo nano /etc/shorewall/shorewall.conf

Прокрутите вниз до «STARTUP_ENABLED = No» и измените его на «STARTUP_ENABLED = Yes»

Нажмите Control-O и Control-X. Теперь откройте  файл конфигурации Shorewall по умолчанию:

  sudo nano /etc/default/shorewall

И изменение » startup=0 » до » startup=1 «. Нажмите Control-O и Control-X.

И запустите свой брандмауэр:

 sudo /etc/init.d/shorewall start

Поздравляем! Ваш брандмауэр установлен и стоит на защите вашего сервера.

7. Добавить свой сайт на веб-сервер

Теперь когда у нас все настроено вам наверное не терпиться разместить на своей веб-сервере сайт.

По умолчанию, все файлы вашего сайта должны быть в папке «/VAR /WWW /». Однако, мы не можем пок ничего записать в эту папку.

Давайте все изменим таким образом:

Что же мы сделали? Мы создали группу www-data, и сделали папку для сайта, чтобы члены этой группы могли записывать туда данные.

Теперь, вы будете входить в ваш сервер, используя SFTP (не путать с FTPS). Вот некоторые клиенты, которые поддерживают SFTP:
WinSCP (Windows, бесплатно), FileZilla (Windows, Linux, OS X, бесплатно),
Подключитесь к серверу, используя имя пользователя и пароль. Далее просто перейдите в  /VAR /WWW

Вы можете добавлять файлы в эту папку (/VAR/WWW), и они будут отображаться на вашем сервере при просмотре его через браузер.

Почему мы используем SFTP вместо FTP. Главным образом, потому что SFTP уже встроено в OpenSSH (который вы установили ранее). И данный протокол более безопсен, чем FTP, а также затрудняет получить злоумышленникам доступ к вашим полномочиям на сервере.

8. Управление сервером удаленно

Для удаленного доступа к своему серверу вам понадобиться SSH клиент. Для Windows рекомендую программу Putty. Для остальных операционных систем возможно использование обычного терминала, просто откройте терминал и введите «SSH  you@yourip». Для Putty, выберите SSH, и поставьте ваш IP, имя пользователя и пароль, при запуске программы. Зайдя удаленно вы увидите что то на подобии этого:

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

9. Вот и все!

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

Источник: http://adminpab.ru/administration/ubuntudebian/web-server-na-ubuntu.html

Ссылка на основную публикацию