Документация по ОС FreeBSD Пятница, 26.04.2024, 19:41
Приветствую Вас Гость | RSS
Меню сайта

Категории каталога
Apache [58]
DNS [25]
FTP [27]
Mail [74]
Samba [24]
Squid [46]
SSH [23]
VPN [35]
РРР [20]
Net [173]

Главная » Статьи » Сеть » Samba

Установка Принт-Сервера Samba+LPD & AD [2009]
На днях возникла задача купить или настроить принт сервер для Склада, подумав немного решили настраивать на FreeBSD, так как на Складе полным полно слабеньких машин, а  в стране "Крысзис" и Принт серверы стоят от 2600 рублей.
Так что зачем тратить деньги если можно настроить все на стареньких компах и совершенно бесплатно =).

Исходные данные:
OS: FreeBSD 6.4
CPU: Intel(R) Celeron(TM) CPU 1100MHz
HDD: 10 Gb
DIMM: 64 Mb
Ethernet: 10 Mb (10baseT/UTP)
Принтер: HewLett Packard HP LaserJet 1200 (Подключен по USB 1.0)
=================================================================
Контроллер домена под управлением Windows Server 2003

Устанавливаем SAMBA 3.0.34,1

//> cd /usr/ports/net/samba3
/usr/ports/net/samba3/> make config

+--------------------------------------------------------------------+
| Options for samba 3.0.34,1 |
| +----------------------------------------------------------------+ |
| | [X] LDAP With LDAP support | |
| | [X] ADS With Active Directory support | |
| | [ ] CUPS With CUPS printing support | |
| | [X] WINBIND With WinBIND support | |
| | [ ] ACL_SUPPORT With ACL support | |
| | [ ] AIO_SUPPORT With Asyncronous IO support | |
| | [ ] FAM_SUPPORT With File Alteration Monitor | |
| | [X] SYSLOG With Syslog support | |
| | [ ] QUOTAS With Disk quota support | |
| | [X] UTMP With UTMP accounting support | |
| | [ ] PAM_SMBPASS With PAM authentication vs passdb backends | |
| | [ ] CLUSTER With experimental cluster support | |
| | [ ] DNSUPDATE With dynamic DNS update(require ADS) | |
| | [ ] EXP_MODULES With experimental modules | |
| | [X] POPT With system-wide POPT library | |
| | [X] PCH With precompiled headers optimization | |
| | [ ] MAX_DEBUG With maximum debugging | |
| | [ ] SMBTORTURE With smbtorture | |
| | | |
| | | |
+-+------v(+)------------------------------------------------------+-+
| [ OK ] Cancel |
+--------------------------------------------------------------------+

//> make && make install && make clean
//> rehash

Правим файл /etc/hosts
//> cat /etc/hosts

::1 localhost.domain.local localhost
127.0.0.1 localhost.domain.local localhost
# Принт-сервер
192.168.55.200 printsrv.domain.local printsrv
192.168.55.200 printsrv.domain.local.
# Контроллер домена на Windows 2003 он же DNS и DHCP
192.168.55.1 server.domain.local server

Правим файл /etc/resolv.conf
//> cat /etc/resolv.conf
# Мой домен
domain domain.local
# Указываем DNS сервер
nameserver 192.168.55.1

Правим конфиг самбы до такого состояния
#======================= Global Settings ==============================
[global]

 workgroup = DOMAIN
 server string = Принт Сервер
 security = ADS
 hosts allow = 192.168.55. 192.168.1. 127.
 load printers = yes
 printcap name = /etc/printcap
 printing = bsd
 print command = lpr -P %p %s -r
 log file = /var/log/samba/log.%m
 max log size = 50
 password server = 192.168.55.1
 realm = DOMAIN.LOCAL
 dns proxy = no
 display charset = koi8-r
 unix charset = koi8-r
 dos charset = cp866
 winbind use default domain = yes
 winbind uid = 10000-15000
 winbind gid = 10000-15000
 winbind enum users = yes
 winbind enum groups = yes

