Автор Тема: Пошаговые инструкции для ALT Linux 4.0 Server  (Прочитано 96705 раз)

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Вам надоело клиентским машинах локальной сети присваивать IP  и шлюзы

Пошаговая инструкция восьмая: dhcp-server - The ISC DHCP server daemon

Устанавливаем ALT Linux 4.0 Server из коробки.

Шаг 1: ставим
# apt-get install dhcp-server

Шаг 2: правим  /etc/dhcp/dhcpd.conf    

ddns-update-style none;

subnet 10.0.0.0 netmask 255.255.255.0 {
        option routers                  10.0.0.1;
        option subnet-mask              255.255.255.0;

        option nis-domain               "domain.org";
        option domain-name              "domain.org";
        option domain-name-servers      195.54.2.1;

        range dynamic-bootp 10.0.0.128 10.0.0.250;

        host boss
        {
        hardware ethernet 00:1C:C0:45:27:14;
        fixed-address 10.0.0.2;
        }

        host pavel
        {
        hardware ethernet 00:1C:C0:45:28:2B;
        fixed-address 10.0.0.3;
        }

        default-lease-time 21600;
        max-lease-time 43200;
}

Шаг №3:Для того чтобы   dhcp-server запускался при перезагрузки сервера
# chkconfig --level 35 dhcpd  on

Шаг №4:
#service dhcpd restart

Теперь при включении любой клиентской машины с настройкой "получение ip  и dns  автоматически" будет присваиваться шлюз 10.0.0.1 , DNS 195.54.21 и адреса начиная с 10.0.0.250 по порядку включения до 128,
а машинам с сетвыми картами 00:1C:C0:45:27:14 - 10.0.0.2  и 00:1C:C0:45:28:2B -10.0.0.3
« Последнее редактирование: 16.10.2009 18:38:44 от Salomatin »
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Пошаговая инструкция девятая: Прозрачный прокси

Устанавливаем ALT Linux 4.0 Server из коробки.

Шаг №1:  Подгружаем
#apt-get install redirector

Шаг № 2:
в конфигурации squid
#
#Default:
# http_port 3128
#
# Squid normally listens to port 3128
http_port 3128 transparent  #т.е добавляем одно слово:  transparent

Шаг № 3: в этом же файле разрешить доступ локальной сети 10.0.0.0/24
acl net10 src 10.0.0.0/24  
http_access allow net10
 
Шаг №4:
#service squid restart

Шаг № 5: Командой
#iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
весь трафик, отправляемый на порт 80 перенаправляем на порт 3128
не забываем сохранить это правило, чтобы вступало в силу после загрузки
# iptables-save > /etc/sysconfig/iptables

Прозрачный прокси для клиентских машин локальной сети 10.0.0.0/24 ,  подключенных к сетевой карте eth1  и которым сервер является шлюзом. Авторизация юзеров при прозрачном прокси не работает.
« Последнее редактирование: 12.11.2009 07:09:39 от Salomatin »
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Пошаговая инструкция деcятая:  Basic аутентификация для squid

Устанавливаем ALT Linux 4.0 Server из коробки.

Шаг №1: Проверить чтобы сам squid стоял
# rpm -qa | grep squid
squid-common-2.6.STABLE13-alt1
squid-helpers-2.6.STABLE13-alt1
squid-2.6.STABLE13-alt1
squid-cachemgr-2.6.STABLE13-alt1
alterator-squid-0.2-alt9
squid-server-2.6.STABLE13-alt1
squid-helpers-perl-2.6.STABLE13-alt1

Шаг №2: зайти в /etc/squid/squid.conf

найти, раскомментировать и поправить:
(поправить строку auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd) 

auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm 10.48.5.203 server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off

также добавить строку acl control proxy_auth REQUIRED
сюда:

#Recommended minimum configuration:
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
....
бла-бла-бла
....
acl Safe_ports port 873         # rsync
acl Safe_ports port 901         # SWAT
acl CONNECT method CONNECT

acl control proxy_auth REQUIRED  # вставить сюда строку

Расзрешить доступ, где net10 – просто любое название группы
p1 и p2 тоже примеры

acl net10 src 10.0.0.0/24 
acl p1 proxy_auth vova
acl p2 proxy_auth pavel

http_access allow net10 p1 control
http_access allow net10 p2 control

