Linux Server. 1 Поднимаем сервак на Debian по шагам

Posted by map[name:devi1 uri:https://www.blogger.com/profile/05777499482649623616] on Sunday, March 13, 2011

Будем экспериментировать с Debian 6.0 Squeeze. Пост не рассматривается как руководство к действию - просто эксперименты с Debian’ом. Попробуем поднять все известные нужные/не очень сервисы. Постараюсь подробно и по шагам.Вообще, если это будет первый опыт с UNIX-подобными системами, то рекомендую заюзать Ubuntu - она попроще и дружелюбней к новичкам. В Debian’е многое придется делать руками. А в целом руководство должно подойти и для Ubuntu.Сначала несколько самых важных команд:cd - ходить по папкам (подняться на уровень выше cd ..), ls - просмотреть содержимое папки, nano - удобный текстовый редактор, ps ax - просмотреть все запущенные процессы, apt- утилита для работы с пакетами ПО (apt-get install packet - установка пакета(программы)).Ещё нужно понять, что Линукс - не винда, и структура файловой системы здесь СОВСЕМ другая, хотя когда привыкаешь, понимаешь, что это достоинство Линукса. О файловой системе написано довольно много, поэтому не буду повторяться.1. Установка системы. Ничего сверхсложного. Просто следуем рекомендациям установщика. Особо продвинутые могут вынести на разные диски разделы /home, /var, /usr и т.д. Из предложенных вариантов доп. софта отмечаем только стандартные утилиты, т.к. хочется сервисы поднимать ручками и увеличивать свои скиллы.2. Настройка сети. Так как у нас сервер, то в нем должно быть минимум 2 сетевых карточки =) Условимся, что eth1 “смотрит” в инет, а eth0 - в локалку. Да, в Линуксах сетевые интерфейсы называются именно так - eth0, eth1 и т.д. Ещё есть lo, ppp0, но об этом позже.Настройка сети сводится к редактированию файла /etc/network/interfaces . Проще всего это сделать с помощью редактора nano. Делать все нужно с правами суперпользователя, для этого нужно набрать su и ввести пароль, заданный на этапе установки. Набираем в терминале nano /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 interfaceauto loiface lo inet loopbackВсё, что идет после знака # - комментарии, они игнорируются системой. lo - это петля, чтобы система могла видеть себя по адресам 127.0.0.1 и localhost. Больше об этом ничего не скажу - сам толком не знаю.Следующими строками добавляем примерно следующее:auto eth0iface eth0 inet static        address 192.168.0.100        netmask 255.255.255.0auto eth1iface eth1 inet static        address 192.168.44.223        netmask 255.255.255.0        gateway 192.168.44.1Думаю, здесь всё ясно - address - это наш IP-адрес, netmask - маска, gateway - шлюз. static - поясняет системе, что адрес присваивается статично. Если у вас dhcp, то вместо statiс нужно написать dhcp. Ну естественно циферки нужно вбить свои =) В винде нам бы пришлось ребутиться, но у нас же линукс - тут можно перезапустить сетевую подсистему без перезагрузки - /etc/init.d/networking restart Но можно и ребутнуться rebootАдреса DNS-серверов прописаны в файле /etc/resolv.conf Если у вас его нет просто создайте его: nano /etc/resolv.conf и пропишите сервера в виде: nameserver xxx.xxx.xxx.xxxnameserver xxx.xxx.xxx.xxx3. Поднимаем инет. У многих провайдеров интернет раздается посредством vpn-соединения. Чтобы получить сию благодать придется попариться =) Нужно узнать у провайдера настройки для UNIX-подобных систем. Мне пришлось сделать следующее:3.1. Установить pptpclient. Его можно найти на диске с дистрибутивом.3.2. Настроить маршрутизацию:route del defaultroute add -net xxx.xxx.xxx.xxx netmask 255.255.255.0 gw xxx.xxx.xxx.xxx eth1Здесь xxx.xxx.xxx.xxx - адрес, предложенный провайдером.3.3. Настроить pptp - клиента как предлагает провайдер. Файл /etc/ppp/options:locallocknodetachmtu 1512mru 1512require-mppe-40require-mppe-128require-mppelcp-echo-interval 30lcp-echo-failure 5require-mschap-v2refuse-paprefuse-chaprefuse-mschaprefuse-eapdefaultrouteuser ВАШ_ЛОГИНnoauthФайл /etc/ppp/chap-secrets: ВАШ_ЛОГИН * ВАШ_ПАРОЛЬ *Поменять права на chap-secrets: chmod 400 chap-secrets3.4. Набрать в терминале pptp vpn.server.ru и всё заработало.3.5. Будем надеяться, что у вас тоже всё получилось. Тогда можно написать скрипт для автоподнятия инета или перейти к обновлению. Чтобы инет поднимался автоматически после старта системы нужно все команды для поднятия инета завернуть в скрипт. nano /usr/local/bin/pptp-run.sh#!/bin/bash route del default      #первая команда из п. 3.2#вторая команда и т.д.LOG="/var/log/pptp-run.log"while true; do        echo -e “\n=========================================\n date” >> $LOG        /usr/sbin/pptp vpn.server.ru >> $LOG        sleep 10;doneКак видно из скрипта, он логирует свою работу, а значит можно увидеть как отработал скрипт в файле /var/log/pptp-run.log Теперь нужно дать скрипту права на выполнение, потому что сейчас система видит его как простой текстовый файл: chmod +x pptp-run.shОсталось прописать скриптик в автозагрузку. nano /etc/rc.localПеред строкой exit 0 пишем путь до скрипта: /usr/local/bin/pptp-run.sh4. Обновляем систему. Обновления выкачиваются из репозитариев, по умолчанию они не прописаны в системе.4.1.  Поэтому нужно их прописать. nano /etc/apt/sources.listЕсли не собираемся ничего ставить с диска, то закомментируем строки deb cdrom:[Debian GNU/Linux 6.0.0 Squeeze - Official i386 CD Binary-1 20110205-17:27]/ squeeze maindeb cdrom:[Debian GNU/Linux 6.0.0 Squeeze - Official i386 CD Binary-1 20110205-17:27]/ squeeze mainТакже нужно добавить репозитарии:#Offical Debian repositorydeb http://ftp.debian.org/debian/ squeeze main non-free contribdeb-src http://ftp.debian.org/debian/ squeeze main non-free contrib#Official Debian repository Russian mirrorsdeb http://ftp.ru.debian.org/debian/ squeeze main non-free contribdeb-src http://ftp.ru.debian.org/debian/ squeeze main non-free contrib4.2. Обновляем списки репозитариев: apt-get update4.3. Обновляем систему: apt-get upgradeТеперь можно заняться работой =))5. Установка софта первой необходимости. 5.1. Чтобы можно было удаленно работать с сервом нужен ssh-сервер.apt-get install openssh-server Теперь можно работать с серваком с любого другого компа, подключенного к сети через ssh-клиент. В винде это PuTTY.5.2. Если боитесь командной строки, рекомендую поставить файловый менеджер mc (Midnight Commander - аналог виндового Norton Commaner, FAR и т.д.). apt-get install mc Запускается установленный ФМ командой mc5.3. Работать в системе с правами суперпользователя (su) небезопасно. Можно поставить sudo. Она позволяет не входить в систему под суперюзером, а единожды выполнять команду с его правами, например sudo apt-get install. Как ставить софт думаю уже понятно, поэтому больше не буду повторяться (su; apt-get install имя_пакета). Без небольшой настройки sudo не заработает. Нужно подредактировать файлик /etc/sudoers (как редактировать надеюсь тоже ясно: su; nano имя_файла; Ctrl+X; Y). Добавляем строку:имя_пользователя   ALL=(ALL) ALLМожно сделать ещё проще: добавить нужного юзера в группу sudo: usermodusername -aG  sudo5.4. Для тех, у кого фобия командной строки рекомендую копать в сторону webmin. Но это не наш путь - с ним вы толком ничего не поймете, а лишь будете знать что можно сделать с линухом. Для экспериментов да похвастаться перед одноклассниками (превед школота!) что “Я паставил Линух!” сойдет, но не больше!5.5. Продвинутый диспетчер процессов - htop6. Настройка простейшего роутера.Наш роутер будет передавать весь траффик с интернета в локальную сеть и обратно. Для этого нужно использовать NAT. Проптсываем в настройках фаервола натинг:iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADEНо это ещё не всё. Для работы натинга необходимо разрешить пересылку пакетов в ядре. В файле /etc/sysctl.conf нужно раскомментировать строку net.ipv4.ip_forward=1 .После перезагрузки настройки фаервола сбросятся, поэтому следует сохранить цепочки фаера:iptables-save > /etc/iptables-saveИ прописать восстановление этих настроек при загрузке системы. В файл /etc/network/interfaces добавить строку:up iptables-restore < /etc/iptables-saveКонечно это простейший роутер, без ограничения траффика, проверки на вирусы и прочего, но он работает =)7. Настройка Wi-Fi Скомпилировано из этого:1. http://bagow.org/nastrojka-wi-fi-v-debian/2. http://gettoknowlinux.blogspot.com/2010/07/wifi-access-point-debian-atheros.htm3. http://sudouser.com/linux-v-roli-wi-fi-tochki-dostupa.html4. http://forum.ubuntu.ru/index.php?topic=61834.0lМожно  сделать наш серв точкой доступа и раздавать инет на мобильные устройства. Для этого нужна беспроводная сетевая карточка. Нужно узнать её производителя и, желательно, чип, на котором она работает. У меня была сетевушка D-Link DWA-510 (RaLink RT2561/RT61). Чип можно узнать на сайте производителя или у гугла на крайняк. Моя сетевушка  без проблем определилась системой.Чёт поздно уже… Продолжение следует……. ===================================================================На этом пока всё. Скоро будем копать дальше. В планах:1. Правильная настройка iptables.2. Настройка файл-сервера с разными уровнями доступа.3. Квотирование диска.4. Настройка контроллера домена.5. Настройка dhcp-сервера.6. Настройка прокси-сервера. И различных плюшек для него (статистика, баннерорезалка, антивирус, прозрачность).7. Настройка Asterisk (IP-телефония).8. Настройка LAMP (Linux, Apache, MySQL, PHP).


comments powered by Disqus