Автор Тема: Практика настройки домашнего/офисного сервера на Debian 6 Squeeze.  (Прочитано 4994 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Leo

  • Старожил
  • ****
  • Topic Author
  • Сообщений: 843
  • Jabber: leo.bs@jabber.ru
Примечание: данная статья - авторский опыт. Буду благодарен за конструктивные комментарии.

Имеем:
Комп не первой свежести, старый моник, клаву, мышь, Switch D-Link DES-1008D (обычный хаб), Мегафон модем Е352, который не заводится под шестой Дебиан, и несколько компов с linux/windows системами.

Задача:
Поднять сервер с подключением к инету через ОпСоСа и раздать его в локальную сеть. На сервере сделать samba-файлопомойку. В сети будут использоваться статичные ip-адреса, поэтому dhcp нам не понадобится.

Поехали...
Первым делом я установил Debian 6 Squeeze с рабочим столом lxde, разбивку разделов сделал примерно следующую (точно не помню):
/boot - ~300 mB
swap - ~2 Gb
/ - остальное
При инсталляции, как обычно, был создан один единственный пользователь.
Посде загрузки подключил репозиторий бэкпортов и обновил usb-modeswitch до версии 1.2.3, ибо более ранняя не поддерживает usb-модем E352.
В lxde настроил автоматический вход в систему через того самого, единственного пользователя (Меню - Параметры - Окно входа в систему вкладка Безопастность), в биосе настроил загрузку по умолчанию на определенное время (на утро) + восстановление исходного состояния при потере питания.
Установил wvdial со всеми необходимыми зависимостями, сгенерировал новый конфиг с помощью команды wvdialconf, затем отредактировал его (nano /etc/wvdial.conf) вот до такого состояния:
[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Auto Reconnect = on
Dial Command = ATM1L3DT
Dial Attempts = 0
Modem Type = USB Modem
Phone = *99#
ISDN = 0
Password = gdata
Stupid Mode = 1
New PPPD = yes
Username = gdata
Modem = /dev/ttyUSB0
Baud = 460800
Файл (nano /etc/network/interfaces) у меня выглядит вот так:
# Theloopback network interface
auto lo
iface lo inet loopback
Т.е. интерфейс eth0 не поднимается штатными стредствами, он поднимается из скрипта после поднятия ppp0 интерфейса. eth0 поднять перед ppp0 нельзя, т.к. на момент запуска будет существовать стандартный маршрут для eth0, а не PPP. Демон ppp не удаляет стандартный маршрут eth0 при старте, если тот уже был поднят.
Для осуществления автозапуска wvdial при загрузке был создан скрипт /etc/init.d/wvdial следующего содержания:
Spoiler: ShowHide

#! /bin/sh
### BEGIN INIT INFO
# Required-Start:
# Required-Stop:
# Default-Start:
# Default-Stop:
# Provides:          wvdial
# Short-Description: wvdial boot-script
# Description:       This script establish ppp-connection via wvdial
### END INIT INFO

# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/usr/bin
DESC="wvdial connection"
NAME=wvdial
DAEMON=/usr/bin/$NAME
DAEMON_ARGS="--options args"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0

case "$1" in
  start)
   /usr/bin/wvdial > /dev/null 2>&1 &
   ;;
  stop)
   killall wvdial
   killall pppd
   ;;
  *)
   echo "Usage: $SCRIPTNAME {start|stop}" >&2
   exit 3
   ;;
esac

:

Далее добавляем скрипт в автозапуск:
update-rc.d wvdial start 2 stop 0 1 6
Причём использование sysv-rc-conf у меня почему-то не привело к желаемому результату, как и ln -s ...
Далее я подредактировал скрипт /etc/ppp/ip-up, добавив в его конец реакцию на поднятие подключения по интерфейсу ppp0:
# Up eth0 interface if ppp0 enabled
ifconfig eth0 up 192.168.0.1

# Adding MASQUERADE
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
А также скрипт /etc/ppp/ip-down, добавив реакцию на завершение/обрыв связи по ppp0:
# Down eth0 interface if ppp0 disable
ifconfig eth0 down
Может быть у кого-то есть более изящное решение этой проблемы...
В заключение добавил в конец файла /etc/crontab следующие строки, отвечающие за выключение компьютера в определенное время в определенные дни недели:
# server1 only commands
00 18   * * 1-5 root    shutdown -h now
30 8    * * 0,6 root    shutdown -h now
Samba-сервер поднимается сам после установки. Для администрирования установил интерфейс gadmin-samba и расшарил через него папку, без паролей.
Остаётся настроить iptables и т.д.
Интересно ваше мнение и опыт по поводу всего вышеизложенного.

p.s.: после настройки прошла неделя - полёт нормальный
« Последнее редактирование: 18 Июль 2012, 18:50:48 от Leo »
 


