Шрифт:
Интервал:
Закладка:
Листинг 12.7. Разрешение печати определенному пользователю
[admprn]
valid user = root admin administator
path = /home/admin
printer = canon
public = no
writeable = no
printable = yes
Подключение к Windows-компьютеру сетевого принтера, расшаренного сервером или рабочей станцией под управлением Linux, осуществляется точно так же, как подключение обыкновенного сетевого принтера. В операционной системе Windows 98 для этого проделайте следующее:
1. Выполните команду меню Пуск→Настройка→Принтеры.
2. Активизируйте мастера Установки принтера.
3. Выберите тип принтера: сетевой.
4. Укажите путь к принтеру или нажмите на кнопку Обзор для автоматического выбора ресурса.
5. Далее установка сетевого принтера аналогична установке локального.
12.2.5. Доступ к Windows-принтеру с компьютера, работающего под Linux
Настройки сетевого принтера находятся в файле /etc/printcap. Примерное содержание этого файла с комментариями приведено в листинге 12.8.
Листинг 12.8. Файл /etc/prtntcap
# //nt_ws1/hp5m via smbprint
#
lp:
# описание принтера
:cm=HP 5MP Postscript hp5in on nt_ws1:
# имя устройства, открываемого для вывода
:lp=/dev/lp0:
# каталог спула принтера (на локальной машине)
:sd=/var/spool/lpd/lp:
# файл учета использования принтера
:af=/var/spool/lpd/lp/acct:
# максимальный размер файла. Значение 0 означает отсутствие ограничений
:mx# 0:
# имя входного фильтра
:if=/usr/bin/smbprint:
В пакет Samba входит сценарий smbprint. С помощью этого сценария можно распечатывать документы на сетевом принтере, используя сервисы SMB. Возможно, в состав вашего пакета он не входит, поэтому я воссоздал его в листинге 12.9. Этот листинг частично позаимствован из руководства по пакету Samba.
Листинг 12.9. Сценарий smbprint
#!/bin/sh -х
# (с) Andrew Tridgell
# Этот скрипт является фильтром для системы печати,
# использующей
# файл /etc/printcap
# Он использует программу smbclient для печати файла на
# сетевом принтере,
# который подключен к рабочей станции Windows.
#
#
# Эта запись создает unix-принтер, названный "smb",
# который будет печатать с помощью этого сценария. Вам
# необходимо создать каталог спула /usr/spool/smb с
# соответствующими правами и владельцем
# smb:lp=/dev/null:sd=/usr/spool/smb:sh:
# if=/usr/local/samba/smbprint
# Далее сценарий был изменен Майклом Гамильтоном
# так что сервер, сервис и пароль могут быть считаны из
# файла
# /usr/var/spool/lpd/PRINTNAME/.config
#
# Для того, чтобы это работало, запись в /etc/printcap
# должна включать файл учета использования (af=...):
#
#cdcolour:
# :cm=CD IBM Colorjet on 6th:
# :sd=/var/spool/lpd/cdcolour:
# :af=/var/spool/lpd/cdcolour/acct:
# :if=/usr/local/etc/smbprint:
# :mx=0:
# :lp=/dev/null:
#
# Файл /usr/var/spool/lpd/PRINTNAME/.config должен
# содержать
# server=PC_SERVER
# serviсe=PR_SHARENAME
# password="password"
#
#Например,
# server=PAULS_PC
# service=CJET_371
# password=""
#
# Файл для отладочной информации, можно изменить на /dev/null
#
logfile=/tmp/smb-print.log
spool_dir=/var/spool/lpd/lp
config_file=$spool_dir/.config
eval `cat $config_file`
echo "server $server, service $service" >> $logfile
(
echo translate
echo "print -"
cat
) | /usr/bin/smbclient "\\$server\$service" $password -U $user -N -P >> $logfile
Теперь вы можете печатать на сетевом принтере. Но, тем не менее, я все же рекомендую прочитать руководство по пакету Samba для получения более подробной информации о печати на сетевых принтерах.
12.2.6. Конфигуратор SWAT
Конфигуратор SWAT (Samba Web-based Administrative Tool) предназначен для настройки пакета Samba через веб-интерфейс. Как и другие конфигураторы, SWAT предоставляет удобный графический интерфейс для администрирования сервера Samba. Основным преимуществом данного конфигуратора является то, что вам не нужно находиться за компьютером, который вы администрируете: администрировать сервера Samba вы можете с любого компьютера вашей сети. Как и при работе с другими конфигураторами, при работе со SWAT вам не нужно знать ни названия, ни расположения, ни формата конфигурационных файлов.
Для установки SWAT нужно установить пакет samba-swat.
После установки пакета проследите за тем, чтобы в вашем файле /etc/services была следующая запись:
swat 901/tcp
Конфигуратор SWAT для своей работы использует протокол TCP и порт 901. Тем не менее, вы можете назначить любой другой порт. При изменении номера порта не забудьте изменить номер порта в файле /etc/inetd.conf или /etc/xinetd.conf.
При этом, в конфигурационном файле /etc/xinetd.conf суперсервера xinetd должна присутствовать секция следующего содержания (листинг 12.10):
Листинг 12.10. Настройки службы SWAT
service swat {
disable = no
port = 901
socket_type = stream
wait = no
only_from = 127.0.0.1
user = root
server = /usr/sbin/swat
log_on_failure+= USERID
}
Если вы хотите конфигурировать сервер Samba с любого компьютера вашей сети, закомментируйте директиву only_from=127.0.0.1 или установите любые другие параметры доступа к SWAT.
Теперь нужно перезапустить суперсервер. Для этого введите команду:
# /etc/init.d/xinetd restart
Можно также заставить суперсервер перечитать свой конфигурационный файл:
# killall -HUP xinetd
Все! Настройка SWAT завершена, и теперь можно приступить к конфигурированию Samba с помощью SWAT. Для этого запустите свой любимый браузер и введите URL: http://host:901.
После установления соединения и авторизации вы увидите основное окно конфигуратора (рис. 12.2), в котором все самое нужное находится «под рукой» администратора: от документации до паролей пользователей.
Рис. 12.2. Окно конфигуратора SWAT
В разделе Globals определяются значения глобальных переменных. Вы можете получить подсказку по тому или иному параметру, перейдя по ссылке Help. Установить значение по умолчанию можно, нажав на кнопку Set Default.
В разделе Shares определяются общие ресурсы, а в разделе Printers — общие принтеры. Состояние сервера Samba можно посмотреть в разделе Status. Здесь же можно запустить, остановить и перезапустить сервисы SMB и NMB. В этом разделе можно завершить любое соединение с сервером Samba, а также просмотреть состояние соединения.
В разделе Passwords определяются пользователи, которые имеют доступ к серверу Samba.
12.2.7. Samba и безопасность
Вряд ли стоит разрешать доступ к вашему Samba-серверу всем желающим. Целесообразно разрешить доступ только определенным пользователям, которые должны быть зарегистрированы на сервере Samba. Напомню, что для создания пользователя используется команда adduser, а для изменения его пароля — passwd.
# adduser -s /bin/false samba-user
# passwd samba-user
Первая команда создает пользователя сервера Samba под именем samba-user. Параметр -s устанавливает «оболочку» для этого пользователя — /bin/false. Эта псевдооболочка не позволяет вводить команды, поэтому всем пользователям, которые не нуждаются в работе из командной строки, рекомендуется назначать ее из соображений безопасности.
Samba использует свой файл паролей — /etc/samba/smbpasswd. В нем всего три поля: регистрационное имя пользователя, UID и хешированный пароль. Для добавления пользователя в файл /etc/samba/smbpasswd и изменения его пароля Samba использует команду smbpasswd:
# smbpasswd samba-user
Совет: если вы хотите добавить всех пользователей из файла /etc/passwd в файл /etc/samba/smbpasswd, то используете для этого следующую команду:
# cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd
He забудьте изменить права доступа к файлу /etc/samba/smbpasswd:
# chmod 600 /etc/samba/smbpasswd
Осталось только сделать небольшие изменения в секции [global] файла конфигурации /etc/smb.conf:
security = user
12.2.8. Оптимизация Samba
Ваш Samba-сервер медленно работает, и вы уже устали от постоянных жалоб пользователей? Лучшим выходом из данной ситуации будет покупка нового винчестера. Лучше всего покупать SCSI-винчестер со скоростью 10000 оборотов в минуту. В крайнем случае подойдет IDE-диск, поддерживающий режим ATA133 и работающий со скоростью 7200 оборотов в минуту. При покупке такого винчестера обратите внимание на следующие факторы:
- Операционная система UNIX - Андрей Робачевский - Программное обеспечение
- Разработка приложений в среде Linux. Второе издание - Майкл Джонсон - Программное обеспечение
- Искусство программирования для Unix - Эрик Реймонд - Программное обеспечение
- Linux - Алексей Стахнов - Программное обеспечение
- Fedora 8 Руководство пользователя - Денис Колисниченко - Программное обеспечение
- Недокументированные и малоизвестные возможности Windows XP - Роман Клименко - Программное обеспечение
- Изучаем Windows Vista. Начали! - Дмитрий Донцов - Программное обеспечение
- Windows Vista - Виталий Леонтьев - Программное обеспечение
- Архитектура операционной системы UNIX - Морис Бах - Программное обеспечение
- Windows Vista. Трюки и эффекты - Юрий Зозуля - Программное обеспечение