IPB

Здравствуйте, гость ( Вход | Регистрация )

 Forum Rules ПРАВИЛА ФОРУМА. ЧИТАТЬ ВСЕМ !
> Установка FreeBSD, По шагам, личный опыт.
SergeyKa
7.08.2003 - 13:21
Сообщение #1



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Сразу оговорюсь. Целью данной темы не является описать все возможные пути установок Фрии, в конкретном случае пишу только свой личный путь и не буду повторять что и без того изобилует в интернете.

Итак - С чего начать установку?

1) В первую очередь необходимо определится с какого источника будем брать дистрибутив.

Идем самым ресурсоемким путем - качаем образ с интернета :) (для жителей крайнего севера)
ftp://ftp1.ru.freebsd.org/
ftp://ftp2.ru.freebsd.org/
ftp://ftp3.ru.freebsd.org/
ftp://ftp4.ru.freebsd.org/

Качаем 4.8 Release (почему именно он - уже обсуждалось в других темах)
/pub/FreeBSD/ISO-IMAGES-i386/4.8/4.8-RELEASE-i386-disc1.iso
Забираю только первый диск (с моим ограничением по трафику нехватало еще второй забрать для того чтобы меня с работы выгнали :D )

Первого диска достаточно для того чтобы поставить полноценную систему. На втором диске содержатся дополнительные порты, которые в дальнейшем можно будет скачать непосредственно из дерева портов (порт - это программа, типа MS Office или CorelDRW в случае MS Windows).
С помощью программы Alcohol 120% записываем диск.

Беглый осмотр диска показывает, что от версии к версии колличество портов помещающихся на первом диске сокращается и как правило там нет ничего что бы могло пригодится.

2) Преследуемые цели:

Необходимые на сервере службы:
1. NAT
2.Firewall (на безе встроенного ipfw)
3. Почта для домена (sendmail)
4. Сервер HTTP (apache)
5. FTP доступ (ftpd)
6. Доступ к разделу Share для Windows клиентов а так же печать одного из сетевых принтеров (samba)
7. DNS primary для домена.

Исходные данные (реальные адреса изменены из соображения конфеденциальности):
1. IP Адрес сервера во внутренюю сеть 192.168.10.1
2. IP Адрес интерфейса в интернет (выдается провайдером) 195.195.95.5
3. IP Адрес шлюза (выдается провайдером) 195.195.95.100
4. IP Адрес DNS1, DNS2 (выдается провайдером) 195.195.95.50, 195.190.90.9
5. Доменное имя сервера myd.ru

3) Подготавливаем компьютер. Чем проще будет конфигурация - тем лучше.
Мне нравится черно-белая консоль, а по этому ни каких X-Win, никакой графики, а значит видеокарта любая самая простая S3 Trio 8Mb. Процессор в зависимости от поставленных задач и работающих процессов. Мне достался Intel P2 266 (тоже неплохо), для минимальных целей хватило бы 486 машинки. Памяти (оперативной) чем больше тем лучше поставил 256 думаю хватит пока :) , Жесткий диск 20Gb будет использоватся на 50%. Мышь не нужна (мне :) )

.... продолжение следует .... в субботу возму чистый винт 20Gb и ....
User is offlineProfile Card PM
Go to the top of the page
+
 
Reply to this topicStart new topic
Ответов(1 - 11)
SergeyKa
9.08.2003 - 12:08
Сообщение #2



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Итак. Приступаем к установке.
1) Устанавливаем загрузочный диск FreeBSD 4.8 Release
Загружаемся до менюшки из трех пунктов. Если железо выбрано самое элементарное, то используем 1 Skip kernel configuration and continue with installation пункт меню все драйверы подцепятся автоматически. (Особенно важен драйвер сетевой карты, чтобы на этапе установки прописать настройки сети, можно конечно потом, но для начала так удобнее у меня Realtek 10/100).

2) По окончанию всех инициализаций перед вами появится цветное меню из которого мы выбираем 2 пункт Standard для инсталяции в полном режиме со всеми предупреждениями и вопросами.

3) Если диск чистый на предложение создать слайс нажимаем "A" = Use Enter Disk затем "Q" = Finish. Этим самым указав инсталяции использовать весь диск для FreeBSD

4) Далее предлагается создать БУт менеджер или отказатся от него - мы отказываемся - у нас один диск весь под ФРЮ 2 пункт меню Standard

5) Следующий этап самый ответственный - создание разделов на диске - просто создавайте в зависимости от найденых рекомендаций. Если у кого то возникнет возражение по поводу оптимальности моего способа создания разделов пусть пишет свою статью :D Ну а для сомневающихся всегда есть кнопка "A" - Автоматически создать разделы :D.
Немного помучаясь вы должны получить такую табличку (128Mb надо писать при вводе - "128Mb"):

