Инструменты пользователя

Инструменты сайта


server2

Linux Сервер для дома (Ubuntu 8.04-8.10) Часть вторая.

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

Готовим и ставим сервер.

Чтобы проще было в будущем работать попробуем установить ряд дополнительных программ, которые нам пригодятся в дальнейшем. А заодно, поучимся как это делать! Как я уже говорил, у нас есть несколько возможностей для этого. Воспользуемся программой (пакетом) Synaptic. Запустим его из меню:

Запуск пакета 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.

Точно также устанавливаем еще два пакета: console-cyrillic и mc.

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

На экране видно, что я их ставлю повторно:

Что бы закончить с Synaptic, покажу вам окошко, где я с помощью Synaptic удаляю пакет console-cyrillic (как пример), вдруг когда-то потребуется удалить какой- нибудь пакет.

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

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

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

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

Для этого включим его в нашем ГЛАВНОЕ МЕНЮ.

Находим пункт Система→Параметры→Главное меню

Запускаем его, находим раздел Системные и ставим птичку напротив Терминал суперпользователя:

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

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

Обычно я выношу значки терминалов на верхнюю панель Гнома.

Устанавливаем пакеты для для нашего сервера LAMP

Итак устанавливаем пакет программ, для нашего сервера 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

Набрав в браузере команду:

http://localhost/

или

http://127.0.0.1

или вместо адреса 127.0.0.1, вы можете набрать ip адрес вашей сетевой карты, например у меня: 192.168.0.100

http://192.168.0.100

мы попадаем в папку /var/www, где сервер Apache пытается найти файл index.html, index.php и т. д.

Как эту папку посмотреть? Я это делаю с помощью MC.

Захожу в терминал суперпользователя. Набираю mc и в нем ищу папку /var/www

Вот как раз картинка с mc и c этой папкой:

а так, как там нет такого файла (index.html, index.php), в последних случаях мы увидим в браузере, то что видим в MC,

http://127.0.0.1

Теперь вам должно стать понятным следующее.

Если вы создадите свою HTML страничку, назовете ее index.html и скопируете ее в папку: /var/www , то при следующей загрузке браузера с адресом

http://localhost вы как раз ее и увидите!!!

:!: Для лучшего понимания поясняю, что если вы в браузере зайдете в папку apache2-default, то вы как раз и увидите дефолтную страницу Apache (см. картинку выше),

А через МС зайдя в эту папку (apache2-default,) и наведя курсор на файл index.html и нажав в mc кнопку F3 вы увидите слово It works!

Проверка установки php

создаем файл:

Код:

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.

Что бы управлять сетевым экраном надо установить пакет 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 и его русификация.

Чтобы установить форум 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 как бы отсутствует, чтобы активировать его надо сменить ему пароль, после чего он появиться в системе.

Сделать это можно через меню Пунк Система→Администрирование→Пользователи и группы:

См. картинки:

Выбираем пользователя 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

:!: Если вы забыли пароль root-а для захода на свой MySQL-сервер, то надо просто переконфигурировать сервер MySQL.

Набираем в консоли:

sudo dpkg-reconfigure mysql-server-5.0

Жмем <key>Enter</key> и в появляющихся окошках вводим новый пароль и его подтверждение.

Victor53p 2009/01/21 10:48

server2.txt · Последнее изменение: 2022/02/17 18:55 (внешнее изменение)