Шаг №3: Создание файла паролей и добавление пользователей
# htpasswd -c /etc/squid/passwd vova (создание файла паролей с первым пользователем vova)
# htpasswd /etc/squid/passwd pavel (Добавление нового пользователя pavel)
(Небольшое уточнение в "офис сервере" стоит apache2 поэтому и команда и программа для создания файла с паролями выглядит по другому - htpasswd2 вместо htpasswd. )

Шаг № 4:
# service squid start (запустить прокси) или restart
# service squid reload (мягкий перезапуск)

Любой клиент локальной сети 10.0.0.0/24, у кого в настройках прописано - соединение через наш прокси порт 3128 - получит приглашение набрать входное имя , пароль и только после этого будет открывать web- страницы.
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Пошаговая инструкция одиннадцатая:  Server-info  и Server-status

Устанавливаем ALT Linux 4.0 Server из коробки

Шаг №1:
# apt-get install apache
# rpm -qa | grep apache
apache-common-1.3.33rusPL30.20-alt6
apache-1.3.33rusPL30.20-alt6
 
Шаг №2:
#cd /etc/httpd/conf
Раскоментировать в 
/etc/httpd/conf/httpd.conf
LoadModule info_module modules/mod_info.so
AddModule mod_info.c
в самый конец текста всего файла вставить строку 
Include /etc/httpd/conf/my.conf

Шаг №3: Создаем файл
#cat >>/etc/httpd/conf/my.conf
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from 127.0.0.1 localhost 10.0.0.0/24
</Location>
 
<Location /server-info>
SetHandler server-info
Order deny,allow
Deny from all
Allow from 127.0.0.1 localhost 10.0.0.0/24
</Location>
сохранить 
(ctrl+d)

Шаг №3: перезапустить apache
# service httpd restart

По адресам http://10.0.0.1/server-info и http://10.0.0.1/server-status смотрим полезную информацию о apache и его работе.
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн kon-dv

  • Завсегдатай
  • *
  • Сообщений: 722
    • Заметки учителя
    • Email
Пошаговая инструкция шестая: webalizer - Анализатор логов web/ftp/proxy-серверов

Вопрос такой, как заставить webalizer генерировать отчёты на русском?
« Последнее редактирование: 28.11.2008 12:21:21 от kon-dv »
Морфиус на меня обиделся...

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Вопрос такой, как заставить webalizer генерировать отчёты на русском?

Надеюсь проблем с установкой webalizer никаких не было? Он очень простой, поэтому и приведен.  Перевод не очень нужен. Если вы приглядитесь, то там рейтинги 10,( 30, 50) самых больших скаченных страниц, самых активных пользователей, сколько они скачали,  с их айпи и именами, если применена аутентификация. Количество выведенных в топ пользователей или популярных страниц легко изменить просто в конфиге, изменив цифру в названии топа, чтобы видеть кто качал и что качал.   

Если вам надо просто получить файл, что посещал клиент 10.0.0.32
#cat /var/log/squid/access.log | grep 10.0.0.32 >>11 # там будут адреса
#bzip2 -cd /var/log/squid/access.log.1.bz2 >>11 #добавит, если уже есть архив
#cat 11 | sort -k2 >>22 # отсортированные
#tail -1000 22 >>28 #1000 самых больших
 #cat 28 | perl -l -a -n -e '$F[0] = scalar localtime $F[0]; print "@F"' >>29 # с удобным форматом времени

webalizer мне самому не очень нравится, он хорош как учебный пример, но мне кажется не очень точный или я так и не научился им пользоваться. Хорошие русские счетчики netams  и awstats , но они чуть труднее ставятся и инструкции по ним у меня пока сыроваты. 

   
« Последнее редактирование: 27.11.2008 14:45:24 от Salomatin »
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн kon-dv

  • Завсегдатай
  • *
  • Сообщений: 722
    • Заметки учителя
    • Email
Да webalizer поднял почти без проблем, опыт уже был на ubuntu, просто на ubuntu всё по русски, а здесь не пойму где чего делать. Статистика ведётся по пользователям. Просто есть желание смотреть отчёт на русском.
Морфиус на меня обиделся...

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Пошаговая инструкция двеннадцатая:  netams

Устанавливаем ALT Linux 4.0 Server из коробки

Шаг №1:Ставим:
#apt-get install MySQL-server netams