part Mount Size Newfs
ad1s1a / 128Mb UFS N
ad1s1b swap 1000Mb SWAP
ad1s1e /var 3000Mb UFS+S N
ad1s1f /tmp 1000Mb UFS+S N
ad1s1g /usr 7000Mb UFS+S N
ad1s1h /arhive 6964Mb UFS+S N

Последний раздел будем использовать для Samba чтобы второй сервер мог писать туда свои архивы :) и скрипты могли передавать информацию для бухгалтерии.

"Q" - Finish

6) Пункт Choose Distributions предлагает выбрать а что же мы будем копировать на винт в ходе установки - копируем всё кроме Х-ов - 4 - Developer -
для продолжения - 1 - Exit

7) Указываем источник для инсталяции CD/DVD
User is offlineProfile Card PM
Go to the top of the page
+
SergeyKa
9.08.2003 - 14:52
Сообщение #3



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




после непродолжительного копирования на хард.....
Кстати все что начинается с этого поста можно пропустить и настроить вручную через конфиги, но уж раз пошли этим путем - доустановим...

8) Ethernet or PPP
Выбираем свою(и) сетевую(ые) карту(ы) - в нашем случае это rl0 и rl1 (модем настроим потом)
Для rl0 (внешний интерфейс)
host - bsd (потом автоматом допишется доменный суффикс)
domain - myd.ru
IPv4 Gateway - 195.195.95.100
Name Server - 195.195.95.50
IPv4 adress - 195.195.95.5
NetMask - 255.255.255.0 (выдается провайдером вместе с IP)

Для rl1 (в локальную сеть)
Первые четыре пункта должны быть уже заполнены как в предидущем случае
IPv4 adress - 192.168.10.1
NetMask - 255.255.255.0

9) поднимать карту при запуске - ДА

10) Использовать данную машину как Gateway - ДА

11) Хотите подредактировать inetd.conf - NO

12) Хотите анонимный доступ по FTP? - Нет

13) Сконфигурировать машину как NFS server? - NO

14) Сконфигурировать машину как NFS client? - NO

15) Повысить уровень встроенной защиты? - НЕТ

16) Установки системной консоли - НЕТ

17) Установки тайм зоны - ДА
Предлагается на выбор изменить время таймера в ЦМОС или делать поправки соответственно установленной зоны - мне нравится второе (NO)
8 - Europa, 33 - Russian Federation, 2 - +00

18) Conformation -> MSD -> YES

19) Потдержка совместимости с линкс приложениями - абсолютно всеравно - я таких приложений не использую - NO

20) Система имеет мышь не USB ? - NO

21) Установка портов - на данном этапе не требуется - сразу жмем кнопку Install на вопрос - "так ничего же не выбрано???" - отвечаем ОК

22) Отказываемся от USB (если конечно не планируем использовать)

23) Отказываемся от редактирования групп и пользователей (потом...)
Как оказалось впоследствии лучше на этом этапе создать хотя бы одного пользователя, у меня почему то в пост инсталяции не создала ярлык в корне /home ссылающийся на /usr/home, а залепила в корневой раздел папку home что неправельно.... как создавать пользователей и группы - смотрите ниже.

24) Пароль рута вводим сейчас - не помешает сразу ввести, потому как после перезагрузки машина станет сразу видна в интернете.

25) менять еще что нибудь дополнительно - хватит уже - остальное потом.

PS: Если по дороге вы где то ошиблись - не надо судорожно нажимать reset - все настройки есть в Configure через комманду /stand/sysinstall :)

26) Exit install

27) Reboot (не забудте достать CD)

После перезагрузки первое что делаем - пингуем все извесные адреса
ping 195.195.95.100
закончить пинг Ctrl-C
User is offlineProfile Card PM
Go to the top of the page
+
SergeyKa
9.08.2003 - 15:21
Сообщение #4



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Тем кому библиотека LWP для Perl не нужна можно опустить этот этап...

cd /usr/ports/www/p5-libwww
make all
make install
User is offlineProfile Card PM
Go to the top of the page
+
SergeyKa
9.08.2003 - 16:33
Сообщение #5



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Для полноценной работы сервера предлагается ряд вспомогательных этапов

1) Заполним файлы hosts на всех компьютерах локальной сети информацией о соответствии статических адресов ИП их именам в домене:

127.0.0.1 localhost
192.168.10.1 bsd.myd.ru bsd
192.168.10.1 bsd.myd.ru.
192.168.10.2 petya
192.168.10.3 kolya

