LINUX.ORG.RU

Сообщения eightn

 

switch-card pci в выключенном сервере - будет работать?

Форум — General

Есть такие коммутаторы (свитчи), собирающиеся непосредственно на pci плате. С платы они берут исключительно питание, например:
http://www.tk-plus.ru/?pid=1482&id=108&name=shop

т.е. pci-плата, сзади торчит 4..6 портов ethernet (иногда на плате разводят и сетевую карту).

Вопрос - а в случае, если питание на серере выключено, будет ли свич на такой плате работать? Т.е. гасим/тушку сервера через IPMI. Не потеряем ли мы сам свитч и, соответственно, IPMI-доступ к тушке сервера?

Для чего это нужно. Есть сервера, находящийся в дц. На них IPMI для «мало-ли что». IPMI управляется через отдельный ethernet-порт, который надо куда-то втыкать. Провайдер (датацентр) за дополнительный порт хочет дополнительных денег. Если машин много - денег получается тоже много. Возможно ли обойтись одним портом, используя такую свитч-карту (втыкаем аплинк провайдера в свич на pci карте, а уже с этого свича подключаем патчкордами ipmi и ethetnet-порт сервера.

У кого-нибудь был положительный опыт использования подобных решений? :)

eightn
()

xfs: no space left on device, хотя место есть, иноды тоже

Форум — General

Есть машина, к которой подключен диск на 9TB (много дисков, собранных в рейд). На диске создана xfs. Некоторое время назад, при попытке записи на этот диск система стала говорить "no space left on device", хотя место и иноды на диске еще не закончилось.
Выяснилось, что это произошло после копирования туда нескольких директорий, в каждой из которых было примерно 600тысяч мелких (от пары килобайт до сотни килобайт).

Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sdd1 9516351360 9295396036 220955324 98% /opt/storage2

Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sdd1 888871152 4905723 883965429 1% /opt/storage2

Система - linux, debian etch, ядро 2.6.18-5-amd64

Вопрос - у xfs существует еще какой то внутренний лимит на кол-во файлов? Ведь, в случае ext3, если у нас есть место и свободные иноды, то на файловую систему можно продолжать записывать данные. В случае xfs, как выяснилось, существуют и другие ограничения. Какие?

eightn
()

проблемы с контроллером Adaptec AIC-9410W SAS (Razor ASIC RAID) (rev 09) в linux (не видны диски)

Форум — Admin

Возникла проблема на машине на 5000P чипсете с контроллером Adaptec AIC-9410W. Ядро упорно не видит дисков и даже контроллера.

Модуль ядра сообщает следующее:

ACPI: PCI Interrupt 0000:09:02.0[A] -> GSI 18 (level, low) -> IRQ 18 aic94xx: found Adaptec AIC-9410W SAS/SATA Host Adapter, device 0000:09:02.0 scsi0 : aic94xx aic94xx: BIOS present (1,1), 1822 aic94xx: ue num:4, ue size:88 aic94xx: manuf sect SAS_ADDR 50030480002636f0 aic94xx: manuf sect PCBA SN ORG aic94xx: ms: num_phy_desc: 8 aic94xx: ms: phy0: ENABLED aic94xx: ms: phy1: ENABLED aic94xx: ms: phy2: ENABLED aic94xx: ms: phy3: ENABLED aic94xx: ms: phy4: ENABLED aic94xx: ms: phy5: ENABLED aic94xx: ms: phy6: ENABLED aic94xx: ms: phy7: ENABLED aic94xx: ms: max_phys:0x8, num_phys:0x8 aic94xx: ms: enabled_phys:0xff aic94xx: ctrla: phy0: sas_addr: 50030480002636f0, sas rate:0x9-0x8, sata rate:0x0-0x0, flags:0x0 aic94xx: ctrla: phy1: sas_addr: 50030480002636f0, sas rate:0x9-0x8, sata rate:0x0-0x0, flags:0x0 aic94xx: ctrla: phy2: sas_addr: 50030480002636f0, sas rate:0x9-0x8, sata rate:0x0-0x0, flags:0x0 aic94xx: ctrla: phy3: sas_addr: 50030480002636f0, sas rate:0x9-0x8, sata rate:0x0-0x0, flags:0x0 aic94xx: ctrla: phy4: sas_addr: 50030480002636f0, sas rate:0x9-0x8, sata rate:0x0-0x0, flags:0x0 aic94xx: ctrla: phy5: sas_addr: 50030480002636f0, sas rate:0x9-0x8, sata rate:0x0-0x0, flags:0x0 aic94xx: ctrla: phy6: sas_addr: 50030480002636f0, sas rate:0x9-0x8, sata rate:0x0-0x0, flags:0x0 aic94xx: ctrla: phy7: sas_addr: 50030480002636f0, sas rate:0x9-0x8, sata rate:0x0-0x0, flags:0x0 aic94xx: max_scbs:512, max_ddbs:128 aic94xx: setting phy0 addr to 50030480002636f0 aic94xx: setting phy1 addr to 50030480002636f0 aic94xx: setting phy2 addr to 50030480002636f0 aic94xx: setting phy3 addr to 50030480002636f0 aic94xx: setting phy4 addr to 50030480002636f0 aic94xx: setting phy5 addr to 50030480002636f0 aic94xx: setting phy6 addr to 50030480002636f0 aic94xx: setting phy7 addr to 50030480002636f0 aic94xx: num_edbs:21 aic94xx: num_escbs:3 aic94xx: Failed to load sequencer firmware file aic94xx-seq.fw, error -2 aic94xx: couldn't init seqs for 0000:09:02.0 aic94xx: couldn't init the chip ACPI: PCI interrupt for device 0000:09:02.0 disabled aic94xx: probe of 0000:09:02.0 failed with error -2

