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 (
Для установки 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: