Продолжаю тему про установку и настройку домашнего сервера.
Чтобы проще было в будущем работать попробуем установить ряд дополнительных программ, которые нам пригодятся в дальнейшем. А заодно, поучимся как это делать! Как я уже говорил, у нас есть несколько возможностей для этого. Воспользуемся программой (пакетом) Synaptic. Запустим его из меню:
Запускаем Synaptic через меню Система → Администрирование:
А вот и он сам:
Обычно я его немного настраиваю, на последующих двух картинках, я показываю какие птички я в нем ставлю:
И здесь:
Далее, воспользуемся поиском, находясь в главном окне Synaptic (рис.1), нажмем на значек с биноклем и надписью 'искать'.
У нас выскочит вот такое окошечко:
Обычно поиск я делаю по «Названию» или более расширенный по «Описанию и названию».
Набираем в нем слово сервер, и среди появившегося списка находим название linux-server.
Нажимаем на стоящий слева квадратик, т. е. ставим там птичку, нажимаем применить, и видим следующее окно:
Прежде чем я вам разрешу нажать на кнопку <key>Применить</key>, объясню что же мы делаем!
Мы просто с помощью пакета Synaptic устанавливаем в систему серверное ядро.
А т.к. Synaptic достаточно умный, он предложил установить все три необходимых для этого пакета:
linux-image-2.6.22-14-server inux-image-server linux-ubuntu-modules-2.6.22-14-server
Ниже привожу картинку из которой видно как это делать:
В центральном окошке можно увидеть какие пакеты будут установлены, какие у вас имеются, а какие вам надо будет докачать.
Нажимаем еще раз кнопку <key>Применить</key> и увидим, как система закачает и устанавит пакеты серверного ядра.
На картинке ниже видно, для этого, ей придется загрузить 21,7 MB дополнительной информации.
Точно также устанавливаем еще два пакета: console-cyrillic и mc.
Первый нужен для русификации консолей, а второй является файловым менеджером, который я постоянно использую для работы с файлами и архивами в консоли.
На экране видно, что я их ставлю повторно:
Что бы закончить с Synaptic, покажу вам окошко, где я с помощью Synaptic удаляю пакет console-cyrillic (как пример), вдруг когда-то потребуется удалить какой- нибудь пакет.
Делаю я это так, найдя необходимый для удаление пакет, нажимаю на нем правой кнопкой мышки и выбираю нужный мне пункт.
Необходимо знать, что выбор пункта:- «Отметить для полного удаления» позволит удалить и все конфигурационные файлы этого пакета.
Есть как я уже отмечал и другой способ работы с пакетами - это с помощью Терминала суперпользователя.
Для этого включим его в нашем ГЛАВНОЕ МЕНЮ.
Находим пункт Система→Параметры→Главное меню
Запускаем его, находим раздел Системные и ставим птичку напротив Терминал суперпользователя:
Теперь он будет виден в главном меню. То же можно сделать по всем вашим разделам.
Здесь же можно добавлять и свои собственные пункты, разделы и т .д.
Обычно я выношу значки терминалов на верхнюю панель Гнома.
Итак устанавливаем пакет программ, для нашего сервера LAMP (Linux-Apache-MySQL-PHP).
Будем это делать в терминале суперпользователя, скопировав туда следующую команду:
apt-get install binutils cpp fetchmail flex gcc libarchive-zip-perl libc6-dev libcompress-zlib-perl libdb4.3-dev libpcre3 libpopt-dev lynx m4 make ncftp nmap openssl perl perl-modules unzip zip zlib1g-dev autoconf automake1.9 libtool bison autotools-dev g++ build-essential alien ssh openssh-server mysql-server mysql-client libmysqlclient15-dev phpmyadmin mysql-admin libapache2-mod-auth-mysql mysql-admin-common mysql-query-browser mysql-query-browser-common libapache2-mod-php5 php5 php5-common php5-curl php5-dev 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 php-image-graph imagemagick php5-ldap apache2 apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert webalizer ntp ntpdate
Выглядеть это будет так:
Затем нажимаем <key>Enter</key>. После чего все эти пакеты будут закачены и установлены в вашу систему.
Далее здесь же в терминале надо выполнить вот эти команды:
a2enmod ssl a2enmod rewrite a2enmod suexec a2enmod include a2enmod php5
И что бы на нашем сервере заработал пакет phpmyadmin, нужно сделать ссылку на папку где он лежит:
ln -s /usr/share/phpmyadmin/ /var/www
Проделывая все это, вы должны закрыть все программы для работы с пакетами, как то Synaptic, Менеджер обновлений, Источники приложений, aptitude, иначе система будет ругаться на блокировку!
Перезагружаем компьютер. В загрузочном меню выбираем первый пункт, т. е. загрузку сервера.
После входа в систему, проверим что у нас получилось!
Запускаем наш браузер под названием Mozilla Firefox и набираем в адресной строке следующую команду:
http://localhost/apache2-default
Если мы видим вот такую картинку, значит наш сервер заработал!
СРАЗУ НАДО ПОНЯТЬ ЧТО ВСЕ ВАШИ СТРАНИЦЫ, ФАЙЛЫ И ДР., КОТОРЫЕ ПО УМОЛЧАНИЮ БУДУТ ВИДНЫ ЧЕРЕЗ БРАУЗЕР, НАХОДЯТСЯ В ПАПКЕ: /VAR/WWW
Набрав в браузере команду:
или
или вместо адреса 127.0.0.1, вы можете набрать ip адрес вашей сетевой карты, например у меня: 192.168.0.100
мы попадаем в папку /var/www, где сервер Apache пытается найти файл index.html, index.php и т. д.
Как эту папку посмотреть? Я это делаю с помощью MC.
Захожу в терминал суперпользователя. Набираю mc и в нем ищу папку /var/www
Вот как раз картинка с mc и c этой папкой:
а так, как там нет такого файла (index.html, index.php), в последних случаях мы увидим в браузере, то что видим в MC,
Теперь вам должно стать понятным следующее.
Если вы создадите свою HTML страничку, назовете ее index.html и скопируете ее в папку: /var/www , то при следующей загрузке браузера с адресом
http://localhost вы как раз ее и увидите!!!
Для лучшего понимания поясняю, что если вы в браузере зайдете в папку apache2-default, то вы как раз и увидите дефолтную страницу Apache (см. картинку выше),
А через МС зайдя в эту папку (apache2-default,) и наведя курсор на файл index.html и нажав в mc кнопку F3 вы увидите слово It works!
создаем файл:
Код:
sudo gedit /var/www/testphp.php
Вставляем следующую строку в новый файл
<?php phpinfo(); ?>
Сохраняем, запускаем: http://localhost/testphp.php
Web-браузер откроет страницу с полным описанием установленных пакетов PHP.
<note>Набрав в адресной строке вашего браузера адрес: http://localhost/phpmyadmin
Вы можете так же, аналогично, вызвать программу phpmyadmin, для работы с вашими MySQL базами.</note>
Конфигурируем сеть:
Код:
gedit /etc/network/interfaces
если вы не в Х, то:
vi /etc/network/interfaces
Этот файл должен выглядеть вот так:
# # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # The loopback network interface auto lo iface lo inet loopback # This is a list of hotpluggable network interfaces. # They will be activated automatically by the hotplug subsystem. mapping hotplug script grep map eth0 # The primary network interface auto eth0 iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1
Перезапускаем сеть:
Код:
/etc/init.d/networking restart
Должны увидеть вот такую картинку:
Теперь редактируем еще один файл:
Код:
gedit /etc/hosts # если вы не в Х, то; vi /etc/hosts
Этот файл должен выглядеть вот так:
127.0.0.1 localhost.localdomain localhost server1 192.168.1.100 server1.example.com server1 # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts
Продолжаем настройку имени вашего хоста (вашего компьютера, сервера): Я для примера взял имя server1.example.com и IP адрес 192.168.1.100. IP адрес модема 192.168.1.1. Адрес второй сетевой карты к которой будет подключена домашняя сеть 192.168.2.1. Хотя последняя необязательна, можно расшарить и первую карту. Итак присваиваем имя:- server1.example.com (если у вас куплено доменное имя, то ставите его)
Код:
echo server1.example.com > /etc/hostname
/etc/init.d/hostname.sh
echo '192.168.0.100 server1.example.com' >> /etc/hosts
Перестартуем Apache2 и увидим следующую картинку:
Код:
/etc/init.d/apache2 restart
Если вы находитесь в графической оболочке, то можно попытаться настроить это все вызвав через меню- «Программы настройки сети»:
Система→Администрирование→Сеть: Ниже можете посмотреть картинки с моими настройками:
Вторая сетевая карта:
Ну и обязательно, надо помнить об известной команде ifconfig, (ifconfig -h- это чтобы посмотреть помощь)
Практически это и все по настройкам сети.
Что бы управлять сетевым экраном надо установить пакет firestarter. Я покажу как это сделать из терминала, но можно с таким же успехом это сделать и из Synaptic. Из терминала надо набрать команду:
Код:
apt-get install firestarter
Запустить его можно из меню системы: Система→Администрирование→Firestarter Видим Wizard, т. е. волшебника. который поможет вам настроить брандмауэр пошагово.
Первое окно при запуске- нажимаем <key>Вперед</key>.
Следующее окно Internet connection sharing setup, позволяет, если вы захотите, сделать возможным связь между двумя вашими сетевыми картами. Включите (Enable…..)
Ниже показан внешний вид главного окна Status. Внизу открыто окно в котором в реальном времени показаны IP адреса хостов, которые работают с вашим сервером, и с которыми работаете вы. здесь Здесь же можно заблокировать брандмауэр- Lock и остановить Stop и запустить потом.
Следующее Окно Ewents, т.е. Окно Событий. Окно показывает историю подключений заблокированных брандмауэром. Таким образом брандмауэр записывает такие события. Есть однако многие действия, Вы можете обратиться к позиции отказа соединения, а затем эти затрагивают, как брандмауэр будет рассматривать аналогичные движения в будущем.
Firestarter подсвечивает события тремя цветами. Ниже описаны значения цветов:
В связи очередной попыткой доступа со случайного порта, который был заблокирован брандмауэром.
Как правило, вам не надо беспокоиться о таких событиях.
Одна из возможных попыток доступа, c непонятного IP (не государственная служба). Firestarter предлагает обратить вам особое внимание на эти записи.
Хотя надо заметить, что это не обязательно означает, кто-то пытается организовать вторжение. Решать об этом Вам.
События классифицируются как безобидные. Этот класс состоит в основном из широковещательного трафика.
Следующее окно Входящих политик. В окне можно настраивать контроль на входящий трафик из Интернета к локальной сети до брандмауэра. По умолчанию Все запрещено. каждое разрешающее правило добавляет одну дырку. (грубо говоря). Три части окна - сверху вниз:- разрешения для хоста, ниже для портов или служб и последнее проброс (forward) портов или служб. В окне на картинке внизу установлены открытыми порты 80, 21-22 т.е. HTTP и FTP.
Следующее 2 окна показывают, как в предыдущем окне добавляются правила: Добавляем правило которое открывает доступ из Интернет к 80 порту, т.е. к серверу Apache.
Добавляем правило которое открывает доступ из Интернет к 21-22 портам, т.е. к серверу FTP:
Следующее окно- Окно Исходящих политик. Это окно для управления контролем исходящего трафика в Интернет и машины на которой установлен межсетевым экран, а так же для любого LAN клиента. По умолчанию внешняя политика является разрешительной. Это значит, что и вы, и любой клиент, подключенных к локальной сети имеют возможность быть в сети Интернет, читать электронную почту и т.д. без ограничений. В окне как раз можно вводить различные ограничения. По умолчанию включена возможность создать т. н. черный список:
Здесь окно имеет подразделение на три части. Если коротко в первой верхней части можно запретить конкретный адрес или хост в интернете, например порносайт или несколько. Во второй части которая по центру запретить конкретный хост или ip адрес в локальной сети или несколько. И в нижней части запретить службу или порт. См. окно ниже:
Нажав радиокнопку «Restrictive by default, whitelist traffic» включаем вторичное окна режима для контроля исходящего трафика. Т. е. запрещаем для себя и локальной сети весь внешний трафик и создаем т.н. белый список. В верхнем окне можем разрешить один адрес или хост в интернете. В среднем окне разрешить выход для отдельной машины в локальной сети. И в нижнем окне разрешить работы отдельных портов или служб.
Ниже помещена картинка с описанным окном:
Настройки самого брандмауэра -(Preferences). Опция видна в главном окне.
Обычно я включаю две птички на первом окне - настройка интерфейса:
Это включить иконку в tray в панели задач. И минимизировать Firestarter в панель задач при закрытии его окна:↓
Так же в настройка брандмауэра→ Редактирование политик, можно включить полезную опцию:- применять изменения правил сразу:↓
В этом окне можно подправить все настройки связанные с сетью.Включить NAT. Включить DHCP сервер:↓
Остальные настройки можно посмотреть в помощи для этого пакета. Обычно я их оставляю по умолчанию!!
Вот таким образом этот пакет под названием Firestarter или брандмауэр или межсетевой экран настраивать правила для iptables.
Посмотреть созданные правила, применив в терминале (или консоле) следующую команду:
Код:
iptables -L
Да еще! Не бойтесь, если вы вышли из Х-сов (графической оболочки, Гнома) IPTABLES продолжает работать!!!
Пока все! если что вспомню, буду добавлять.
Чтобы установить форум SMF 1.1.4 его надо скачать. Скачиваем его с официального сайта.
http://www.simplemachines.org/download/index.php?thanks;filename=smf_1-1-4_install.tar.bz2
Теперь файл русификации:
Запустим MC в терминале суперпользователя (просто наберем команду mc и нажмее <key>Enter</key>)
Найдем в левом окне МС загруженный файл smf_1-1-4_install.tar.bz2, наведем на него курсор и нажмем <key>Enter</key>.
МС откроет архив и мы увидим его содержимое. Нажимая на клавишу <key>Ins</key> выделим все папки и файлы.
Затем справа откроем в окне МС папку /var/www.
Опять с помощью клавиши <key>Tab</key> перейдем на левое окно и нажав клавишу <key>F5</key> скопируем все файлы с левого окна на правое,
для тренировке можно скопировать файлы в папку forum, которую в мс можносоздать в правом окне нажав клавишу <key>F7</key>.
Если мы скопировали в папку forum, то и открывать будем ее в браузере http://localhost/forum/
Если вы хотите чтобы при наборе вашего ip адреса или доменного адреса открывался ваш форум, то копируйте все сразу в корень: /var/www
.
Далее точно также поступаем с файлом русификации, открываем в одном окне MC и копируем открывшуюся папку Themes в туже папку находящуюся в моем
примере в /var/www/forum.
Скачать для кодировки UTF8 можно здесь:
http://www.simplemachines.org/download/index.php?thanks;filename=smf_1-1-4_russian-utf8.zip
Файл для русификации в формате UTF8 называется: smf_1-1-4_russian-utf8.tar.bz2
Далее определяем права на папки и файлы форума принадлежащими группе www-data.
Код:
chown -R www-data:www-data /var/www/forum
Можно открыть права только на необходимые папки и файлы:
Это следующие папки и файлы:
* attachments папка права 777 * avatarsпапка права 777 * Packages папка права 777 * Packages/installed.list файл права 666 * Smileys папка права 777 * Themes папка права 777 * agreement.txt файл права 666 * Settings.php файл права 666 * Settings_bak.php файл права 666
Я делаю это так (пару примеров):-нажав комбинацию клавиш <key>Ctrl+x+c</key> присваиваем файлу installed.list
права 666
Нажав комбинацию клавиш <key>Ctrl+x+c</key> присваеваем папке Packages права 777
Теперь используя phpmyadmin создадим пустую базу данных под названием smf
Запускаем phpmyadmin:↓
Как видите чтобы попасть в phpmyadmin, я набрал пароль root-a для MySQL.
Далее создаем базу данных в кодировке UTF8: ↓
Вписываем название smf , сравнение utf8_genersl_ ci , нажимаем кнопку «Создать»
Теперь запускаем установку форума http://localhost/forum (в моем примере): ↓
Здесь главное не забыть поставить птичку использовать кодировку utf8 по умолчанию.. Написать название форума, реальный адрес или доменное имя,
имя базы данных, в нашем случае smf. Т.к. мы, не определяли конкретного пользователя для данной базы данных, то пишем главного пользователя root и его
пароль для баз, который мы определили когда ставили сервер MySQL.
Нажимаем далее и попадаем на страницу в которой надо ввести имя Администратора форума его пароль и email а так же для безопасности еще раз пароль root-a для MySQL: ↓
Если все правильно то нас пропустят к последнему окну, где попросят поставить птичку возле слов убрать файл install.php и нажать на слово форум:
Где мы и увидим наш форум:
Если что то не так, то откатится назад не долго, заходим в phpmyadmin, удаляем базу smf:
Затем с помощью MC удаляем папку форум, и начинаем все сначала, у меня на это уходит около 3-х минут!!!
Реально если у вас есть статический IP и доменное имя, то надо работать с ними.
И надо помнить, что главная папка которая будет открываться по адресу в браузере: http://localhost это это корень /var/www.
А если я положил свой форум в папку forum, то я его открою по адресу: http://localhost/forum.
Пока все!
По умолчанию после установки системы пользователь root как бы отсутствует, чтобы активировать его надо сменить ему пароль, после чего он появиться в системе.
Сделать это можно через меню Пунк Система→Администрирование→Пользователи и группы:
См. картинки:
Выбираем пользователя ROOT, Нажимаем на кнопку свойства, и вписываем дважды придуманный ему пароль:
В этом окне на второй вкладки 'Привилегии пользователя', ставим птички- разрешить.
В последних версиях Ubuntu, немного изменилось окно входа, чтобы выполнить действия в данном окне, надо его разблокировать и авторизироваться.
Смотри рисунки ниже:
По моему, здесь все понятно!
При настройке модема, надо понять следующее.
Модем получает динамический IP адрес от провайдера.
Этот IP адрес вам надо перенаправить (пробросить) на ваш сервер. Для этого надо включить в модеме функцию мапирования, чтобы динамический (или статический адрес, если вы купили эту услугу) переадресовывался на IP адрес вашего сервера (у меня это 192.168.1.100)
Далее, можно , через сервис сервера DynDNS сделать себе бесплатное доменное имя, или купить доменное имя у провайдера.
Или можно, просто сказать своим друзьям свой IP адрес, и они набрав его в браузере они попадут на ваш сервер.
Для управления сервером, в том числе и удаленно можно использовать пакет WEBMIN. Последнюю версии для Ubuntu, можно скачать здесь.
http://www.webmin.com/download.html
Скачиваем пакет webmin_1.400_all.deb
Устанавливаем его обычным способом, затем набираем в браузере например для localhost https://localhost:10000
Заходим под root, меняем язык на русский и не спеша изучаем и привыкаем к нему!
Если вы забыли пароль root-а для захода на свой MySQL-сервер, то надо просто переконфигурировать сервер MySQL.
Набираем в консоли:
sudo dpkg-reconfigure mysql-server-5.0
Жмем <key>Enter</key> и в появляющихся окошках вводим новый пароль и его подтверждение.
— Victor53p 2009/01/21 10:48