#============================ Share Definitions =======================
[homes]
 comment = Home Directories
 browseable = no
 writable = yes

[printers]
 comment = Склад99 HP-1200
 printer = hp
 read only = no
 browseable = yes
 printable = yes
 path = /var/spool/samba
 public = yes

Устанавливаем Heimdal 1.0.1

Heimdal керберос нужен для того что бы наша Система поучила ключ от Win2003 Server
Для дальнейшего подключения к ДОМЕНУ
//> cd /usr/ports/security/heimdal

/usr/ports/security/heimdal/> make config

+--------------------------------------------------------------------+
| Options for heimdal 1.0.1 |
| +----------------------------------------------------------------+ |
| | [ ] LDAP Use OpenLDAP as the KDC backend | |
| | [ ] CRACKLIB Use CrackLib for password quality checking | |
| | [ ] X11 Build X11 utilies | |
| | | |
| | | |
| | | |
+-+------v(+)------------------------------------------------------+-+
| [ OK ] Cancel |
+--------------------------------------------------------------------+

//> make && make install && make clean
//> rehash

Создаем конфиг Heimdal /etc/krb5.conf
//> ee /etc/krb5.conf

[libdefaults]
 default_realm = DOMAIN.LOCAL
 clockskew = 300
 v4_instance_resolve = false
 v4_name_convert = {
 host = {
 rcmd = host
 ftp = ftp
 }
 plain = {
 something = something-else
 }
 }

[realms]
 DOMAIN.LOCAL = {
 kdc = 192.168.55.1
 admin_server = 192.168.55.1
 kpasswd_server = 192.168.55.1

 }
[domain_realm]
 .domain.local = DOMAIN.LOCAL

Правим файл /etc/nsswitch.conf
//> cat /etc/nsswitch.conf

group: files winbind
group_compat: nis
hosts: files dns
networks: files
passwd: files winbind
passwd_compat: nis
shells: files

Получаем билет
//> kinit -p admin
admin@DOMAIN.LOCAL's Password:
kinit: NOTICE: ticket renewable lifetime is 1 week
//>

Проверяем получили мы ticket
//> klist
Credentials cache: FILE:/tmp/krb5cc_0
 Principal: admin@DOMAIN.LOCAL

 Issued Expires Principal
Nov 20 16:16:33 >>>Expired<<< krbtgt/DOMAIN.LOCAL@DOMAIN.LOCAL
//>

Подключаемся к ДОМЕНУ
//> net join -U admin
admin's password:
Using short domain name -- DOMAIN
Joined 'PRINTSRV' to realm 'DOMAIN.LOCAL'
//>

Добавляем SAMBA в автозагрузку
//> echo 'samba_enable="YES"' >> /etc/rc.conf

Ну и запускаем SAMBA
//> /usr/local/etc/rc.d/samba start
Performing sanity check on Samba configuration: OK
Stopping winbindd.
Stopping smbd.
Stopping nmbd.
Removing stale Samba tdb files: ........ done
Starting nmbd.
Starting smbd.
Starting winbindd.
//> 

Проверяем видит ли Samba группы, пользователей домена
//> wbinfo -g

пользователи домена
контроллеры домена
гости домена
компьютеры домена
администраторы домена
бухгалтерия
сотрудники отдела ит
.....итд итп.....


//> wbinfo -u

администратор
гость
user1
user2
user3
user4
user5
........итд итп........


//> id petrov
uid=10001(petrov) gid=10000(пользователи домена) 
groups=10000(пользователи домена),10007(администраторы домена), 
10039(сотрудники отдела ит)
//>

Настройка Принтера

Смотрим на каком интерфейсе висит принтер
//> dmesg | grep LaserJet
ulpt0: HewLett Packard HP LaserJet 1200, rev 1.10/1.00, addr 2, iclass 7/1
//>