Шаг №2: чтобы запускались при включении сервера
chkconfig --level 35 mysqld on
chkconfig --level 35 netams on

Шаг №3: правим  /etc/netams/netams.conf

после #services configuration

service scheduler
time 5min action "html"

новых пользователей заводим
unit user  name y61 ip 77.77.77.77 acct-policy ip www mail
unit user  name a254 ip 10.0.0.254 acct-policy ip www mail
unit user  name a253 ip 10.0.0.253 acct-policy ip www mail
unit user  name a252 ip 10.0.0.252 acct-policy ip www mail
так хоть всю подсеть
( тут много разных политик, умеет считать почти все, по любым портам)
это присвоит сама ---- oid 0C9EEB

там где сет.карты

service data-source 1
type libpcap
source eth0
rule 11 "ip"

если будет ppp0

service data-source 2
type libpcap
source ppp0
rule 11 "ip"

заменяем

path /var/www/html/stat

Шаг №4:
#service netams restart
#service mysqld restart

Шаг №5 netams вносит и схраняет изменения
#telnet localhost 20001
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

NeTAMS version 3.2.2 (build 2234.1) builder-at-opteron-dot-office-dot-altlinux-dot-ru / Mon Apr 11 16:58:48 MSD 2005
NeTAMS user login >admin
NeTAMS user admin password >123 (если не поменял, надо менять)

Welcome, Admin!

>save     # можно для проверки  show config
>html
>exit
Connection closed by foreign host.

Шаг № 6
Разрешаем  веб серверу cgi-script  .cgi .pl файлы
в конец /etc/httpd/conf/httpd.conf добавляем

AddHandler  cgi-script  .cgi .pl

<Directory /var/www/html/stat>

    Options     ExecCGI         Indexes
    DirectoryIndex index.html
</Directory>

перезапускаем apache

#service httpd restart

Работает.  Проверяем http://10.0.0.1/stat/

Читаем:

http://dox.sm.ukrtel.net/dox/netAMS/documentation-ru.html
http://www.netams.com/doc/32r_new.html#3.3.0

можно применять  netamsadmin , также надо правильно пользоваться MySQL-server, пароль 123 временный.


« Последнее редактирование: 21.02.2010 21:24:39 от Salomatin »
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
а здесь не пойму где чего делать. Статистика ведётся по пользователям. Просто есть желание смотреть отчёт на русском.

Поставьте в таком виде netams, будет работать, порт 3128 можно выделть в отдельную политику squid и будете видеть точный отчет.

А squid отчеты лучше сразу смотреть в логах, я показал где и как примерно их можно обрабатывать. А самом файле все по строкам, когда, с какого ip, какого размера и какой файл был перекачен.
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Пошаговая инструкция тринадцатая:  pptpd – сервер

Устанавливаем ALT Linux 4.0 Server из коробки

Шаг №1:Ставим pptpd - A PPTP server daemon
 # apt-get install pptpd

Шаг №2:
Удаляем  # rm /etc/pptpd.conf
создаём  # cat >>/etc/pptpd.conf
speed 115200
option /etc/ppp/options.pptpd
ppp /usr/sbin/pppd
localip 10.0.0.1
remoteip 10.0.0.200-210
сохранить  (ctrl+d)

Шаг № 3: Правим
# rm /etc/ppp/options.pptpd
# cat >>/etc/ppp/options.pptpd
debug
name router
require-chap
login
ms-dns 10.0.0.1
proxyarp
10.0.0.1:
сохранить  (ctrl+d)

Шаг №4: Заводим клиента, дописываем в конец файла
 # cat >>/etc/ppp/chap-secrets
vova * parol *
сохранить  (ctrl+d)

Шаг №5:Чтобы запускался сам при включении:
проверяем # chkconfig --list pptpd
pptpd           0:off   1:off   2:off   3:off   4:off   5:off   6:off
включаем # chkconfig --level 35 pptpd on
проверяем # chkconfig --list pptpd
pptpd           0:off   1:off   2:off   3:on    4:off    5:on    6:off

IШаг № 6: Запускаем сам сервер
# service pptpd restart

На любом в инете виндовой машине, стандартно создаете VPN соединение, без шифрования - на внешний адрес сервера. имя - vova пароль - parol 
Убедитесь, что ваш сервер имеет доступ  по порту:
1723/tcp open  pptp
Заходите,  сервер  присвоил ip 10.0.0.200  и видите свою локальную сеть 10.0.0.0/24 


Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Пошаговая инструкция четырнадцатая:  pptp-client