Оффлайн rayanAyar

  • Старожил
  • ****
  • Сообщений: 538
  • Jabber: rayanAyar@jabber.ru
samba и расшарил через него папку, без паролей.
Остаётся настроить iptables
Samba без пароля, не прикрытая iptables... Надеюсь личных файлов там нет. А если соседи по модемам удалят какие-то файлы в шаре или виря подкинут это не страшно, это мелочи жизни. :)
 

Оффлайн Leo

  • Старожил
  • ****
  • Topic Author
  • Сообщений: 843
  • Jabber: leo.bs@jabber.ru
это не страшно, это мелочи жизни. :)
я над этим работаю ;) вчера ssh прикрутил, сегодня буду через него iptables настраивать :) ssh уже с паролем! ;D
просто прямого постоянного доступа к компу нет вот и приходится каждый вечер после работы по чайной ложке... )))
« Последнее редактирование: 19 Июль 2012, 09:29:03 от Leo »
 

Оффлайн Василий

  • Местный житель
  • ***
  • Сообщений: 137
        Всё, что ни происходит, всегда так, как нужно и только к лучшему.
 

Оффлайн Leo

  • Старожил
  • ****
  • Topic Author
  • Сообщений: 843
  • Jabber: leo.bs@jabber.ru
eth0 не поднимается штатными стредствами, он поднимается из скрипта после поднятия ppp0 интерфейса. eth0 поднять перед ppp0 нельзя, т.к. на момент запуска будет существовать стандартный маршрут для eth0, а не PPP. Демон ppp не удаляет стандартный маршрут eth0 при старте, если тот уже был поднят.
Может быть кто-нибудь подскажет как корректно автоматически переподключаться к инету без косяков с локальным интерфейсом в случае если этот самый инет отвалился? Конечно самый банальный метод - использовать для этого /etc/ppp/ip-down... буду пробовать - пока не нашёл реального решения.
« Последнее редактирование: 20 Июль 2012, 23:57:39 от Leo »
 

Оффлайн Leo

  • Старожил
  • ****
  • Topic Author
  • Сообщений: 843
  • Jabber: leo.bs@jabber.ru
Проблему с обрывом связи решил так: контролирую пинг в скрипте - если пинга на внешние сервера нет - программно перезагружаю сервер. Работает без вмешательств с момента настройки (см. дату первого поста) - проблем с компом нет, единственная проблема - когда у оператора сот. связи нет интернета - у нас тоже нет. Думаю теперь рассмотреть вариант с двумя модемами разных операторов :)

Оффлайн gardarea51

  • Старожил
  • ****
  • Сообщений: 767
  • Jabber: gard.area51@jabber.ru
Я бы тоже хотел написать нечто подобное о том, как сделано у меня. Но когда думаю сколько писать - мне сразу становится лень. Автор молодец, что начал.
 

Оффлайн ogost

  • Главный модератор
  • Ветеран
  • *****
  • Сообщений: 3147
  • Linux Registered User #547151
автор безусловно молодец. а мне наоборот про домашний "сервак" и писать то неинтересно - старый полудохлый ноут, локалку ловит через старый же PCMCIA вайфай карточку, проводом воткнут в телек. поднят minidlna и поставлена торрентокачалка с вебмордой. настроен нат, чтобы с телека можно было в эти ваши фэйсбуки заходить и онлайн радио слушать. всё. настроилось всё с полпинка. скучно даже как-то.

Оффлайн Leo

  • Старожил
  • ****
  • Topic Author
  • Сообщений: 843
  • Jabber: leo.bs@jabber.ru
Но когда думаю сколько писать - мне сразу становится лень.
просто время идёт... забывается что куда засунуто было - сегодня понадобилось припомнить чё куда писал, думаю в этот же комп (сервак) ещё одну локальную плату поставить, рядом ещё комп подключить к нему - поднял эту ветку на форуме - вспомнил что делал... самому же помогает эта писанина...

Оффлайн BULATUS

  • Администратор
  • Ветеран
  • *****
  • Сообщений: 2061
Я бы тоже хотел написать нечто подобное о том, как сделано у меня. Но когда думаю сколько писать - мне сразу становится лень. Автор молодец, что начал.
как вариант начать писать на черновике, в день по строчке или по пять  :) к концу месяца может и тема родится...  :)

а мне наоборот про домашний "сервак" и писать то неинтересно - старый полудохлый ноут
Истории успеха очень интересные темы  :)

Оффлайн ogost

  • Главный модератор
  • Ветеран
  • *****
  • Сообщений: 3147
  • Linux Registered User #547151
Истории успеха очень интересные темы
ну дык я ж уже написал - всего 2 строчки получилось  ;D

Теги:
 

Практика использования Debian.

Автор Leo

Ответов: 27
Просмотров: 4344
Последний ответ 10 Ноябрь 2012, 02:42:24
от PbI6A