Курсовая работа: Проектирование локальной сети
После установки
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 руб |
|
|
|
|