Во FreeBSD файл должен находится в /etc
Windows98 - c:\windows
Win2K - c:\windows\system32\drivers\etc
(был один прикольный трабл - создал файл хост на Виндовой машине и записал его по ФТП на сервер БСД - через какое то время почта с моего домена перестала проходить через провайдера hot.ee - как оказалось в конце каждого имени в файле хостс стоял управляющий символ перевода строки ^M а эстонцы рассматривали мои письма как спам и отбрасывали без предупреждения - будте внимательны!!!)

2) Теперь возможно подключение к серверу из локальной сети - ftp, telnet... Рекомендую выполнить несложную настройку удаленных сервисов по SSH, описанную в этой теме.

Если же вы хотите использовать стандартные сервисы:
ee /etc/inetd.conf
Разкоментировать строчки ftp, telnet (tcp6 не трогать)
User is offlineProfile Card PM
Go to the top of the page
+
SergeyKa
12.08.2003 - 17:53
Сообщение #6



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Пересобираем ядро.
Первый раз этот этап напоминает головоломку - даже при внимательном изучении обильной инфы на эту тему голова идет кругом. Многие вещи не понятны до конца даже гуру, но при определенных мучениях понимаешь, что много не мало и на каждую машину (железо) находится свой компромис.

Приведу ссылку на эту тему и не буду долго останавливатся на вопросе выбора нужных строк конфигурации ядра.
http://www.opennet.ru/docs/BSD/pascal/index.html

Собственно - /usr/src/sys/i386/conf/myd1
Цитата
machine  i386
cpu  I586_CPU
cpu  I686_CPU
ident  myd1
maxusers 512
options  MATH_EMULATE  #Support for x87 emulation
options  INET   #InterNETworking
options  FFS   #Berkeley Fast Filesystem
options  FFS_ROOT  #FFS usable as root device [keep this!]
options  SOFTUPDATES  #Enable FFS soft updates support
options  MFS   #Memory Filesystem
options  MD_ROOT   #MD is a potential root device
options  NFS   #Network Filesystem
options  NFS_ROOT  #NFS usable as root device, NFS required
options  MSDOSFS   #MSDOS Filesystem
options  CD9660   #ISO 9660 Filesystem
options  CD9660_ROOT  #CD-ROM usable as root, CD9660 required
options  PROCFS   #Process filesystem
options  COMPAT_43  #Compatible with BSD 4.3 [KEEP THIS!]
options  SCSI_DELAY=15000 #Delay (in ms) before probing SCSI
options  UCONSOLE  #Allow users to grab the console
options  USERCONFIG  #boot -c editor
options  VISUAL_USERCONFIG #visual boot -c editor
options  KTRACE   #ktrace(1) support
options  SYSVSHM   #SYSV-style shared memory
options  SYSVMSG   #SYSV-style message queues
options  SYSVSEM   #SYSV-style semaphores
options  P1003_1B  #Posix P1003_1B real-time extensions
options  _KPOSIX_PRIORITY_SCHEDULING
options  ICMP_BANDLIM  #Rate limit bad replies
options  KBD_INSTALL_CDEV # install a CDEV entry in /dev
options         IPFILTER
options         IPFILTER_LOG
options         IPFIREWALL
options         IPFIREWALL_VERBOSE
options         IPFIREWALL_VERBOSE_LIMIT=10
options  IPDIVERT  #divert sockets
options         TCP_DROP_SYNFIN
device  isa
device  eisa
device  pci
device  fdc0 at isa? port IO_FD1 irq 6 drq 2
device  fd0 at fdc0 drive 0
device  fd1 at fdc0 drive 1
device  ata0 at isa? port IO_WD1 irq 14
device  ata1 at isa? port IO_WD2 irq 15
device  ata
device  atadisk   # ATA disk drives
device  atapicd   # ATAPI CDROM drives
device  atapifd   # ATAPI floppy drives
device  atapist   # ATAPI tape drives
options  ATA_STATIC_ID  #Static device numbering
device  adv0 at isa?
device  adw
device  bt0 at isa?
device  aha0 at isa?
device  aic0 at isa?
device  ncv  # NCR 53C500
device  nsp  # Workbit Ninja SCSI-3
device  stg  # TMC 18C30/18C50
device  scbus  # SCSI bus (required)
device  atkbdc0 at isa? port IO_KBD
device  atkbd0 at atkbdc? irq 1 flags 0x1
device  psm0 at atkbdc? irq 12
device  vga0 at isa?
pseudo-device splash
device  sc0 at isa? flags 0x100
device  npx0 at nexus? port IO_NPX irq 13
device  apm0    at nexus? disable flags 0x20 # Advanced Power Management
device  sio0 at isa? port IO_COM1 flags 0x10 irq 4
device  sio1 at isa? port IO_COM2 irq 3
device  sio2 at isa? port IO_COM3 irq 5
device  sio3 at isa? disable port IO_COM4 irq 9
device  ppc0 at isa? irq 7
device  ppbus  # Parallel port bus (required)
device  lpt  # Printer
device  plip  # TCP/IP over parallel
device  ppi  # Parallel port interface device
device  miibus  # MII bus support
device  rl  # RealTek 8129/8139
device  ed0 at isa? port 0x280 irq 10 iomem 0xd8000
device  ie0 at isa? port 0x300 irq 10 iomem 0xd0000
device  lnc0 at isa? port 0x280 irq 10 drq 0
device  cs0 at isa? port 0x300
device  sn0 at isa? port 0x300 irq 10
pseudo-device loop  # Network loopback
pseudo-device ether  # Ethernet support
pseudo-device sl 1 # Kernel SLIP
pseudo-device ppp 1 # Kernel PPP
pseudo-device tun  # Packet tunnel.
pseudo-device pty  # Pseudo-ttys (telnet etc)
pseudo-device md  # Memory "disks"
pseudo-device gif  # IPv6 and IPv4 tunneling
pseudo-device faith 1 # IPv6-to-IPv4 relaying (translation)
pseudo-device bpf  #Berkeley packet filter
device  uhci  # UHCI PCI->USB interface
device  ohci  # OHCI PCI->USB interface
device  usb  # USB Bus (required)