Смотри:
http://forum.altlinux.org/index.php/topic,964.0.html
« Последнее редактирование: 01.12.2008 14:40:52 от Salomatin »
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Alexei_VM

  • Гость
Пошаговая инструкция четырнадцатая:  pptp-client

Опять идеологически неверная инструкция! Настройка pptp-клиента ИМХО должна осуществляться через etcnet. Потому что это официально рекомендованная система настройки сети в АЛЬТ, к тому же Альтератор (которым пользуются пользователи) работает именно через нее. А сейчас набежит толпа юзеров, покорежит себе конфиги согласно этой инструкции, что потом чрезвычайно усложнит традиционный для форума аборт по телефону.

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Опять идеологически неверная инструкция!
Я эту инструкцию писал на основании штатного приложения к ALT Linux 4.0 Server  /usr/share/doc/pptp-client-1.7.0 
Это всего лишь форум .
Не возражаю. Удалить?
Давайте вместе напишем верную.
Для  ALT Linux 4.0 Server я через Альтератор не сумел.
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

Alexei_VM

  • Гость
Я эту инструкцию писал на основании штатного приложения к ALT Linux 4.0 Server  /usr/share/doc/pptp-client-1.7.0 

Никакого отношения к АЛЬТ содержимое /usr/share/doc/pptp-client-1.7.0 не имеет. Это стандартная документация от программы, не адаптированная под наши условия.

Это всего лишь форум .
Именно. Поэтому тут полно нифига не понимающих новичков, которых инструкция может смутить.

Давайте вместе напишем верную.
www.altlinux.org/Etcnet
там написано. Весьма вероятно, что не самым понятным языком, и не очень подробно. Зато там wiki, и все проблемы легко устранить :)

Для  ALT Linux 4.0 Server я через Альтератор не сумел.
Там вроде баги какие-то была.

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Пошаговая инструкция четырнадцатая:  pptp-client

Рассмотрим случай, когда мы имеем дело с солидным провайдером, который дает диск, вставив его в винде  настраивается все автоматически. На какие-либо дополнительные вопросы  техническая поддержка отвечать не желает, особенно, если упоминаешь слово Линукс, в лучшем случае отправляя к инструкциям на своей домашней странице.     

Привожу свой пример, как у меня заработало. Чтобы не было вопросов где писать с большой буквы или ставить кавычки берем конкретный пример. Итак я получил от провайдера:
Логин: vova174
пароль: aaaWWW111
VPN-сервера: vpn.chelcom.ru
Все манипуляции мы будем проводить на имеющейся под рукой домашней сети is74.ru. 
 
Самое разумное проверить вначале провайдера, действительно ли устанавливается связь, работает ли логин и пароль, сделав все в видновой машине, так по крайней мере,  легче будет с тех поддержкой общаться.

Хорошо бы знать еще о  об используемом протоколе аутентификации и о наличии шифрования траффика, но солидные провайдеры редко используют что-то экзотическое и это вряд ли повлияет на настройки.

Устанавливая ALT на свой компьютер мы в настройках поставили «использовать DHCP» и подключившись к сети провайдера увидели его локальную сеть, видим его домашний сайт, можем входить в личный кабинет, где менять свой пароль и смотреть статистику. А также пользоваться другими внутренними ресурсами провайдера не устанавливая VPN — соединение.   

Какую дополнительную информацию мы можем узнать?
#ip a s
4: eth0: <BROADCAST,MULTICAST,NOTRAILERS,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether 00:16:d3:41:3c:a8 brd ff:ff:ff:ff:ff:ff
    inet 10.49.94.43/22 brd 10.49.95.255 scope global eth0
нам присвоен адрес  10.49.94.43/22, но это нас мало интересует, после каждой перезагрузки он меняется.
#ip r s
10.49.92.0/22 dev eth0  proto kernel  scope link  src 10.49.94.43
default via 10.49.92.1 dev eth0
наш шлюз   10.49.92.1  - вот это интересно.  Это  мы будем использовать в настройках. Шлюз провайдер меняет редко, но бывает. Поэтому, если мы со временем не можем установить туннель, нужно будет проверять, изменил ли провайдер шлюз в нашей локальной сети и внести изменения.