И висит оказывается на ulpt0

Далее правим файл /etc/printcap
//> ee /etc/printcap

# @(#)printcap 5.3 (Berkeley) 6/30/90
# $FreeBSD: src/etc/printcap,v 1.14.24.1 2008/10/02 02:57:24 kensmith Exp $

hp-1200|hp-1200|lp:\
 :sh:sd=/var/spool/lpd:\
 :lp=/dev/ulpt0:\
 :if=/usr/local/libexec/hpif:

Если у вас принтер весит по LPT то в printcap указываем lpt0 или какой там интерфейс задействован.

Далее рисуем такой скрипт
//> ee /usr/local/libexec/hpif

#!/bin/sh

printf "\033&k2G" && cat && exit 0
exit 2

И даем на скрипт права на выполнение
//> chmod +x /usr/local/libexec/hpif

Запуск системы LPD

Далее добавляем в автозагрузку lpd
//> echo 'lpd_enable="YES"' >> /etc/rc.conf

И запускаем демон
//> /etc/rc.d/lpd start
Starting lpd.
//>

Проверка печати

Можно проверить теперь работу принтера прям из консоли набрав такую команду
//> lptest 20 5 | lpr -Pprinter-name

Где printer-name — имя принтера, заданное в файле /etc/printcap
И принтер должен распечатать вот такую фигню =)
!"#$%&'()*+,-./01234
"#$%&'()*+,-./012345
#$%&'()*+,-./0123456
$%&'()*+,-./01234567
%&'()*+,-./012345678


Проверка печати из Windows
 
Переходим по \\192.168.55.200 через Проводник и попадаем на Print_Server
Далее устанавливаем принтер указав винде виндовые дрова (которые должны быть у вас)
и пробуем печатать документы, итд итп. Т.е тестируем его.

Просмотр истории печати

Даже можно потом посмотреть что и когда было отправлено на печать
//> ls -l /var/spool/samba
total 1696
-rw------- 1 cancer wheel 64656 10 мар 14:25 smbprn.00000001.sSsMOp
-rw------- 1 cancer wheel 33191 10 мар 14:26 smbprn.00000002.sSsMOp
-rw------- 1 cancer wheel 33191 10 мар 14:26 smbprn.00000003.egVcuh
-rw------- 1 cancer wheel 65022 10 мар 16:26 smbprn.00000009.w8CPOQ
-rw------- 1 sklad99 wheel 33782 10 мар 14:15 smbprn.00000010.4vxbM4
-rw------- 1 администратор wheel 75010 10 мар 09:39 smbprn.00000022.Ncp5eH
-rw------- 1 администратор wheel 113137 10 мар 09:43 smbprn.00000024.1MSZe0
-rw------- 1 cancer wheel 65715 10 мар 10:21 smbprn.00000025.hYve8x
-rw------- 1 cancer wheel 140420 10 мар 10:48 smbprn.00000026.Pn9AJr
-rw------- 1 cancer wheel 141355 10 мар 10:49 smbprn.00000027.9yBXns
-rw------- 1 sklad99 wheel 48457 10 мар 16:38 smbprn.00000029.3WyMn8
-rw------- 1 sklad99 wheel 43534 10 мар 16:46 smbprn.00000031.3WyMn8
//>

P.S Пробовал положить дрова на сервак (для того что бы дрова ставились прям с сервака), но как то не получилось, если кому удалось это сделать просьба отписаться. =)

Документация:
http://freebsd.org.ua/doc/ru_RU.KOI8-R/books/handbook/printing-intro-setup.html#PRINTING-SIMPLE
http://www.freebsd.org.ru/how-to/printerconfig.html



Источник: http://www.lissyara.su/?id=1873
Категория: Samba | Добавил: oleg (17.03.2009) | Автор: Cancer
Просмотров: 1757 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Beastie

Друзья сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
links
Buy Nitrazepam online

Copyright MyCorp © 2024