Теперь пересборка.
cd /usr/src/sys/i386/conf
config myd1
cd /usr/src/sys/compile/myd1
make depend
make all
Эта процедура занимает много времени .....
make install
Она переименует старое ядро в kernel.old и поместит
в корневую директорию ваш новый kernel.
После этого можно (и нужно) перегрузить компьютер.
Если загрузка нового ядра не получилась (такое тоже
возможно), вы можете загрузится со старым ядром. Для этого, в начале загрузки на подсказку Boot: надо быстро сказать kernel.old

Не забывайте, что после запуска с новым ядром по умолчанию файрвол блокирует все запросы. Для удаленного доступа к системе можно временно набрать в командной строке
ipfw add pass all from any to any
User is offlineProfile Card PM
Go to the top of the page
+
SergeyKa
13.08.2003 - 17:14
Сообщение #7



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Один из сложных моментов настройки - создание правил файрвола. Рекомендую изучить статью Кузмича => http://www.hub.ru/modules.php?name=Section...artid=24&page=4=>http://www.hub.ru/modules.php?name=Sections&sop=viewarticle&artid=24&page=4 только не надо копировать правила которые написаны для примера. Эта статья хороша своими обьяснениями работы ключей и пр.
Писать постоянные правила файрвол нужно только при полном понимании работы ipfw в противном случае или что то не будет работать (чаще всего) или хакеры через день сломают вашу машину.

Итак рабочие файлы файрвола и нат
rc.conf
Цитата
defaultrouter="195.195.95.100"
gateway_enable="YES"
hostname="bsd.myd.ru"
ifconfig_rl0="inet 195.195.95.5 netmask 255.255.255.224"
ifconfig_rl1="inet 192.168.10.1 netmask 255.255.255.0"
inetd_enable="YES"
kern_securelevel_enable="NO"
lpd_enable="YES"
nfs_reserved_port_only="YES"
sendmail_enable="YES"
sshd_enable="YES"
# Секцию ниже можно убрать если DNS для зоны еще не настроен
named_enable="YES" 
named_program="named" 
named_flags="-u bind -g bind"
#
ipnat_enable="YES"
ipnat_program="/sbin/ipnat -CF -f"
ipnat_rules="/etc/ipnat.rules"
ipnat_flags=""
firewall_enable="YES"
firewall_script="/etc/rc.firewall" 

rc.firewall
Цитата
#
# IPFW RULES
# /etc/ipfw.rules
#

fwcmd="/sbin/ipfw"

LanOut="rl0"
IPOut="195.195.95.5"
NetOut="27"
MaskOut="255.255.255.224"

LanIn="rl1"
IPIn="192.168.10.1"
NetInIP="192.168.10.0"
NetInMask="24"
MaskIn="255.255.255.0"

MyIP1="192.168.10.97"
MyIP2="192.168.10.98"
MyIP3="192.168.10.99"

dns1="192.168.10.1"
dns2="195.195.95.50"
dns3="195.190.90.9"

${fwcmd} -q -f flush

