Проектирование локальной сети (работа 2)
Введение
1. Теоретическая часть
1.1 Общие сведения о локальных сетях
1.2 Общие сведения об ОС GNU Debian Linux
2. Специальная часть
2.1 Установка и настройка Debian GNU/Linux
2.2 Установка deb-пакетов
2.3 Файловый сервер Samba
2.4 Установка web-сервера, его настройка и настройка виртуальных хостов
2.5 Почта
2.6 Установка Drupal
2.7 Установка и работа с Drush
Заключение
Список используемой литературы
Приложения
Введение
В данном проекте будет рассмотрен проект локальной сети с выделенным под сервер компьютером, работающим под управлением ОС GNU Debian.
Каким образом установить Linux? Как развернуть почтовый сервер? Что нужно для работы связки Apache+Mysql+php? Эти вопросы и некоторые другие будут рассмотрены в этом проекте.
1. Теоретическая часть
1.1 Общие сведения о локальных сетях
Состав компьютерного оборудования, используемого в офисе, традиционен и определяется типичными задачами, стоящими перед сотрудниками. Современный бизнес требует автоматизации бухгалтерской деятельности и складского учета, выписки счетов и получения (отправления) сообщений в электронном виде поставщикам и заказчикам. Для эффективной работы сотрудников, рационального использования компьютерного оборудования и создается локальная вычислительная сеть (ЛВС).
Состав локальной сети
В состав локальной сети (ЛВС) входит следующее оборудование:
Активное оборудование – коммутаторы, маршрутизаторы, медиаконвекторы;
Пассивное оборудование – кабели, монтажные шкафы, кабельные каналы, коммутационные панели, информационные розетки;
Компьютерное и периферийное оборудование – серверы, рабочие станции, принтеры, сканеры.
В зависимости от требований, предъявляемых к проектируемой сети, состав оборудования, используемый при монтаже может варьироваться.
Основные характеристики локальной сети
В настоящее время в различных странах мира созданы и эксплуатируются различные типы ЛВС с различными размерами, топологией, алгоритмами работы, архитектурной и структурной организацией. Независимо от типа сетей, к ним предъявляются общие требования:
Скорость - важнейшая характеристика локальной сети;
Адаптируемость - свойство локальной сети расширяться и устанавливать рабочие станции там, где это требуется;
Надежность - свойство локальной сети сохранять полную или частичную работоспособность вне зависимости от выхода из строя некоторых узлов или конечного оборудования.
Обеспечение данных требований - задача оптимизации локальной сети, решаемая при ее проектировании.
Виды локальных сетей
Все современные локальные сети делятся на два вида:
Одноранговые локальные сети - сети, где все компьютеры равноправны: каждый из компьютеров может быть и сервером, и клиентом. Пользователь каждого из компьютеров сам решает, какие ресурсы будут предоставлены в общее пользование и кому;
Локальные сети с централизованным управлением. В сетях с централизованным управлением политика безопасности общая для всех пользователей сети. Сетевая структура, состоящая из серверов и пользовательских компьютеров, совместно использующих общую политику безопасности, называется доменом. В больших сетях может быть несколько доменов.
1.2 Общие сведения об ОС Debian Linux
Linux - это современная POSIX-совместимая и Unix-подобная операционная система для персональных компьютеров и рабочих станций.
Это многопользовательская сетевая операционная система с сетевой оконной графической системой X Window System. ОС Linux поддерживает стандарты открытых систем и протоколы сети Internet и совместима с системами Unix, DOS, MS Windows. Все компоненты системы, включая исходные тексты, распространяются с лицензией на свободное копирование и установку для неограниченного числа пользователей.
ОС Linux широко распространена на платформах Intel PC 386/486/Pentium/Pentium Pro и завоевывает позиции на ряде других платформ (DEC AXP, Power Macintosh и др.).
Разработка ОС Linux выполнена Линусом Торвалдсом из университета Хельсинки и не поддающейся подсчету обширной командой из тысяч пользователей сети Internet, сотрудников исследовательских центpов, фондов, унивеpситетов и т.д.
Возможности, которые предоставляет ОС Linux.
ОС Linux дает возможность бесплатно и легально иметь современную ОС для использования как на работе, так и дома;
обладает высоким быстродействием;
работает надежно, устойчиво, совершенно без зависаний;
не подвержена вирусам;
позволяет использовать полностью возможности современных ПК, снимая ограничения, присущие DOS и MS Windows по использованию памяти машины и ресурсов процессора(ов);
эффективно управляет многозадачностью и приоритетами, фоновые задачи (длительный расчет, передача электронной почты по модему, форматирование дискеты и т.д. и т.п.) не мешают интерактивной работе;
позволяет легко интегрировать компьютер в локальные и глобальные сети, в т.ч. в Internet; работает с сетями на базе Novell и MS Windows;
позволяет выполнять представленные в формате загрузки прикладные программы других ОС - различных версий Unix, DOS и MS Windows;
обеспечивает использование огромного числа разнообразных программных пакетов, накопленных в мире Unix и свободно распространяемых вместе с исходными текстами;
предоставляет богатый набор инструментальных средств для разработки прикладных программ любой степени сложности, включая системы класса клиент-сервер, объектно-ориентированные, с многооконным текстовым и/или графическим интерфейсом, пригодных для работы как в Linux, так и в других ОС;
дает пользователю и особенно разработчику замечательную учебную базу в виде богатой документации и исходных текстов всех компонент, включая ядро самой ОС;
дает всем желающим попробовать свои силы в разработке, организовать общение и совместную работу через Internet с любыми из разработчиков ОС Linux и сделать свой вклад, став соавтором системы.
Именно под управлением этой операционной системы будет работать сервер, который мы будем рассматривать в нашем проекте.
Теперь немного о дистрибутиве GNU Debian.
Debian — операционная система, состоящая как из свободного ПО с открытым исходным кодом, так и из закрытых компонентов. В первичной форме, Debian GNU/Linux — один из самых популярных дистрибутивов Linux, оказывающий значительное влияние на развитие этого типа ОС в целом. Также существуют проекты на основе других ядер: Debian GNU/Hurd, Debian GNU/kNetBSD и Debian GNU/kFreeBSD. Debian может использоваться как операционная система для серверов, так и для рабочих станций.
Debian имеет наибольшее среди всех дистрибутивов хранилище пакетов — готовых к использованию программ, — и если даже не по их числу, то по числу поддерживаемых архитектур: начиная с ARM, используемой во встраиваемых устройствах, наиболее популярных x86 и PowerPC, новых 64-разрядных AMD, и заканчивая IBM S/390, используемой в мейнфреймах. Для работы с хранилищем разработаны разные средства, самое популярное из которых — Advanced Packaging Tool (APT).
Debian стал основой целого ряда дистрибутивов (более 100, см. список дистрибутивов, основанных на Debian). Самые известные из них — Adamantix, Bioknoppix, Dreamlinux, Clusterix, Gnoppix, Knoppix, Ubuntu, Libranet, Linspire, MEPIS, Xandros Desktop OS и Maemo.
2. Специальная часть
2.1 Установка и настройка Debian GNU/Linux
Включаем компьютер, вставляем диск в DVD-привод и начинаем установку.
При появлении первого меню, выбираем Graphical install. Выбираем язык, страну, раскладку
Далее выбираем сетевую карту (если она не одна), настраиваем сеть (обычно DHCP настраивается автоматически). В моём случае мне пришлось выбрать PCI-карту вводим имя компьютера, имя домена (они могут совпадать).
Выбираем подходящий нам часовой пояс. Мы подошли к очень важному моменту, к разметке диска.
Как минимум, для GNU/Linux требуется один раздел. Вы можете иметь единственный раздел, содержащий всю операционную систему, приложения и ваши личные файлы. Большинство людей считают, что также необходим раздел подкачки, хотя это не совсем верно. "Раздел подкачки (swap)" — это рабочее пространство для операционной системы, которое позволяет использовать дисковое пространство в качестве "виртуальной памяти". Linux работает с виртуальной памятью более эффективно, если она расположена в отдельном разделе. Linux может использовать для подкачки обычный файл, но это не рекомендуется.
Однако большинство людей выделяют под GNU/Linux больше одного раздела. Есть две причины, по которым возможно вы захотите разделить файловую систему на несколько маленьких разделов. Первая — это безопасность. Если что-то повредится в файловой системе, пострадает только один раздел. То есть, вам нужно будет восстановить (из резервной копии, которую вы заботливо храните) только часть системы. Как минимум, вам нужно создать так называемый "корневой раздел". Он содержит наиболее важные компоненты системы. Если любой другой раздел будет повреждён, вы всё равно сможете загрузиться в GNU/Linux, чтобы починить систему. Это может спасти вас от неприятной полной переустановки системы. Вторая причина обычно более важна для бизнеса, но на самом деле это зависит от того, в каком качестве используется машина. Например, почтовый сервер, получая спам, может легко переполнить раздел письмами. Если вы сделаете для /var/mail отдельный раздел на почтовом сервере, большинство систем будут продолжать работать, даже если вас заспамят.
Единственным настоящим препятствием по использованию нескольких разделов является то, что часто трудно предсказать размер, который для них нужно выбрать. Если вы сделаете раздел слишком маленьким, то вам придётся или переустанавливать всю систему или постоянно перемещать файлы из-за нехватки места на разделе. С другой стороны, если сделать раздел слишком большим, то это трата места впустую, а оно могло пригодиться где-нибудь ещё. В наши дни дисковое пространство дёшево, но зачем выбрасывать деньги на ветер?
Debian GNU/Linux придерживается стандарта Filesystem Hierarchy Standard для каталогов и имён файлов. Этот стандарт позволяет пользователям и программному обеспечению быть уверенным в расположении файлов и каталогов. Уровень корневого каталога представляется просто косой чертой /. На корневом уровне, все системы Debian содержат следующие каталоги:
Каталог содержит
Bin Необходимые исполняемые файлы
Boot Статичные файлы системного загрузчика
dev файлы устройств
etc Настройки системы данной машины
home Домашние каталоги пользователей
lib Необходимые библиотеки общего пользования и модули ядра
media Содержит точки монтирования для съёмных носителей
mnt Точка монтирования для временно монтируемой файловой системы
proc Виртуальный каталог для системной информации (для ядер 2.4 и 2.6)
root Домашний каталог суперпользователя
sbin Необходимые системные исполняемые файлы
sys Виртуальный каталог для системной информации (для ядер 2.6)
tmp Временные файлы
usr Вторичная иерархия
var Изменяемые данные
srv Данные сервисов, предоставляемых системой
opt Дополнительное программное обеспечение
Далее следует список важных предположений относительно каталогов и разделов. Заметьте, что дисковое пространство может использоваться совершенно по-разному, в зависимости от настроек системы и специфики решаемых задач. Приводимые здесь рекомендации являются лишь отправной точкой в решении задачи разметки.
На корневом разделе / всегда физически должны находиться каталоги /etc, /bin, /sbin, /lib и /dev, иначе будет невозможна загрузка системы. Обычно, для корневого раздела требуется 150–250 МБ. В /usr хранятся: все пользовательские программы (/usr/bin) , библиотеки (/usr/lib), документация (/usr/share/doc) и так далее. Этой части файловой системы требуется много места. Вы должны выделить как минимум 500 МБ дискового пространства. Объём этого раздела зависит от числа и типа пакетов, планируемых к установке. Для рабочих станций общего назначения или серверов цифра может вырасти до 4–6 ГБ. Каталог /var содержит: все изменяющиеся данные типа новостных статей, сообщений электронной почты, веб сайтов, баз данных, кэша системы управления пакетами и т.д.
Размер каталога целиком зависит от степени использования компьютера,но для большинства людей он определяется работой с системой управления пакетами. Если вы собираетесь установить всё, что предлагает Debian, при чём сразу, то 2 или 3 гигабайта для /var должно хватить. Если вы собираетесь производить установку по частям (то есть, установить сервисы и утилиты, потом программы для работы с текстом, потом X, ...), то можно уложиться в 300–500 МБ. Если пространство жёсткого диска дорого и вы не планируете делать глобальных обновлений системы, то вам будет достаточно 30 или 40 МБ.
Каталог /tmp содержит: временные данные, создаваемые запущенными программами. Обычно достаточно 40–100 МБ. Некоторые приложения — управление резервным копированием, утилиты работы с CD/DVD и мультимедийными данными — могут использовать /tmp для временного хранения файлов. Если вы планируете использовать данные приложения, то должны выделить пространство под /tmp согласно вашим потребностям.
Каталог /home содержит: отдельный подкаталог для каждого пользователя, где хранятся личные данные. Его размер зависит от количества пользователей в системе и какие файлы они будут хранить в своих каталогах. В зависимости от планируемого использования вы должны зарезервировать около 100 МБ для каждого пользователя, но можете изменить это значение согласно своим требованиям. Выделите больше места, если планируете хранить много муль-тимедийных файлов (картинок, MP3, фильмов) в своём домашнем каталоге.
Рекомендуемые схемы разметки:
/
/home
/var
(файловая система ext3)
(файловая система ext3)
(файловая система ext3)
Создавать ли раздел для подкачки, решать вам. Выше указана необходимая для решения информация. Размер swap рекомендуется выделять в два раза больше оперативной памяти, если объем памяти менее 2 гигабайт и равным количеству оперативной памяти + 1Гб, если объем оперативной памяти больше 2Гб.
Установка базовой системы.
Следующий экран — настройка учётных записей. Здесь не составит труда заполнить поля: пароль суперпользователя, полное имя пользователя, имя для входа и пароль пользователя.
Собственно, здесь нет ничего сложного. Не забудьте введённые пароли!
Настройка менеджера пакетов:
Если вы не скачивали дополнительные диски, можете смело ставить "Нет", если вы скачали все диски стабильной версии, отметьте "Да"
На вопрос об использовании зеркала сети желательно ответить "Да", так как большинствопакетов ставятся из Сети. Далее выбираем Российская федерация, ftp.ru.debian.org
Настройте прокси, если требуется. Если не нужно, пропустите.
Выбор программного обеспечения оставляем как есть (галки на "Окружение рабочего стола" и "Стандартная система"). Web-сервер, MySQL и остальное мы поставим сами.
Теперь ожидаем, когда скачаются файлы, их немногим более 800.
Выбираем удобный для себя вариант переключения раскладок (я привык к alt+shift).
Устанавливаем системный загрузчик GRUB в главную загрузочную запись. Отметьте "Да", если Debian единственная операционная система на вашей машине.
Опять выбираем вариант переключения раскладок.
После окончания установки привод сам "отдаст" диск, вам останется только закрыть лоток и система перезагрузится после нажатия кнопки "Продолжить".
Система поставилась, приступим к важным настройкам.
Команда sudo предоставляет возможность пользователям выполнять команды от имени root, либо других пользователей. Правила, используемые sudo для принятия решения о предоставлении доступа, находятся в файле /etc/sudoers; язык их написания и примеры использования подробно изложены в sudoers
user@host:~$ su -
Password:
введите здесь пароль для пользователя root
host:~#
Теперь установим sudo:
su -
aptitude install sudo
После этого выполним от root’а команду visudo (она запустит текстовый редактор с конфигурационным файлом, содержащим пользователей sudo. Найдите строку:
root ALL=(ALL) ALL,
после неё добавьте ваше_имя ALL=(ALL) ALL.
Сохраните файл и закройте редактор (ctrl+o, жмём Enter, ctrl+x).
Внимание: при сохранении будет предложено сохранить файл как sudoers.tmp, удалите расширение .tmp, нажмите кнопку Enter и на вопрос о перезаписи нажмите ‘Y’ (кнопка сохранить — комбинация клавиш CTRL+O, выход — CTRL+X). После этого мы сможем выполнять команды от sudo, к примеру, нибираем sudo -i, вводим пароль и работаем как суперпользователь (после этого sudo перед командой более вводить не требуется).
Не закрываем терминал. Давайте включим Num Lock при загрузке системы, для этого наберём в терминале: aptitude install numlocx и нажмём "Enter". Теперь после следующей загрузки системы Num Lock будет активирован.
Перезагрузим компьютер.
Выше мы не случайно начали с такой простой команды, с помощью aptitude можно устанавливать, обновлять и удалять пакеты. Аналогом aptitude является apt-get. Вы можете ставить программы, если они есть в репозиториях (истониках приложений). Как ставить программы из архивов, изучим немного позднее. Я упомянул о репозиториях (источниках приложений), давайте отредактируем старые и добавим новые. Откроем файл sources.list, в котором записаны все репозитории. По умолчанию в нём только пакеты из стабильной ветки, но мы добавим и другие, к примеру, backports. В Debian стоит старая версия Iceweal (это, грубо говоря, Mozilla Firefox для Debian), при помощи добавленных репозиториев мы обновим её до последней версии. Для этого делаем следующее в терминале:
cd /etc/apt
nano sources.list
с этим редактором (nano) мы уже работали, когда дописывали пользователей sudo, команды на "сохранить" и "закрыть" такие же: сохранить — ctrl+o, жмём Enter, выход — ctrl+x ) открываем sources.list, в котором перечислены репозитории: nano /etc/apt/sources.list.
Добавим туда строки:
deb-src http://www.backports.org/debian lenny-backports main contrib non-free
deb http://backports.debian.org/debian-backports lenny-backports main contrib non-free
И давайте выключим DVD (CD) диск, который тоже является источником приложений. Для этого мы просто его закомментируем:
# deb cdrom:[Debian GNU/Linux 5.0.6 _Lenny_ - Official i386 DVD Binary-1 20100904-19:12]/ lenny
contrib main
Сохраняем, выходим ctrl+o, жмём Enter, ctrl+x).
Теперь в терминале набираем
apt-get update
17
Теперь установим Iceweasel из backports. Делается это такой командой:
aptitude -t lenny-backports install iceweasel
Вы должны заметить, что перед подтверждением на установку стоит уведомление, что рекомендована новая версия libglib2.0-data. Жмём "Y", устанавливается новая версия Iceweasel.
После установки Iceweasel, ставим и рекомендованную библиотеку:
aptitude install libglib2.0-data. Давайте закроем окно терминала. Можете поставить необходимые вам расширения для Iceweasel, их можно найти на http://addons.mozilla.org
2.2 Установка deb-пакетов
Давайте теперь попробуем установить что-нибудь из deb-пакета. Начинающие пользователи Debian GNU/Linux иногда не могут понять, как установить deb-пакет. Сразу сделаем так, чтобы скачанные пакеты устанавливались, а не пытались открыться в программах для просмотра архивов. Для этого надо выбрать приложение.
К примеру, скачаем браузер Chrome для Linux
(http://www.google.com/chrome?platform=linux&hl=ru) или Opera (http://opera.com), или Skype (http://www.skype.com.cn/intl/ru/get-skype/on your-computer/linux/post-download/), представляющие собойdeb-пакеты и попытаемся какой-нибудь из них открыть. Нам покажется сообщение, что данный тип архивов не поддерживается.
Что ж, сделаем так, чтобы запускался установщик deb-пакетов. Для этого щёлкнем правой кнопкой мыши на пакет, выберем "Свойства" / "Открывать в программе" и нажмём кнопку "Добавить". Выберем GDebi Package Installer и GDeb для установки. После того, как пакеты поставятся, перейдём в "Открывать в программе" и выберем GDebi Package Installer. Теперь наши deb-пакеты будут ставиться сразу, а не пытаться просматриваться в программах для архивов.
2.3 Файловый сервер Samba
(Необходим, если вы собираетесь передавать файлы между Linux и Windows машинами).
Открываем терминал:
sudo -i
ваш пароль
aptitude install samba
Теперь надо разобраться с пользователями, Samba использует пользователей, которые уже есть в системе, возьмём для примера имя stan (вам надо ввести ваше имя пользователя), это имя уже есть в системе, надо внести его в базу данных SMB и назначить пароль для доступа к расшаренным ресурсам, сделаем это командой smbpasswd -a stan
Вам будет предложено ввести пароль, после чего stan будет добавлен в базу, теперь необходимо включить пользователя stan:
smbpasswd -e stan
И перезагрузим Samba:
/etc/init.d/samba restart
Давайте рассмотрим удаление старых версий программ и установку новых на примере мессенджера Pidgin.
Открываем терминал:
sudo -i
ваш пароль
Для начала нам нужно удалить установленную версию. Переходим в Установка и удаления приложений/Интернет, снимаем галочку с "Клиент обмена мгновенными сообщениями Pidgin", кнопка "Применить изменения".
aptitude install intltool
aptitude -t lenny-backports install pidgin
Полезные команды.
sudo — действия от суперпользователя
sudo -i – запуск интерпретатора под суперюзером
nano /путь/к/файлу — открыть файл
gedit /путь/к/файлу — открыть файл
wget -p ссылка на файл
aptitude install 'package' — установка пакета/программы
apt-get install 'package' — установка пакета/программы
aptitude -t lenny-backports install 'package' — установка пакета/программы из репозитория
cd — переход в директорию
mkdir — создание директрии
rm — удаление директории
cp — копирование
ln — сивольная ссылка (Simlink)
tar — работа с архивами
cp /путь к файлу /путь к файлу.backup — создание бэкапов файлов
ln -s /путь/к/существующему/файлу /путь/к/не_существующему/файлу — символьная ссылка
2.4 Установка web-сервера, его настройка и настройка виртуальных хостов.
Сразу решим, что PHP у нас будет работать как модуль сервера Apache, а не как CGI-программа.
Вариант хранения сайтов у нас будет таким: /var/www/sitename. Возможен вариант /home/user/public_html, но он нас не подходит для локального сервера. Управлять сайтами от одного пользователя проще.
Перед установкой рекомедуется обновить систему: sudo apt-get update
Ставим всё одной командой:
aptitude install fetchmail flex libarchive-zip-perl libcompress-zlib-perl libpopt-dev lynx m4 ncftp nmap
zlib1g-dev autoconf automake1.9 libtool bison autotools-dev g++ build-essential alien ssh openssh-
server mysql-server mysql-client libmysqlclient15-dev mysql-admin libapache2-mod-auth-mysql mysql-
gui-tools-common mysql-admin mysql-query-browser mysql-query-browser mysql-gui-tools-common
libapache2-mod-php5 php5 php5-common php5-curl php5-dev php5-ffmpeg php5-gd php5-idn php-
pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-
ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl imagemagick php5-
ldap apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 quilt ssl-cert ntp
После того, как файлы скачаются, начнётся установка, в процессе которой нам будут предоставлены возможности для настройки: ввод пароля для пользователя MySQL — на ваше усмотрение (если сайт будет работать не только для вас, поставить пароль обязательно!).Активируем mod_rewrite командой sudo a2enmod rewrite
Запустим PHP:
sudo a2enmod php5
А эти команды пригодится нам после создания новых виртуальных хостов или удаления ненужных:
sudo /etc/init.d/apche2 restart — перезагрузка сервера
sudo /etc/init.d/apache2 force-reload — принудительная перезагрузка сервера
Эти команды пригодятся для смены прав, владельца, группы:
sudo chmod 777 /path/to/folder/or/file
смена прав доступа для директории/или файла
sudo chown -R user:group /path/to/folder
смена пользователя:группы для директории
Проверим PHP5
в терминале выполним:
sudo chown -R user:group /var/www – измените user и group на своё
sudo echo '<?php phpinfo(); ?>' > /var/www/phpinfo.php
Эта команда создаст файл phpinfo.php с содержанием <?php phpinfo(); ?> в директории /var/www/. Откроем в браузере: http://localhost/phpinfo.php и увидим информацию об установленном PHP, модулях manual/en/function.phpinfo.php)
Pecl APC
Переходим в /usr/src
sudo cd /usr/src
скачиваем
sudo wget -p http://pecl.php.net/get/uploadprogress-1.0.1.tgz
копируем:
sudo cp /usr/src/pecl.php.net/get/uploadprogress-1.0.1.tgz /usr/src/uploadprogress-1.0.1.tgz
переходим в директорию:
sudo cd /usr/src
распаковываем: sudo tar -xvzf uploadprogress-1.0.1.tgz
переходим в директорию:
cd uploadprogress-1.0.1
выполняем команды по очереди:
phpize
./configure
make
make install
Открываем php.ini и дописываем extension=uploadprogress.so
gedit /etc/php5/apache2/php.ini
Раз уж php.ini в процессе редактирования, поправим некоторые параметры:
max_execution_time и max_input_time поменяем с 60 на 300
памяти у нас уже 128, это вполне хватит для больших проектов
post_max_size меняем с 8M на 200M (451 строка)
upload_max_filesize меняем с 2M на 50M (565 строка)
max_file_uploads меняем с 50 на 150 (569 строка)
Более нас в php.ini не ничего интересует. Сохраняем и выходим (ctrl+o, Enter, ctrl+x). Перезгружаем сервер:
sudo /etc/init.d/apache2 restart
Теперь займёмся виртуальными хостами на Apache. Выполним следующее:
cd /var/
chown -R user:group www
где user - ваше имя пользователя, а group - ваша группа. Теперь вы можете вручную создать в директории /var/www ваши сайты, к примеру, drupal, phpmyadmin.
Открываем:
sudo nano /etc/apache2/sites-enabled/000-default
если удобно, можете пользоваться аналогом:
gedit /etc/apache2/sites-enabled/000-default
и всё удаляем. Заменяем удалённое на
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
ServerName localhost
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
<Directory /var/www/>
Order Deny,Allow
Allow from 127.0.0.1
Deny from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName phpmyadmin.loc
DocumentRoot /var/www/phpmyadmin
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
<Directory "/var/www/phpmyadmin/">
AllowOverride All
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName drupal.homeip.net
ServerAlias drupal.loc
DocumentRoot /var/www/drupal
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
<Directory "/var/www/drupal/">
AllowOverride All
</Directory>
</VirtualHost>
Сохраняем, выходим (если пользовались nano, ctrl+o, жмём Enter, ctrl+x).
Далее
sudo nano /etc/apache2/ports.conf
Закомментируем NameVirtualHost *:80. Т.е. получится так:
# NameVirtualHost *:80
Сохраняем, выходим (ctrl+o, жмём Enter, ctrl+x)
Далее
sudo nano /etc/apache2/httpd.conf
Вставим в этот файл такую строку:
ServerName localhost
Сохраняем, выходим (ctrl+o, жмём Enter, ctrl+x)
Откроем hosts и пропишем там наши сайты: sudo nano /etc/hosts
Вы можете прописать адрес, присвоенный машине (я настроил через роутер на адрес 192.168.1.100). А можете прописывать 127.0.0.1.
Добавим перед строкой # The following lines are desirable for IPv6 capable hosts наши сайты:
192.168.1.100
192.168.1.100
192.168.1.100
drupal.homeip.net
phpmyadmin.loc
drupal.loc
# для сервиса DynDNS
или (смотрите пример первого виртуального хоста (localhost))
127.0.0.1 phpmyadmin.loc
127.0.0.1 drupal.loc
охраняем, выходим (ctrl+o, Enter, ctrl+x)
Перезагрузим Apache
sudo/etc/init.d/apache2 restart
Попробуем зайти на каждый из сайтов:
http://drupal.loc
http://test.loc
26
http://phpmyadmin.loc
На каждом сайте увидим такую страницу:
phpMyAdmin
Тут нет ничего сложного. Нам надо скачать с http://phpmyadmin.net версию архива и распаковать файлы /var/www/phpmyadmin. Доступ к интерфейсу будет таким: http://phpmyadmin.
loc
2.5 Почта
По умолчанию в Debian стоит почтовый сервер exim4, можно использовать его для почты на localhost, а можно поставить postfix или sendmail.
Почта хранится в этой директории /var/spool/mail
Пересобираем PHP5 с поддержкой php5-gd sudo –i вводим пароль
Выполняем по порядку, ничего не пропускаем:
apt-get install build-essential debhelper fakeroot
cd /usr/src
apt-get source php5
apt-get build-dep php5
cd php5-5.2.6.dfsg.1
Теперь нам надо сделать изменения в файле rules. Открываем
nano debian/rules
находим (CTRL+W) и меняем строку
на
--with-gd=shared,/usr --enable-gd-native-ttf \
--with-gd=shared --enable-gd-native-ttf \
Сохраняем, выходим (ctrl+o, Enter, ctrl+x)
Добавляем
aptitude install apache2-prefork-dev chrpath freetds-dev libapr1-dev libbz2-dev libcurl4-openssl-dev
libcurl-dev libdb4.7-dev libdb4.6-dev libedit-dev libexpat1-dev libfreetype6-dev libgcrypt11-dev libgd2-
xpm-dev libgmp3-dev libjpeg62-dev libkrb5-dev libldap2-dev libmhash-dev libncurses5-dev libpam0g-
dev libpcre3-dev libpng12-dev libpq-dev libpspell-dev librecode-dev libsasl2-dev libsnmp-dev libsqlite0-
dev libt1-dev libtidy-dev libwrap0-dev libxmltok1-dev libxml2-dev libxslt1-dev quilt re2c unixodbc-dev
на вопрос о подтверждении нажмиаем ‘Y’ и Enter
dpkg-buildpackage -rfakeroot -d
пакеты будут пересобиратсья
cd ..
dpkg -i php5-gd_5.2.6.dfsg.1-1+lenny9_i386.deb
/etc/init.d/apache2 restart
Теперь у нас установлен полноценный сервер.
2.6 Установка Drupal
Создадим для Drupal базу:
Перейдём в phpmyadmin http://phpmyadmin.loc
Создадим новую базу drupal_drupal6, поставим кодировку utf8_general_ci, сохраним
Скачаем последнюю стабильную версию (на данный момент 6.19). с сайта http://drupal.
Org
Распакуем, скопируем содержимое (директории и файлы) в /var/www/drupal
Перейдём в /var/www/sites/default, сделаем копию default.settings.php и переименуем в settings.php. Поставим права на запись (правой кнопкой на файле, "Права")
Создадим директорию files, тоже выставим права на чтение и запись
Перейдём на сайт: http://drupal.loc
Устанавливаем.
На следующем экране введите почтовый адрес сайта, имя пользователя (администратора, пароль и подтверждение). Можно сразу включить чистые ссылки (Clean URL’s).
После установки сменим права на /var/www/sites/default/settings.php на чтение
Директории для ваших тем и модулей: /var/www/drupal.sites/all/themes и /var/www/drupal.sites/all/modules соответственно.
Запустите cron, убедитесь, что в таблице "Отчёт о состоянии" нет ошибок и предупреждение
2.7 Установка и работа с Drush
Drush – это мощная утилита, позволяющая управлять Drupal-сайтом из командной строки.
Устанавливется Drush очень просто
sudo aptitude install drush
Теперь перейдём в директорию
cd /var/www/drupal
и посмотрим статус установленного у нас на сервере Drupal drush status
status – состояние сайта
dl — установить (скачать) модуль
enable — включить модуль
disable — выключить модуль
up — обновить все модули
cron — запустить крон
cache clear — очистить кэш
drush --help — показывает справку
Это всего лишь часть команд, которые следует знать.
Давайте попробуем скачать, установить, включить, выключить и удалить модуль coder (http:// drupal.org/project/coder).
Для начала перейдём в рабочую директорию с установленным Drupal’ом:
cd /var/www/drupal
Листинг действий (после каждого действия вы можете проверять результат на работающем сайте):
drush dl coder
drush enable coder
drush disable coder
drush unistall coder
Заключение
Проанализировав работу OS GNU Debian, можно увидеть великолепную гибкость и податливость в качестве серверной ОС. Если еще учесть 6 уровней безопасности и практически совершенную неуязвимость для вирусов, то ОС семейства Linux можно назвать идеальным решением для сервера.
Список используемой литературы и источников информации
http://www.debianhelp.co.uk/sudo.htm (Sudo Configuration in Debian)
http://sudouser.com/nastrojka-sudo-v-debian-gnulinux-i-ubuntu-linux.html (Настройка sudo в Debian GNU/Linux и Ubuntu Linux)
http://linuxdevcenter.com/pub/a/linux/2005/12/01/linux_root.html (Using the Root Account on Debian)
http://citforum.ru/operating_systems/linux/debian_reference/ch-tutorial.shtml (Справочник по Debian)
http://habrahabr.ru/blogs/ubuntu/20525/ (Устанавливаем и настраиваем LAMP и Trac+SVN на Ubuntu)
http://cumu.li/2008/5/13/recompiling-php5-with-bundled-support-for-gd-on-ubuntu (Recompiling PHP5 With Bundled Support for GD on Ubuntu)
http://phpclub.ru/detail/article/2001-04-20 (Установка PHP + Apache: CGI vs. module)
http://www.opennet.ru/base/sys/swap_create.txt.html (Управление своп-областями (swap) в Linux)
http://qref.sourceforge.net/quick/index.ru.html (справочник по Debian)
http://sudouser.com/ustanovka-samba-servera-na-ubuntu-debian-za-5-minut.html (Установка Samba)
http://www.debian.org/releases/stable/i386/apc.html.ru (Разметка дисков в Debian)
http://blog.ezersky.ru (LAMP на Ubuntu)
• http://www.debian.org
• http://linuxdevcenter.com
• http://www.debianhelp.co.uk
• http://welinux.ru/
• http://unixhome.org.ua/
• http://habrahabr.ru/blogs/linux/
• http://drupal.org
• http://drupal.ru
• http://magazine.drupalogy.ru Установка и настройка Debian для начинающих
Приложение
Схема локальной сети
Приложение 2
Смета расходов. Персональный компьютер
Процессор |
Core 2 Duo E8100 2.1GHZ |
|
ОЗУ |
Kingston 2048 |
|
Материнская плата |
Asustek |
2190.65 руб |
HDD |
WD1936 250Gb |
3050.00 руб |
Привод |
NEC DVDRW |
900 руб |
БП |
ATX Delta |
1500 руб |
ИБП |
APC 1020 X4 |
1800 |
Монитор |
Samsung SyncMaster 173p |
5999.99 руб |
Клавиатура и мышь |
Genius |
1500 руб |
Колонки |
Genius |
600 руб |
Сервер
Процессор |
Core 2 Duo E8100 2.1GHZ |
|
ОЗУ |
Kingston 2048 |
|
Материнская плата |
Asustek |
2190.65 руб |
HDD |
WD1936 250Gb |
3050.00 руб |
Привод |
NEC DVDRW |
900 руб |
БП |
ATX Delta |
1500 руб |
ИБП |
APC 1020 X4 |
1800 |
Монитор |
Samsung SyncMaster 173p |
5999.99 руб |
Клавиатура и мышь |
Genius |
1500 руб |
Колонки |
Genius |
600 руб |
Сетевое оборудование
Провода RJ-45 |
200 метров |
30 руб/м |
Коммутатор |
Cisco RKJ2346 |
3659.99 |
Сетевые картыХ30 |
Realtek N34540 |
650 руб |