Пробовал несколько разных ядер, включая ванильные до версии 2.6.24 включительно, ситуация не меняется. Никто не сталкивался с такой проблемой?

Может надо чтото отключить или наоборот, включить в биосе или нечто подобное? Или нам попался вообще экземпляр с битой платформой или контроллером?

Вот сообщение от lspci:

00:00.0 Host bridge: Intel Corporation 5000P Chipset Memory Controller Hub (rev b1) 00:02.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 2-3 (rev b1) 00:04.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 4-5 (rev b1) 00:06.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 6-7 (rev b1) 00:08.0 System peripheral: Intel Corporation 5000 Series Chipset DMA Engine (rev b1) 00:10.0 Host bridge: Intel Corporation 5000 Series Chipset FSB Registers (rev b1) 00:10.1 Host bridge: Intel Corporation 5000 Series Chipset FSB Registers (rev b1) 00:10.2 Host bridge: Intel Corporation 5000 Series Chipset FSB Registers (rev b1) 00:11.0 Host bridge: Intel Corporation 5000 Series Chipset Reserved Registers (rev b1) 00:13.0 Host bridge: Intel Corporation 5000 Series Chipset Reserved Registers (rev b1) 00:15.0 Host bridge: Intel Corporation 5000 Series Chipset FBD Registers (rev b1) 00:16.0 Host bridge: Intel Corporation 5000 Series Chipset FBD Registers (rev b1) 00:1c.0 PCI bridge: Intel Corporation 631xESB/632xESB/3100 Chipset PCI Express Root Port 1 (rev 09) 00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev d9) 00:1f.0 ISA bridge: Intel Corporation 631xESB/632xESB/3100 Chipset LPC Interface Controller (rev 09) 00:1f.1 IDE interface: Intel Corporation 631xESB/632xESB IDE Controller (rev 09) 00:1f.3 SMBus: Intel Corporation 631xESB/632xESB/3100 Chipset SMBus Controller (rev 09) 01:00.0 PCI bridge: Intel Corporation 6311ESB/6321ESB PCI Express Upstream Port (rev 01) 01:00.3 PCI bridge: Intel Corporation 6311ESB/6321ESB PCI Express to PCI-X Bridge (rev 01) 02:00.0 PCI bridge: Intel Corporation 6311ESB/6321ESB PCI Express Downstream Port E1 (rev 01) 02:02.0 PCI bridge: Intel Corporation 6311ESB/6321ESB PCI Express Downstream Port E3 (rev 01) 04:00.0 Ethernet controller: Intel Corporation 80003ES2LAN Gigabit Ethernet Controller (Copper) (rev 01) 04:00.1 Ethernet controller: Intel Corporation 80003ES2LAN Gigabit Ethernet Controller (Copper) (rev 01) 08:00.0 PCI bridge: Intel Corporation 6702PXH PCI Express-to-PCI Bridge A (rev 09) 09:02.0 RAID bus controller: Adaptec AIC-9410W SAS (Razor ASIC RAID) (rev 09) 0a:01.0 VGA compatible controller: ATI Technologies Inc ES1000 (rev 02)

>>>

eightn
()

CUPS: принтер сам остонавливается

Форум — Admin

Стоит cups-1.2.10 под Gentoo. К нему подключены два принтера HP P2015 (драйвер HP LaserJet Series PCL 6 CUPS из комплекта cups-а).

Эти принтеры через samba сервер расшарены для виндовс-пользователей.

Иногда по пока непонятной мне причине, первый принтер останавливается (сам). В интерфейсе cups-а об этом пишут следующее:

netprinter-hp1 (Default Printer) "/usr/libexec/cups/backend/lpd failed"
Description: HP LaserJet P2015

Make and Model: HP LaserJet Series PCL 6 CUPS

Printer State: stopped, accepting jobs, published. 

Соответственно, никто печатать на этот принтер больше не может. Помогает только заход в интерфейс cups-а под принт-администратором и 
нажимание кнопки "start printer". 
Принтер успешно стартует и начинает печатать все, что накопилось у
него в очереди и все новые задания.... до очередной остановки. Такие 
остановки могут случаться несколько раз в час, а могут - пару раз на 
дню всего лишь.

Понятно, что можно написать простой скрипт, который будет ходить в 
веб-интерфейс cups-а, проверять, остановлен ли принтер. И, если 
принтер опять остановился, стартовать его.