#
${fwcmd} -q add pass all from any to any via lo0
${fwcmd} -q add pass all from any to any via ppp0

# Пропускаем все соединения с установленным битом RST или ACK
${fwcmd} -q add pass tcp from any to any established
# Разрешаем все пакеты выходящие из внешнего интерфейса с внешнего IP
${fwcmd} -q add pass ip from ${IPOut} to any out xmit ${LanOut}

# Stop private networks (RFC1918) from entering the outside interface.
${fwcmd} -q add deny ip from 192.168.0.0/16 to any in via ${LanOut}
${fwcmd} -q add deny ip from 172.16.0.0/12 to any in via ${LanOut}
${fwcmd} -q add deny ip from 10.0.0.0/8 to any in via ${LanOut}

# NAT
#${fwcmd} -q add divert natd ip from any to any via ${LanOut}

# www только по заданным интерфейсам - остальные через squid
${fwcmd} -q add pass tcp from ${MyIP1} to any 20,21,22,23,80,443
${fwcmd} -q add pass tcp from any 20,21,22,23,80,443 to ${MyIP1}
${fwcmd} -q add pass tcp from ${MyIP2} to any 20,21,22,23,80,443
${fwcmd} -q add pass tcp from any 20,21,22,23,80,443 to ${MyIP2}
${fwcmd} -q add pass tcp from ${MyIP3} to any 20,21,22,23,80,443
${fwcmd} -q add pass tcp from any 20,21,22,23,80,443 to ${MyIP3}

# Запрещаем - FTP, терминал, Squid - снаружи
${fwcmd} -q add deny tcp from any to any 20,21,22,23,3128 in via ${LanOut}
# Запрещаем - www, FTP, терминал  - изнутри
${fwcmd} -q add deny tcp from any to any 20,21,22,23,80,443 in via ${LanIn}
${fwcmd} -q add deny tcp from any to any 8000-8104    in via ${LanIn}

# Разрешаем почту, DNS
${fwcmd} -q add pass tcp from any to any 25,110 via ${LanOut}
${fwcmd} -q add pass tcp from any 25,110 to any via ${LanOut}
${fwcmd} -q add pass udp from any to any 53 via ${LanOut}
${fwcmd} -q add pass udp from any 53 to any via ${LanOut}

${fwcmd} -q add pass all from any to any via ${LanIn}

# Доступен сервер www из внешнего мира
${fwcmd} -q add pass tcp from ${IPOut} 80 to any via ${LanOut}
${fwcmd} -q add pass tcp from any to ${IPOut} 80 via ${LanOut}

#ICMP
${fwcmd} -q add allow icmp from any to ${IPOut} in  via ${LanOut} icmptype 0,3,4,11,12
${fwcmd} -q add allow icmp from any to ${NetInIP}/${NetInMask} in  via ${LanOut} icmptype 0,3,4,11,12
${fwcmd} -q add allow icmp from ${IPOut} to any out via ${LanOut} icmptype 3,8,12
${fwcmd} -q add allow icmp from ${IPOut} to any out via ${LanOut} frag
${fwcmd} -q add deny log icmp from any to any in  via ${LanOut}
${fwcmd} -q add reject log icmp from any to any out via ${LanOut}

${fwcmd} -q add deny log all from any to any

ipnat.rules
Цитата
map rl0 0/0 -> 0/32 proxy port ftp ftp/tcp
map rl0 192.168.10.0/24 -> 195.195.95.5/27 proxy port ftp ftp/tcp
map rl0 192.168.10.0/24 -> 195.195.95.5/27
User is offlineProfile Card PM
Go to the top of the page
+
SergeyKa
20.08.2003 - 11:14
Сообщение #8



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Squid+SquidGuard
cd /usr/ports/www/squid
make all
make install
cd /usr/ports/www/squidguard
make all
make install
chown nobody:nogroup /usr/local/squid
chown nobody:nogroup /usr/local/squid/logs
chown nobody:nogroup /usr/local/squid/cache

Раскоментируем
http_port 3128
redirect_program /usr/local/bin/squidGuard
redirect_children 20 (тут указываем количество пользователей которые одновременно работают с кешем)
cache_store_log none
logfile_rotate 3
emulate_httpd_log on
ftp_user anonymous@bestoff.com
Находим секцию
# ACCESS CONTROLS
В ней подсекцию
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
Раскоментируем 2 строчки
acl our_networks src 192.168.10.0/24
http_access allow our_networks

/usr/local/sbin/squid -z