Бывает идеальный вариант, когда VPN сервер провайдера представлен в единственном числе и имеет один IP. В этом случае именем хоста (vpn.chelcom.ru) можно пренебречь и использовать в настройках только его IP. Однако если провайдер большой, под именем VPN сервера скрывается несколько серверов с разными IP, что позволяет провайдеру динамически регулировать нагрузку на них, останавливать часть серверов на профилактику.
Для того, чтобы выяснить, какие IP имеет хост vpn.chelcom.ru, воспользуемся командой host
$ host vpn.chelcom.ru
vpn.chelcom.ru has address 78.29.3.16
vpn.chelcom.ru has address 78.29.3.1
vpn.chelcom.ru has address 78.29.3.2
vpn.chelcom.ru has address 78.29.3.3
vpn.chelcom.ru has address 78.29.3.4
vpn.chelcom.ru has address 78.29.3.5
vpn.chelcom.ru has address 78.29.3.12
vpn.chelcom.ru has address 78.29.3.13
vpn.chelcom.ru has address 78.29.3.14

Все, можно приступать к настройкам.

Шаг № 1: Ставим:
#apt-get install pptp-client

Шаг №2:
создаем файл
#cat>>/etc/net/ifaces/eth0/ipv4route
78.29.3.0/24 via 10.49.92.1
Эта сеть провайдера и чтобы не писать много строк, и  если провайдер добавит сервера. Иначе надо будет описывать каждый IP — адрес
78.29.3.1 via 10.49.92.1

что тоже правильно, но может быть сбой соединения, если провайдер добавит новый VPN -сервер, а в вашем списке его не будет и пакеты не будут направляться на шлюз.
не забываем
#service network restart

Шаг №3: Копируем готовое решение и создаем новый интерфейс
#cp -r /usr/share/doc/etcnet-0.9.7/examples/PPP/ifaces/ppp0 /etc/net/ifaces/ppp0

Правим /etc/net/ifaces/ppp0/options
PPPTYPE=pptp
PPTP_SERVER=vpn.chelcom.ru
и  /etc/net/ifaces/ppp0/pppoptions
user vova174
password aaaWWW111
noipdefault
defaultroute
noauth
receive-all

Шаг №4:
Запускаем командой
#ifup ppp0
остановить
#ifdown ppp0

Если у вас настольный компьютер, то как минимум для теста 
#ping 213.180.204.8  пройти должен.
 
но если у вас сервер — то  как говорят «Это еще не все». Есть два момента, с которыми я столкнулся:
Мой сервер пропал внутри локальной сети провайдера, так как изменился шлюз.
 был #default via 10.49.92.1 dev eth0
стал #default via ppp0  — это нормально.
Но я же хочу, чтобы мои друзья видели мой сервер внутри локальной сети, к которой они подключены и могли пользоваться им, как минимум для почты и прокси. Поэтому в файл
 etc/net/ifaces/eth0/ipv4route
помимо строчки 78.29.3.0/24 via 10.49.92.1 я вставил
10.0.0.0/8 via 10.49.92.1 , теперь сервер доступен.
 
И второй момент:
Мой провайдер использует два вида DNS.  Клиент DHCP при подключении получает два DNS 78.29.2.21 и 78.29.2.22. Но они знают только внутренние адреса и ничего не знают о mail.ru и ya.ru . Так провайдер защищает себя, чтобы не пользовались их серверами без VPN -соединения. И уже в туннеле для меня работают 83.142.161.17 и 83.142.161.19.
Более того, я столкнулся с тем, что эти DNS отказываются обслуживать запросы моего прокси.
Поэтому есть смысл запустить bind в режиме ретранслятора. http://forum.altlinux.org/index.php/topic,964.msg14599.html#msg14599 где в строку forwarders записать все известные DHS провайдера, начиная с тех, которые работают при туннели
forwarders {83.142.161.17; 83.142.161.19; 78.29.2.21; 78.29.2.22; };
а в
 listen-on {127.0.0.1; };
и bind сам с ними разберется.
А в клиенте DHCP просто не получаю DNS
в /etc/net/ifaces/eth0/options  применяю аргумент "R"  - DHCP_ARGS="-R"
« Последнее редактирование: 02.12.2008 07:50:42 от Salomatin »
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"