Но хотелось бы узнать причину остановки. Куда вообще рыть? В логах cups-а
тишина, никакой информации похожей на "принтер остановился потому-то потому-то" 
я там не нашел :(

Может у cups-а есть какая то скрытая опция типа "автостартовать принтер
если он остановился"?
eightn
()

не yдаляются файлы с windows-share с символом номеpа

Форум — Admin

Столкнyлся с пpоблемой:
монтиpyю шаpинг с windows-машины
mount.smbfs //1.2.3.4/windows_sharing /mnt/dir -o 
codepage=cp866,iocharset=koi8-r

Все монтиpyются, pyсские имена видны.
Hо пpи попытке yдалить файл с символом номеpа в названии ( № ) 
- система выдает, что файл невозможно yдалить, так как "No such file or directory"

из под самой windows (win xp pro sp2), эти файлы замечательно yдаляются :(


Моя локаль koi8-r
$ locale
LANG=ru_RU.KOI8-R
LC_CTYPE="ru_RU.KOI8-R"
LC_NUMERIC="ru_RU.KOI8-R"
LC_TIME="ru_RU.KOI8-R"
LC_COLLATE="ru_RU.KOI8-R"
LC_MONETARY="ru_RU.KOI8-R"
LC_MESSAGES="ru_RU.KOI8-R"
LC_PAPER="ru_RU.KOI8-R"
LC_NAME="ru_RU.KOI8-R"
LC_ADDRESS="ru_RU.KOI8-R"
LC_TELEPHONE="ru_RU.KOI8-R"
LC_MEASUREMENT="ru_RU.KOI8-R"
LC_IDENTIFICATION="ru_RU.KOI8-R"
LC_ALL=

samba-3.0.20b


Как yдалять подобные файлы, монтиpyя их самбой к linux-машине?
В какyю стоpонy вообще pыть?

eightn
()

cups, x64 postscript driver for windows

Форум — Admin

А где можно достать x64 Postscript-овский драйвер под windows?

Есть samba, работающая в качестве PDC, в связке с ней и CUPS-ом 
получается еще и принтсервер. При попытке подключения принтеров 
(расшареных на самбе) с рабочих станций WindowsXP x64, возникла 
проблема - windows не находит драйвера для принтера.

Для 32битных машин все нормально - postscript-овские дрова находятся и
 пользователи печатают.
Для 64битных я взял 32bit-ные postscrtipt-файлы и посредтством команд

cd X64; put /usr/share/cups/model/$$PPD_FILENAME$$ $$PPD_FILENAME$$; 
put /usr/share/cups/drivers/PSCRIPT5.DLL pscript5.dll; 
put /usr/share/cups/drivers/PS5UI.DLL ps5ui.dll; 
put /usr/share/cups/drivers/PSCRIPT.NTF pscript.ntf; 
put /usr/share/cups/drivers/PSCRIPT.HLP pscript.hlp

adddriver "Windows NT x64" 
"$$PRINTER_NAME$$:pscript5.dll:$$PPD_FILENAME$$:ps5ui.dll:pscript.hlp:NULL:
RAW:pscript.ntf"

добавил драйвер для 64-битных систем
samba его видит:

rpcclient -U printadmin -c 'enumdrivers 3' localhost

------------------
[Windows x64]
Printer Driver Info 3:
        Version: [3]
        Driver Name: [pr_first]
        Architecture: [Windows x64]
        Driver Path: [\\\\LOCALHOST\print$\x64\3\pscript5.dll]
        Datafile: [\\\\LOCALHOST\print$\x64\3\hp_LaserJet_3020_3030.ppd]
        Configfile: [\\\\LOCALHOST\print$\x64\3\ps5ui.dll]
        Helpfile: [\\\\LOCALHOST\print$\x64\3\pscript.hlp]

        Dependentfiles: [\\\\LOCALHOST\print$\x64\3\pscript.ntf]

        Monitorname: []
        Defaultdatatype: [RAW]
------------------


Т.е. предполагаю, что windows-у нужен 64битный драйвер postscript.

Подскажите, плз, где его взять или как бороться с данной проблемой?
eightn
()

Intel SR1500ALSAS - не перегружается по shutdown -r

Форум — General

Появилась платформа Intel SR1500ALSAS 
http://support.intel.com/support/motherboards/server/chassis/sr1500/

Поставили Linux (Gentoo 2006.1), ядро 2.6.17

Все бы замечательно, но машины при shutdown -r now не уходит в 
перезагрузку - повисает на самом последнем моменте, после 
перемонтирования / в r/o система пишет "rebooting system..." и все - 
ждем нажатия кнопки reset :(

В какую сторону вообще рыть? Поддержка ACPI и APM в ядре включена.
eightn
()

mysql: howto latin1.table.host1 move to utf8.table.host2

Форум — General

Каким образом можно перенести базу данный mysql, хранящуюся в кодировка latin1 на другой хост, попутно сконвертив базу в utf8?

На первом хосте (freebsd):
mysql> show variables like "char%";
+--------------------------+----------------------------------+
| Variable_name            | Value                            |
+--------------------------+----------------------------------+
| character_set_client     | latin1                           |
| character_set_connection | latin1                           |
| character_set_database   | latin1                           |
| character_set_results    | latin1                           |
| character_set_server     | latin1                           |
| character_set_system     | utf8                             |
| character_sets_dir       | /usr/local/share/mysql/charsets/ |
+--------------------------+----------------------------------+
7 rows in set (0.01 sec)


на втором хосте (linux):

mysql> show variables like "char%";
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
7 rows in set (0.00 sec)


mysqldump на host1 и потом mysql <dump.sql не приводит ни к чему хорошему - русский текст в таблице корежится до неузнаваемости.

Пробовал предварительно сделать
alter table $table CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin
для всех таблиц базы на первом хосте

потом dump и restore на втором - все тоже самое, русские имена корежатся до крякозябр :(

Поиск в гугле внятностей не принес, в доке на mysql ничего подобного не разбирается (в рамках переноса на другой хост).

Кто нибудь занимался? Как решить проблему?


Опытным путем выяснилось, что, если в первом или втором описываемых вариантах, перед select() на новом хосте дать команду 
 set  character_set_results="latin1";
то русский язык появляется...

А как бы сделать, чтобы latin1 вообще не упоминался? 

eightn
()

проверка подписи файлов перед запуском

Форум — Security

Есть ли возможность в системе (linux/freebsd) организовать проверку цифровых подписей запускаемых файлов? Т.е. ядро перед запуском бинарника должно проверять, имеет ли бинарник цифровую подпись, если имеет - разрешать запуск, если нет - отказывать в доступе?

Или не имеет смысла искать геморрой на голову, а просто монтировать партишены с запускаемыми файлами в r/o, а остальные - с noexec флагом? И, естественно, периодически проверять контрольные суммы файлов системамами наподобие AIDE ?

eightn
()

Cyrus Imap - single domain --> virtual domains /openldap, sasl/

Форум — Admin

Столкнулся c непонятками - как перевести настроенную систему
из single domain в multidomains (virtual domains).

Вкратце. Был один домен "dc=company,dc=ru.", емейлы хранились в 
attr=email, ou=users,dc=company,dc=ru.
Добавили второй домен "dc=abdc,dc=ru.", с такой же схемой хранения емейл-ов.
Как теперь удружить со всем этим делом sasl и cyrus-imap?



Подробнее:

Есть почтовая система на openldap, postfix, cyrus-imap(2.2.12), cyrus-sasl(2.1.21).
Пользователи и их емейлы храняться в базе ldap в ветке ou=users,dc=company,dc=ru.
Аттрибут Mail. 
К примеру:

dn: uid=ivanov,ou=users,dc=company,dc=ru
uid: ivanov
mail: ivanov@company.ru
objectClass: gosaMailAccount
userPassword:: <........>=

Для приема почты в Postfix-е настроен поиск нужных uid-ов/email-ов пользователей
непосредственно в openldap базе, с этим проблем нет.

Прием почты пользователями (через imap) и отправка ее пользователями через smpt postfix.
Пользователи аутентифицируются при приеме/отправке указывая свой login(совпадающий с uid) и пароль.
Сервера, в свою очередь, проверяют пользователей через cyrus-sasl.

Sasl ,sk настроен следующим образом:

ldap_servers: ldap://localhost/
ldap_bind_dn: cn=sasl,ou=DSA,dc=company,dc=ru
ldap_bind_pw: <.............>
ldap_version: 3
ldap_search_base: dc=company,dc=ru
ldap_filter: (|(uid=%u)(cn=%u))

Параметры saslauthd: /usr/sbin/saslauthd -a ldap

Настройки Cyrus-imap, imapd.conf
sasl_mech_list: plain
sasl_pwcheck_method: saslauthd
username_tolower: 1
virtdomains: off


Все хорошо до тех пор, пока не пришлось добавить еще одну компанию в базу ldap.
Появилась ветка ou=users,dc=abcd,dc=ru. Соответственно, внутри емейлы выглядят так:

dn: uid=petrov,ou=users,dc=abcd,dc=ru
uid: petrov
mail: petrov@abdc.ru
objectClass: gosaMailAccount
userPassword:: <........>=

Возникает вопрос - как теперь интегрировать все это дело с sasl-ом и cyrus-imap.

Как было сделано. 
Так как sasl-у нельзя указать несколько "ldap_search_base", приходится менять в saslauthd.conf
следующее:
ldap_search_base: dc=%2,dc=ru
ldap_filter: (mail=%u)
а запускать saslauthd с параметрами "-a ldap -r".

В качестве логина пользователя теперь придется использовать не uid, а полный емейл, т.е. 
было "petrov", стало "petrov@abcd.ru". В результате "abcd.ru" распознается, как realm
(согласно ключу "-r") и вторая его часть ("abdc") будет подставлена вместо "%2". 
Тем самым поиск по ldap-базе будет произвен, а нужный параметр (емейл адрес) найден.
Sasl вернет "OK", если пароль пользователя совпадет.

С Postfix-ом (на отправку) такая схема работает на ура, достаточно у пользователей изменить логин-ы
вышеописанным способом и все.

Большая сложность возникает с cyrus-imap-ом.
Сервер получает необходимые для аутентификации login@realm/password, sasl возвращает ему "OK",
но вот перейти к нужному почтовому ящику Cyrus-imap не может.
Ведь он ищет почтовый ящик вида
user@realm (в нашем случае ivanov@company.ru), а у него есть лишь ящики вида
user.ivanov
user.sidorov
user.hrenov
и так далее

Возникает вопрос - как можно, сохранив неизменными уже созданные ящики, переключится на новую 
схему с несколькими доменами?

Для вновь созданных пользователей по вышеописанной схеме, проблем быть не должно, ведь 
ящики вновь созданных пользователей примут вид
user.ivanov@company.ru
user.sidorov@company.ru
user.hrenov@abcd.ru
user.petrov@abcd.ru

Но как быть с уже существующими ящиками? Cyrus-imap не поддерживает переименование корневых ящикив :(

Возможно, надо копать в сторону поддержки виртуальных доменов
virtdomains: on
но я не понял, как это будет работать.

У меня возникла идея найти параметр, который будет отрезать realm (все, что идет после символа '@'
 вместе с ним самим). Правда в этом случае придется заботится о поддержке уникальности uid-ов
в различных доменов, но в моем случае uid-ы (логины пользователей без realm-ов) будут уникальными.
К сожалению, я не нашел ни одного параметра, который бы позволял сделать это
Вот эти два параметра что-то явно делают, но явно не то, что надо
loginrealms: company.u abcd.ru
afspts_localrealms: company.u abcd.ru
так как при их активации (по одному или вместе), либо вообще нельзя было аутентифицироваться на
imap-сервере, либо аутентификация проходила, но cyrus-imap не мог найти ящик пользователя 
(т.е., вероятно, искался ящик пользователя, явно не соответствующий его uid-у).

Можно ли добиться решения моей задачи? В идеале, достаточно заставить cyrus отрезать realm лишь
от первого домена (@company.ru), а все остальные - оставлять как есть.
Ну или отрезать все realm-ы совсем, но предварительно передавать в sasl полный логин пользователя,
вместе с realm-ом.
Т.е. сначала в sasl передаем "ivanov@company.ru", а потом ищем почтовый ящик пользователя
вида 
user.ivanov (т.е. используем в качестве имени ящика лишь "ivanov")


eightn
()

автоочистка открытой файлопомойки

Форум — Admin

Есть обычная файлопомойка, организованная на шаре на samba 3.x Любой пользователь сети может закачивать и скачивать оттуда файлы.

Вот только проблема - часто пользователи забывают удалить за собой не нужные более файлы.

Каким образом можно организовать автоочистку этой директории?

Конструкция вида

find /tmp/samba_share/ -type f -mtime +100 -exec rm -f {} \;

работает не так, как хотелось (автоудаление всех файлов, появившихся на шаре более 100 дней назад). Ведь mtime файла, копируемого на шару, не меняется на текущее время, а остается старым временем файла. Тем самым, если мы копируем на шару файлы с датой создания "прошлый год", то они сразу же и удаляться :(

eightn
()

samba member of ADS & user mapping

Форум — Admin

 Есть samba 3.0.14 (и 3.0.20), включенная мембером в ADS Windows домен DOMAIN.

На ней расшарена одна директория \\tmp. Пользователи домена, при попытке создать файлы внутри этой папки их успешно создают, но права на файлы выставляются как nobody:nobody

ls -l /tmp/samba/
total 32
drwxr-xr-x  2 nobody nobody 4096 Oct  6 10:53 test2
drwxr-xr-x  2 nobody nobody 4096 Oct  6 16:31 test3
drwxr-xr-x  2 nobody nobody 4096 Oct  6 10:50 test_new

Соответственно, не пользователи не могут получить доступ к директориям (с самбовской шары), на которые средстваими ос установлены права доступа для определенных групп:

ls -l
dr-xr-x---  2 10092       4096 Oct  4 18:57 business

Самба собрана с поддержкой керберос и winbind, net ads join в домен прошел успешно. ОС видит пользователей из вин домена:

wbinfo -u и wbinfo -g выдает пользователей и группы из вин-домена (ну и локальные)
getent passwd выдает passwd файл локальных пользователей и доменных.
id "domain\\user" выдает информацию о пользователе домена

Но тем не менее, все попытки залогинится доменным пользователем в самба-шару, оканчивается тем, что пользователю выдается гостевые права:

auth/auth_util.c:make_user_info_map(224) make_user_info_map: Mapping user [VEGA]\[user1] from workstation [CREATIVE]
<...>
check_ntlm_password:  Checking password for unmapped user [VEGA]\[user1]@[CREATIVE] with the new password interface
libsmb/trustdom_cache.c:trustdom_cache_fetch(184) no entry for trusted domain VEGA found.

auth/auth_util.c:make_user_info(132) attempting to make a user_info for user1 (user1)
auth/auth_util.c:make_user_info(142) making strings for user1's user_info struct
auth/auth_util.c:make_user_info(184) making blobs for user1's user_info struct
auth/auth.c:check_ntlm_password(219) check_ntlm_password:  Checking password for unmapped user [VEGA]\[user1]@[CREATIVE] with the new password interface
auth/auth.c:check_ntlm_password(222) check_ntlm_password:  mapped user is: [DOMAIN]\[user1]@[CREATIVE]
lib/util.c:dump_data(1995)  [000] 9C 7A 63 2B CD 42 0F 09                           .zc+.B..
auth/auth_winbind.c:check_winbind_security(80)
  check_winbind_security: Not using winbind, requested domain [DOMAIN] was for this SAM.
auth/auth.c:check_ntlm_password(312)
  check_ntlm_password:  Authentication for user [user1] -> [user1] FAILED with error NT_STATUS_NO_SUCH_USER

Т.е. такое впечатление, что самба не использует winbind для проверки существования и аутентификации пользователя :(

Конфиг самбы
===================================================================
[global]
  workgroup = DOMAIN
  realm = DOMAIN.COMPANY.RU

  auth methods = winbind
  winbind use default domain = yes

  netbios name = VEGA

  log file = /var/log/samba/log.%m
  max log size = 5000
  log level = 10

  map to guest = bad user

  security = ADS
  password server = *
  encrypt passwords = yes

  socket options = TCP_NODELAY SO_RCVBUF=16384 SO_SNDBUF=16384

  local master = no
  os level = 20
  domain master = no
  preferred master = no

  idmap uid = 20000-30000
  idmap gid = 20000-30000
  winbind enum users = yes
  winbind enum groups = yes

  dns proxy = no

[tmp]
    comment = tmp resource
    path = /tmp/samba
    writable = yes
    browseable = yes
    public = yes
===================================================================


Конфиг mit-krb5-1.4.1
===================================================================
[libdefaults]
        ticket_lifetime = 600
        default_realm = DOMAIN.COMPANY.RU
        default_tkt_enctypes = des3-hmac-sha1 des-cbc-crc
        default_tgs_enctypes = des3-hmac-sha1 des-cbc-crc

[realms]
        DOMAIN.COMPANY.RU = {
        kdc = dc1.domain.company.ru
        admin_server = dc1.domain.company.ru
        }

[domain_realm]
        .domain.company.ru = DOMAIN.COMPANY.RU
        domain.company.ru = DOMAIN.COMPANY.RU

[kdc]
        profile = /etc/krb5kdc/kdc.conf

[logging]
        kdc = FILE:/var/log/krb/krb5kdc.log
        admin_server = FILE:/var/log/krb/kadmin.log
        default = FILE:/var/log/krb/krb5lib.log

===================================================================


Пробовал убирать строки
  auth methods = winbind
  winbind use default domain = yes
но изменений не заметно. 
eightn
()

создание цепочки сертификатов

Форум — Security

А как создавать цепочки подписанных сертификатов в openssl?

Создал собственный корневой CA (company.ru) Выдал и подписал им сертификаты для почтового сервера (mail.company.ru) и radius сервера (radius.company.ru).

Создал клиентские сертификаты client1,2,3 для клиентов, для работы с почтовым сервером, подписал их тоже корневым сертификатом CA (company.ru).

Все замечательно работает.

Но возник вопрос. В песпроводной сети используется WPA шифрование через EAP/TLS с использованием radius сервера. Аутентификация клиента - по сертификату.

И тут оказалось, что клиентские сертификаты, выданные для почты, отлично подходят для аутентификации на радиус сервере, т.е. любой клиент, которому выдан почтовый клиенсткий сертификат, может работать и с беспроводной сетью. Вероятно, он сможет работать и с веб-сервером, если там тоже настроить аутентификацию посредством сертификатов и тд.

Другими словами, одного сертификата клиента хватит для всего. Это хорошо, но если нужно разграничить доступ клиентам (например, всем можно пользоваться своей почтой, но только избранным - подключаться к беспроводной сети). Что тут делать?

Пришло в голову, что нужно подписывать клиентские сертификаты не корневым (CA, company.ru), а соответствующими сертификатами серверов - mail.company.ru, radius.company.ru (а они, в свою очередь, уже были подписаны корневым центром CA). Теоретически, если я правильно понимаю идеологию сертификатов, в этом случае сертификат, выданный для работы с почтой, не подойдет для аутентификации на радиус-сервере.

К сожалению, попытка подписать клиенсткий сертификат серверными не удалась.

Точнее, подпись, как таковая, успешно проходит, я получаю файл сертификата: ------ Certificate: Data: Version: 3 (0x2) Serial Number: 6 (0x6) Signature Algorithm: md5WithRSAEncryption Issuer: C=RU, ST=Euro, L=Moscow, O=company.ru, OU=testlab, CN=radius.company.ru/emailAddress=eightn@company.ru Validity Not Before: Jun 6 12:22:02 2005 GMT Not After : Jun 6 12:22:02 2007 GMT Subject: C=RU, ST=Euro, L=Moscow, O=company.ru, OU=testlab, CN=client3/emailAddress=eightn@company.ru Subject Public Key Info: Public Key Algorithm: rsaEncryption ------

но вот при попытке проверки такого сертификата

openssl verify -CAfile company.ru-ca.crt client3.crt выдается примерно следующее: client3.crt: /C=RU/ST=Euro/L=Moscow/O=company.ru/OU=testlab/CN=client3/emailAddress=eightn@co mpany.ru error 20 at 0 depth lookup:unable to get local issuer certificate (вне зависимости от того, что ставить в CAfile - корневой сертификат (company.ru-ca.crt) или сертификат radius-сервера (radius.company.ru.crt), который в свою очередь, подписан корневым.

Указание пути -CApath к сертификатам тоже не помогает (выдается та же ошибка). Та же ошибка выдается и при перечислении сертификатов цепочки: openssl verify -CAfile company.ru-ca.crt radius.company.ru.crt client3.crt

radius.company.ru.crt: OK client3.crt: /C=RU/ST=Euro/L=Moscow/O=company.ru/OU=testlab/CN=client3/emailAddress=eightn@co mpany.ru error 20 at 0 depth lookup:unable to get local issuer certificate

eightn
()

миграция /etc/passwd -> postfix virtual mailbox/ sql

Форум — Admin

Есть почтовая система на базе sendmail, пароли пользователей хранятся в /etc/passwd (все это крутится под redhat linux 7.3)

Задача - мигрировать все это под postfix, подключение виртуальных доменов и хранение пользователей в mysql базе. В качестве pop3/imap сервера - courier-imap или cirus-imap. При отправке сообщений через smtp - так же авторизация пользователей.

Все, что написано во втором обзаце - реализовать не проблема. У меня лишь возикает вопрос, как мигрировать базу существующих пользователей в mysql? Ни postfix (auth via cirus-sasl), ни courier-imap не смогут же работать с криптованными в /etc/passwd паролями... Или я что-то недопонял?

eightn
()

синхронизация директорий в обе стороны (двусторонняя)

Форум — Admin

Есть две директории с файлами на разных samba-серверах, с которыми работают виндовс-пользователи. Задача - каким то образом добиться синхронизации этих директорий с файлами в обе стороны. Т.е. файлы могут меняться как на samba1, там и на samba2.

Типы файлов - документы (.doc, xls) и немного бинарных файлов (.psd, jpg). Оба samba-сервера берут базу пользователей из одного хранилища (ldap), так что проблем с правами быть не должно. Но как организовать двухстороннюю синхронизацию? И как можно защитится от конфликта, когда один и тот же файл будет одновременно изменен (записан) на samba1 и samba2 машинах?

Монтировать на samba2 директорию (которую нужно синхронизирвать) с samba1 (или наоборот) не вариант - объемы файлов довольно большие (но изменяются файлы относительно редко), а канал между машинами узкий.

Пока нашел Unison File Syncronizer http://www.cis.upenn.edu/~bcpierce/unison/index.html но еще не ставил. Кто какой софт для этого дела применяет?

eightn
()

cyrus-imad: автоудаление «помеченных к удалению» писем

Форум — Admin

Можно ли организовать автоудаление писем (на стороне сервере) в ящиках пользователей по критерию "письмо помечено к удалению" (а в идеале - письмо старше N дней и оно помечено к удалению)?

Сейчас работает связка cyrus-imad (в режиме imap) со стороны сервера и много клиентов с ms outlook-ами - на стороне клиента. Этот дурной outlook не умеет сам удалять письма из imap (т.е. для этого приходится выбирать в его меню пункт "очистить помеченные к удалению письма", что сильно не удобно для пользователей. Особенно в той связи, что, так как помеченные на удаление письма в отдельную директорию не переносятся (outlook это тоже не умеет), то приходится включать режим "скрывать помеченные к удалению письма", а то incoming постоянно замусоривается вот такими зачеркнутыми (помеченными к удалению) письмами.

В идеале хотелось бы удалять такие письма на сервере, что бы не тревожить пользователей :) Такое возможно?

eightn
()

openldap + outlook2003 + sambaPDC + групповые политики

Форум — Admin

Поднял openldap 2.2 + samba 3.13 в качестве PDC.
(руководствовался, в основном, этой докой http://samba.idealx.org/smbldap-howto.en.html)

Все бы замечательно, но захотелось емейлы пользователей так же хранить в ldap-базе.
Пользователи - на outlook 2003 сидят.
Нашел вот этот документ http://www.yo-linux.com/TUTORIALS/LinuxTutorialLDAP-GILSchemaExtension.html
Там рассказывается, что нужно добавить в схемы ldap, что бы outlook видел емейлы.

Да, он их конечно видит (после подключения адресной книги в LDAP-хранилище), 
но не сразу, а только если в адресной книге нажать поиск, после чего ввести
пробел и ентер (звездочка в русском Outlook-е не срабатывает).
Да, еще в slapd.conf надо было прописать
access to dn.exact="" filter="(supportedControl=1.2.840.113556.1.4.319)"
(согласно http://www.openldap.org/lists/openldap-software/200408/msg00321.html)
Ибо в противном случае outlook ругается на "unavailable critical extension" и ничего не ищет.
Правда у меня openldap-2.2.24 при такой строке (первой в конфиге access-ов) вываливается 
с "segmentation fault".
Но вот такая строка
access to dn.exact="" attrs=supportedControl
ему нравится гораздо больше (надеюсь, она нигде больше не помешает).


Вопрос - можно ли как то заставить Outlook сразу при нажатии на значек адресной книги видеть всех
пользователей с емейлами в ldap-базе?


Идем дальше.
Я нашел две возможности администрировать PDC домен на самбе
1. С помощью ms-овской утилиты usrmgr.exe (от winnt)
2. С помощью IMC вебинтерфейса от idealx. http://www.idealx.org/prj/imc/about.html

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

Да, при добавлении через .ldif файлы можно указать что угодно, но существуют ли какие либо веб-интерфейсы
с подобной функциональностью? Или может в IMC как то можно добавить такую возможность?
Я не нашел, как.


И последний вопрос. Не подскажите ли хорошую доку, как можно под samba PDC доменом организовать аналог
групповых политик (как в домене под windows2000). Понятно, что полного аналога не получится, 
но хотя бы нечто близкое :)


p.s. вопрос по одновременному заданию емейлов пользователям (вместе с созданием новых аккаунтов) для
меня наиболее важен.
eightn
()

заблокировать для данного MAC-адреса выдачу IP-адреса средствами iptables неполучается

Форум — Admin

Требуется запретить выдачу динамического адреса для заданного MAC адреса (точнее некого списка mac-адресов) в локальной сети.

На машине, где и пытаемся настроить блокировку, стоит dhcp-сервер, который выдает всем желающим адреса из пула 10.0.0.0/24.

Предположительно, правило вида 
iptables -I INPUT -i eth0 -p udp --sport 68 --dport 67 -m mac --mac-source 11:22:33:44:55:66 -j DROP 
в iptables должно бы заблокировать для MAC адреса 112233445566 выдачу ему динамического адреса от dhcpd, 
стоящего на той же машине. Ан нет, адреса продолжают выдаваться, 
хотя счетчик в iptables, говорящий о том, что правило сработало, исправно увеличивается:

iptables -nxvL INPUT

Chain INPUT (policy DROP 13 packets, 668 bytes)
    pkts      bytes target     prot opt in     out     source               destination
       3     1728 DROP       udp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           udp spt:68 dpt:6
7 MAC 11:22:33:44:55:66

Более того, прописав правило вида
iptables -I INPUT -m mac --mac-source 11:22:33:44:55:66 -j DROP 
(т.е. уничтожаем вообще все пакеты с этого MAC-адреса), тоже не приводит к блокировки выдачи
этому хосту динамического IP, в логах DHCP наблюдаем:

dhcpd: DHCPDISCOVER from 11:22:33:44:55:66 via eth0
dhcpd: DHCPOFFER on 10.0.0.63 to 11:22:33:44:55:66 via eth0
dhcpd: DHCPREQUEST for 10.0.0.63 (10.0.0.1) from 11:22:33:44:55:66 via eth0
dhcpd: DHCPACK on 10.0.0.63 to 11:22:33:44:55:66 via eth0

хотя по iptables -nxvL видно, что счетчик пакетов/байтов для этого правила после каждого
запроса увеличивается, т.е. правило (теоретически?) работает.
Да и практически оно тоже работает, так как после ввода второго правила с того хоста с MAC-ом 11:22:33:44:55:66
мы таже пинговать машину, где стоит dhcp-сервер не можем.
Тем не менее, можем исправно получать от нее адрес по dhcp :(

Получается, что dhcp сервер получает пакеты раньше, чем срабатывает iptables?

К сожалению, я не нашел в iptables возможности создать правила, 
где можно было бы анализировать исходящий MAC адрес, например
iptables -I OUTPUT -o eth0 -p udp --sport 67 --dport 68 -m mac --mac-destination 11:22:33:44:55:66 -j DROP 

Эта ситуация проверялась на трех машинах
dhcp-3.0_p2-r6 и  dhcpcd-1.3.22_p4-r5 (Gentoo Linux)
Linux kernel 2.6.9
iptables v1.2.11
eightn
()

sshd авторизация по ключам для пользователя не работает

Форум — Admin

openssh 3.9

настраиваю авторизацию по ключам. Генерю ключ, публичную его часть
кладу на машину, к которой хочу подключится по ssh (в файл 
~/.ssh/authorized_keys).

Пытаюсь подключится пользователем user (через shellguard). В ответ получаю 
Exception.
access denied: 51

Этот же ключ кладу в домашний каталог рута
/root/.ssh/authorized_keys

пытаюсь подключится, используя имя пользователя "root" 
(в конфиге sshd_config включена возможность логина рутом) 
система отлично пускает:
sshd[17228]: Accepted publickey for root from 1.2.3.4 port 3674 ssh2

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

Никак не могу понять, в чем тут дело, и как включить возможность
для обычных, не рутовых, пользователей логинится с использованием
публичных ключей?

eightn
()

Bigsister и построение RRD-графиком CPU загрузки

Форум — Admin

Не могу понять, как заставить Bigsister (bigsister.sf.net) строить графики загрузки CPU?

В uxmon-net прописал
localhost(srv1) sarcommand="sar -A 1" cpuload

(дефолтовая команда sar -A %d 1) у меня работает, не знает sar, что такое "%d"
sar 5.05, gentoo linux

В вебинтерфейсе мониторинга появляется колонка "CPU", где видна текущая
загрузка процессора (или ее пороговые изменения, приводящие к смену цвета лампочки).
Но графики RRD bigsister по загрузке процессора не строит, файлов в var/graphs,
имеющих в названии "load" или "cpu", не появляется.

Графики по Service response times, Disk Usage, memory Usage и тд нормально строятся.
Т.е. данные по ним собираются.

Чего именно не хватает BigSister, что бы строить график загрузки процессора?

Bigsister v. bs-0.99b2
eightn
()

RSS подписка на новые темы