Настраиваем squidGuard (http://unixgems.jinr.ru/~lavr/squidguard.html)

К настройкам в этой статье добавим свои базы

/var/db/good
/var/db/fack

cd /var/db/squidGuard
mkdir good
chown nobody:nogroup good
chmod 550 good
mkdir fack
chown nobody:nogroup fack
chmod 550 fack

В папках создаем файлы
ee domains (доменные имена)
chown nobody:nogroup domains
chmod 550 domains
ee urls (страницы)
chown nobody:nogroup urls
chmod 550 urls
ee expressions (ключевые слова)
chown nobody:nogroup expressions
chmod 550 expressions

squidGuard -C all
(если висит идем /usr/local/squid/logs - смотрим почему)

Устанавливаем анализатор лог файла access.log
Качаем SAGR с сайта разработчика http://web.onda.com.br/orso/sarg.html

cd /usr/ports/distfiles
wget http://web.onda.com.br/orso/sarg-1.4.1.tar.gz
tar xzvf sarg-1.4.1.tar.gz
cd sarg-1.4.1
./configure
make
make install

ee /usr/local/sarg/sarg.conf

access_log /usr/local/squid/logs/access.log.0
output_dir /usr/local/sarg/out
User is offlineProfile Card PM
Go to the top of the page
+
SergeyKa
20.08.2003 - 11:17
Сообщение #9



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Обеспечиваем жизнедеятельность sendmail

Сибираем sendmail поновой. Исходя из того что нам необходимо :)
Просьба не смеятся над следуюшим методом закачки исходников... (когда не знаешь где находится tar архив - это самый быстрый метод :))
cd /usr/ports/mail/sendmail
make all (когда закачается архив топчем Ctrl+C - прерываем установку)

Устанавливаем Sendmail 8.12.8.
cd /usr/ports/distfiles
tar -xvzf sendmail.8.12.8.tar.gz
cd /usr/ports/distfiles/sendmail-8.12.8

Собираем sendmail
sh Build
sh Build install
cd /usr/ports/distfiles/sendmail-8.12.8/mailstats
sh Build install
cd /usr/ports/distfiles/sendmail-8.12.8/makemap
sh Build install
cd /usr/ports/distfiles/sendmail-8.12.8/praliases
sh Build install
cd /usr/ports/distfiles/sendmail-8.12.8
install -d -m 755 /var/spool/mqueue

Собираем sendmail.cf
cd /usr/ports/distfiles/sendmail-8.12.8/cf/cf
ee sendmail.mc
В файл sendmail.mc пишем (это пример)
Цитата
divert(-1)
divert(0)
VERSIONID(`2003/08/08 v1.0')
OSTYPE(freebsd4)dnl
DOMAIN(generic)

FEATURE(access_db, `hash -T<TMPF> /etc/mail/access')
dnl AntiSpam
FEATURE(blacklist_recipients)dnl
FEATURE(dnsbl)dnl
FEATURE(`dnsbl', `relays.ordb.org', `Spam bloked - see http://ordb.org/')
FEATURE(dnsbl,`inputs.orbz.org', `Input Spam bloked - see http://orbz.org/')
FEATURE(dnsbl,`bl.spamcop.net', `Spam blocked - see http://spamcop.net/bl.shtml?$&{client_addr}')
FEATURE(dnsbl,`ex.dnsbl.org', `Spam bloked - see http://www.dnsbl.org/')
FEATURE(dnsbl, `relays.osirusoft.com', `Spam bloked - see http://relays.osirusoft.com/')
dnl
FEATURE(local_lmtp)
FEATURE(mailertable, `hash -o /etc/mail/mailertable')
FEATURE(relay_based_on_MX)
FEATURE(virtusertable, `hash -o /etc/mail/virtusertable')

FEATURE(`no_default_msa')dnl turn off default entry for MSA
DAEMON_OPTIONS(`Port=25, Name=MSA, M=E')dnl

define(`confCW_FILE', `-o /etc/mail/local-host-names')

define(`confMAX_MESSAGE_SIZE', `1500000')
define(`confMAX_MIME_HEADER_LENGTH', `256/128')
define(`confNO_RCPT_ACTION', `add-to-undisclosed')
define(`confPRIVACY_FLAGS', `authwarnings,noexpn,novrfy')
MAILER(`local')
MAILER(`smtp')


sh Build sendmail.cf

инсталлируем sendmail.cf и submit.cf в /etc/mail

sh Build install-cf

cd /etc/mail
В файл access пишем
192.168.10.98 RELAY

makemap hash access.db < access

Тут же создаем файл local-host-names
myd.ru
localhost

Собираем popa3d
cd /usr/ports/mail/popa3d
make all
make install

/etc/inetd.conf
pop3 stream tcp nowait root /usr/local/libexec/popa3d popa3d
User is offlineProfile Card PM
Go to the top of the page
+
SergeyKa
20.08.2003 - 11:19
Сообщение #10



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Samba+принтер HP1100
cd /usr/ports/net/samba
make all
в появившейся менюшке сразу выбираем ОК
make install

/usr/local/etc/smb.conf
Меняем
Цитата
[global]
workgroup = mygroup
server string = samba
hosts allow = 192.168.10. 127.
load printers = yes
printcap name = /etc/printcap
security = share
[printers]
guest ok = yes
[BUX]
comment = Bux
path = /arhive
public = yes
writeable = yes
printable = no
browseable = yes
create mask = 0765



/etc/printcap
Оставляем

lp|local line printer:\
:sh:\
:lp=/dev/lpt0:sd=/var/spool/output/lpd:lf=/var/log/lpd-errs:ff=:


cp /usr/local/etc/rc.d/samba.sh.sample /usr/local/etc/rc.d/samba.sh
User is offlineProfile Card PM
Go to the top of the page
+
SergeyKa
20.08.2003 - 11:25
Сообщение #11



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Apache+PHP+SSL+MySQL+PERL
Оригинал статьи http://www.opennet.ru/base/dev/apache_php_..._mysql.txt.html => http://www.opennet.ru/base/dev/apache_php_mysql.txt.html

Для поиска могут понадобится ссылки - пока пропускаем
http://ftp.epix.net/apache/dist/httpd/apac...e_1.3.27.tar.gz => http://ftp.epix.net/apache/dist/httpd/apache_1.3.27.tar.gz
http://www.modssl.org/source/mod_ssl-2.8.1...2-1.3.27.tar.gz => http://www.modssl.org/source/mod_ssl-2.8.12-1.3.27.tar.gz
http://www.openssl.org/source/openssl-0.9.6g.tar.gz
http://perl.apache.org/dist/mod_perl-1.0-c...-current.tar.gz => http://perl.apache.org/dist/mod_perl-1.0-current.tar.gz
http://se.php.net/distributions/php-4.2.3.tar.gz
ftp://ftp.cac.washington.edu/imap/c-client.tar.Z
http://www.pdflib.com/pdflib/download/pdfl....3-Linux.tar.gz => http://www.pdflib.com/pdflib/download/pdfl....3-Linux.tar.gz=>http://www.pdflib.com/pdflib/download/pdflib-4.0.3-Linux.tar.gz
http://freshmeat.net/redir/gd/3111/url_tgz...gd-1.8.4.tar.gz => http://freshmeat.net/redir/gd/3111/url_tgz/gd-1.8.4.tar.gz


cd /usr/ports/distfiles
(www.mysql.com - там находим mysql-3.23.55.tar.gz)
tar xzvf mysql-3.23.55.tar.gz
cd mysql-3.23.55
добавляем в систему пользователя mysql
И группу mysql
./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data --with-mysqld- user=mysql --disable-large-files --with-libwrap --without-debug --with-charset=koi8_ru --with-extra-charsets=all --with-berkeley-db
make && make install
./scripts/mysql_install_db
chown -R mysql:mysql /usr/local/mysql/data
cp support-files/mysql.server /usr/local/etc/rc.d
chmod +x /usr/local/etc/rc.d/mysql.server
cp mysql.server mysql.server.sh

ps aux|grep mysql
/usr/local/mysql/bin/mysqlshow
/usr/local/mysql/bin/mysqladmin -u root password 'password'

cd /usr/ports/distfiles
tar xzvf apache_1.3.27.tar.gz (www.apache.org)
cd /usr/ports/distfiles/apache_1.3.27
wget ftp://ftp.lexa.ru/pub/apache-rus/apache_1...sPL30.17.tar.gz => ftp://ftp.lexa.ru/pub/apache-rus/apache_1...sPL30.17.tar.gz=>ftp://ftp.lexa.ru/pub/apache-rus/apache_1.3.27rusPL30.17.tar.gz (apache.lexa.ru)
./configure

cd ..
wget http://sunsite.bilkent.edu.tr/pub/infosyst...hp-4.3.2.tar.gz => http://sunsite.bilkent.edu.tr/pub/infosyst...hp-4.3.2.tar.gz=>http://sunsite.bilkent.edu.tr/pub/infosystems/phpweb/distributions/php-4.3.2.tar.gz (www.php.net)
tar -zxvf php-4.3.2.tar.gz
cd php-4.3.2
./configure --with-apache=../apache_1.3.27 --enable-track-vars --enable-mod_charset --with- mysql=/usr/local/mysql
make && make install

а теперь mod_perl

cd ..
wget http://perl.apache.org/dist/mod_perl-1.0-c...-current.tar.gz => http://perl.apache.org/dist/mod_perl-1.0-current.tar.gz (perl.apache.org/download/index.html)
tar -zxvf mod_perl-1.0-current.tar.gz
cd mod_perl-1.28
perl Makefile.PL APACHE_SRC=../apache_1.3.27/src DO_HTTPD=1 USE_APACI=1 EVERYTHING=1
make && make test && make install

тааак... далее SSL и собственно Apache

cd ..
wget http://www.modssl.org/source/mod_ssl-2.8.1...4-1.3.27.tar.gz => http://www.modssl.org/source/mod_ssl-2.8.14-1.3.27.tar.gz (www.modssl.org)
wget http://www.openssl.org/openssl-0.9.6d.tar.gz (www.openssl.org)
tar -zxvf mod_ssl-2.8.14-1.3.27.tar.gz
tar -zxvf openssl-0.9.6d.tar.gz
cd openssl-0.9.6d
./config
make
cd ..
cd mod_ssl-2.8.14-1.3.27
./configure --with-apache=../apache_1.3.27 --with-ssl=../openssl-0.9.6d --prefix=/usr/local/apache --activate-module=src/modules/php4/libphp4.a
cd ../apache_1.3.27
make
make certificate (необходимо будет ответить на ряд вопросов)
make install

/usr/local/apache/conf/httpd.conf
добавим
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
ищем
<IfModule mod_dir.c>
DirectoryIndex index.html
</IfModule>
Меняем на
<IfModule mod_dir.c>
DirectoryIndex index.html index.php index.shtml index.prl
</IfModule>
Снять коментарий на строчках
AddType text/html .shtml
AddHandler server-parsed .shtml
Коментируем
##SSLPassPhraseDialog builtin
Добавляем
SSLPassPhraseDialog exec:/usr/local/apache/bin/startssl.pl

Исправляем в конфиге все как обычно под себя
ee /usr/local/apache/bin/startssl.pl

#!/usr/bin/perl
print "<пароль который указали когда делали
"make certificate">\n";

chmod +x /usr/local/apache/bin/startssl.pl

ee /etc/rc.local
/usr/local/apache/bin/apachectl startssl
User is offlineProfile Card PM
Go to the top of the page
+
SergeyKa
20.08.2003 - 16:50
Сообщение #12



The NetWork Assistant
Group Icon
Группа: Старейшины
Сообщений: 342
Регистрация: 18.02.2003

Пользователь №: 6704




Ну вот вроде и все.
Сегодня поставил сервак на рабочее место.

За эти две недели написал столько текста, что можно оформлять свою домашнюю страничку :D

Кстати кому интересно.
В процессе установки и настройки использовал VMWare. Винт который был предназначен к установке на рабочий сервак подцеплял слейвом к своей тачке и указывал ВиртуалМешен использовать физическое устройство. После окончания настроек поставил винт на сервер и все заработало - с одной оговоркой - на Вин машине винт должен быть слейв на ЮНИХ - мастер. Поймал грабли только с печатью. На ВМ принтера как такового нет и по этому Самба поставилась пез потдержки последнего.
4 часа разбирался в чем дело. Вот может кому поможет такая добавочка :)

Samba 2.2.8 + HP 1100 (FreeBSD 4.8 Release)
Устанавливал Самбу на сервер без принтера
После поключения последнего печать из под Windows не происходила. Оказалось, необходимо в smb.conf добавить строчки
print command = lpr -r -P%p %s
lpq command = lpq -P%p
lprm command = lprm -P%p %j

Помогла команда testparm

Вот полные настройки Самбы для печати
/usr/local/etc/smb.conf
Цитата
   load printers = yes
   printing = bsd
   print command = lpr -r -P%p %s
   lpq command = lpq -P%p
   lprm command = lprm -P%p %j
[printers]
   comment = All Printers
   path = /var/spool/samba
   browseable = no
   guest ok = yes
   writeable = no
   printable = yes

/etc/printcap
Цитата
lp|local line printer:\
:sh:\
:lp=/dev/lpt0:sd=/var/spool/output/lpd:lf=/var/log/lpd-errs:ff=:

/etc/rc.conf
Цитата
lpd_enable="YES"
lpd_program="/usr/sbin/lpd" # path to lpd, if you want a different one.


Удачи

PS: По мере накопления опыта буду выкладывать изменения на домашнюю страничку (кнопка WWW)
User is offlineProfile Card PM
Go to the top of the page
+
Реклама

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0 -

 



- Текстовая версия Сейчас: 28.03.2024 - 20:43
]]> ]]>
]]> Яндекс.Метрика ]]>