Squid NTLM авторизация в домене Samba

Январь 25, 2012

Необходимо настроить NTLM авторизацию на ОС CentOS. Данная авторизация позволяет организовать доступ в интернет без ввода логина и пароля.

Исходные данные:

1. ОС – CentOS 5.7 x32

# cat /etc/redhat-release
CentOS release 5.7 (Final)

2. Домен на Samba

Установлены следующие пакеты Samba:

# yum list installed | grep samba
samba.i386 3.0.33-3.29.el5_7.4 installed
samba-client.i386 3.0.33-3.29.el5_7.4 installed
samba-common.i386 3.0.33-3.29.el5_7.4 installed

Параметры домена:

# more /etc/samba/smb.conf | grep netb
netbios name = SLHSRV
.........

# more /etc/samba/smb.conf | grep work
workgroup = KONTORASLH
comment = Network Logon Service
……….

IP адрес сервера – 10.0.15.2

3. Версия Squid

# squid -v
Squid Cache: Version 2.6.STABLE21
......

установленный пакет:

# yum list installed | grep squid
squid.i386
7:2.6.STABLE21-6.el5 installed

Имеем настроенную авторизацию следующим способом:

auth_param basic program /usr/lib/squid/smb_auth –W\ KONTORASLH -U 10.0.15.2
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive on
external_acl_typeunix_group %\ LOGIN /usr/lib/squid/squid_unix_group -p
acl samba_users proxy_auth REQUIRED

4. На сервере настроен DNS

Подробно описывать настройки сервера не буду. Остановлюсь на настройках прокси сервера в части, касающейся NTLM авторизации.  Рассмотрим два способа:

Первый: наиболее оптимальный. Без Winbind и ввода сервера в домен.
Второй: Использую Winbind, и вводя сервер в домен.

Приступаем к первому способу.

Добавляем в squid.conf следующие строки:

auth_param ntlm program /usr/lib/squid/ntlm_auth KONTORASLH/10.0.15.2
auth_param ntlm children 20
auth_param ntlm keep_alive on
#######################################
выше настроек : auth_param basic program
........................................
#######################################
external_acl_type unix_group %LOGIN /usr/lib/squid/squid_unix_group -p -s

строки необходимо добавить перед строками базовой авторизации (auth_param basic), auth_param basic убирать не следует, так как не все программы поддерживают такую авторизацию (например skype).

auth_param – Этот тэг используется для определения параметров для различных схем аутентификации
поддерживаемых Squid.

format: auth_param scheme parameter [setting]

auth_param ntlm program – указывает на использование хелпера авторизации, расположенного в каталоге /usr/lib/squid/, и протокол авторизации.

auth_param ntlm children 20 – указано максимально количество одновременно запускаемых хелперов

"keep_alive" on|off -

Эта опция включает использование постоянного соединения при инициализации запроса аутентификации. Есть сведения, что некоторые версии MS IE имеют проблемы с этим, но лучше будет если эта опция включена.

external_acl_type -

Этот тэг позволяет определить внешние ACL. Внешние ACL это такие ACL, которые не входят в набор стандартных типов ACL. Например, это могут быть самописные (или откуда- нибудь взятые) скрипты (вспомогательные программы), которые используя переменные Squid осуществляют некоторое действие. Такие скрипты запускаются вместе со Squid отдельным процессом.

external_acl_type name [options] FORMAT.. /path/to/helper [helper arguments..]

Хелпер входит в пакет squid.

# /usr/lib/squid/squid_unix_group --help
/usr/lib/squid/squid_unix_group: invalid option -- -
Unknown option '--'.
Usage: /usr/lib/squid/squid_unix_group -g group1 [-g group2 ...] [-p] [-s]

-g group
The group name or id that the user must belong in order to
be allowed to authenticate.
-p Verify primary user group as well
-s Strip NT domain from usernames

Второй способ.

добавляем следующие строчки также перед базовой авторизацией:

......
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 20
auth_param ntlm keep_alive on
......

Нужно ввести сервер в домен командой:

net join -U samba

После запуска squid-a:

В логах пишет:

Jan 24 11:42:35 slhsrv (ntlm_auth): [2012/01/24 11:42:35, 0] utils/ntlm_auth.c:get_winbind_netbios_name(172)
Jan 24 11:42:35 slhsrv (ntlm_auth): could not obtain winbind netbios name!
Jan 24 11:42:47 slhsrv (ntlm_auth): [2012/01/24 11:42:47, 0] utils/ntlm_auth.c:get_winbind_domain(146)
Jan 24 11:42:47 slhsrv (ntlm_auth): could not obtain winbind domain name!
Jan 24 11:42:47 slhsrv (ntlm_auth): [2012/01/24 11:42:47, 0] utils/ntlm_auth.c:get_winbind_netbios_name(172)
Jan 24 11:42:47 slhsrv (ntlm_auth): could not obtain winbind netbios name!
Jan 24 11:42:57 slhsrv (ntlm_auth): [2012/01/24 11:42:57, 0] utils/ntlm_auth.c:get_winbind_domain(146)
Jan 24 11:42:57 slhsrv (ntlm_auth): could not obtain winbind domain name!
Jan 24 11:42:57 slhsrv (ntlm_auth): [2012/01/24 11:42:57, 0] utils/ntlm_auth.c:get_winbind_netbios_name(172)
Jan 24 11:42:57 slhsrv (ntlm_auth): could not obtain winbind netbios name!

Запускаем Winbind:

# /etc/init.d/winbind start

Как уже упоминалось, для второго способа нужен Winbind. отличий в Работе не заметил, так первый способ более предпочтителен для домена на SAmba.

Немного теории:

Исходный код Squid идет с несколькими типами процессов аутентификации. Включая:

  1. LDAP: использует Lightweight Directory Access Protocol
  2. NCSA: использует NCSA-стиль для файла имен пользователей и паролей.
  3. MSNT: использует Windows NT authentication domain.
  4. PAM: использует Linux Pluggable Authentication Modules scheme.
  5. SMB: использует SMB-север типа Windows NT или Samba.
  6. getpwam: использует старомодный файл паролей old-fashioned Unix.

      Пользователи будут аутентифицироваться, если squid настроен на использование ACL типа proxy_auth.
Броузер посылает пользовательский запрос на аутентификацию в заголовке Authorization.
Если Squid получает запрос и если список правил http_access содержит ACL типа proxy_auth, Squid ищет загловок Authorization. Если заголовок присутствует, Squid декодирует его и извлекает имя пользователя и пароль.

Если заголовок отсутствует, Squid возвращает HTTP-ответ со статусом 407 (Proxy Authentication Required). Пользовательский агент (броузер) получает ответ 407 и просит пользователя ввести имя и пароль. Имя и пароль кодируется и посылается в заголовке Authorization для последующих запросов к прокси.

Имя пользователя и пароль фактически передаются «открытым текстом» между броузером и прокси. Поэтому вы не должны использовать тот же пароль и имя пользователя, который вы используете для вашего аккаунта.

Аутентификация фактически происходит вне основного процесса Squid. Когда Squid стартует, он запускаеть несколько процессов аутентификации. Эти процессы читают имена пользователей и пароли со стандартного ввода и выдают "OK" или "ERR" на стандартный вывод. Подобная техника позволяет вам использовать большое количество различных схем аутентификации, однако вы можете использовать только одну схему в данный момент времени.

Аутентификация NTLM

NTLM представляет собой расширенную версию старого протокола аутентификации LM (LAN Manager). NTLM работает посредством вопросов/ответов между сервером и клиентом без передачи пароля пользователя через сеть в открытом виде. Клиент должен подтвердить то, что он знает пароль пользователя, посредством отправки зашифрованного хэша.

NTLM функционирует следующим образом:

  1. Пользователь указывает имя пользователя, пароль и имя домена при входе на компьютер-клиент.
  2. Клиент создает хэш данного пароля и удаляет оригинал.
  3. Клиент отправляет серверу имя пользователя в открытом виде.
  4. Сервер отправляет клиенту 16-битный фрагмент случайных данных.
  5. Клиент шифрует этот фрагмент, а также хэш пароля пользователя и передает их на сервер.
  6. Сервер передает имя пользователя, случайный фрагмент данных и ответ клиента на контроллер домена.
  7. Контроллер домена шифрует отрезок случайных данных вместе со своим собственным хэшем пароля пользователя, после чего сравнивает их с элементами, присланными сервером.
  8. Если значения совпадают, контроллер домена уведомляет сервер об успешном завершении аутентификации.
  9. Если значения или имя пользователя не совпадают, контроллер домена уведомляет об этом сервер, который передает клиенту соответствующее сообщение. После этого браузер клиента запрашивает у пользователя аутентификационные данные.

Возможно отключать и включать данную авторизацию в самом браузере:
Первоисточник: http://skeletor.org.ua/?p=422

Приведу некоторые выдержки:

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

1) набираем в браузере about:config
2) переходим в раздел NetWork и снимаем галочку с параметра Enable NTLM
3) перезапускаем браузер.

Правда есть один ньюанс (так сказать неудобство): при первом запуске придётся ввести логин пароль (полностью, то есть с доменом) и поставить галочку «Сохранить». Теперь при каждом последующем открытии браузера табличка авторизации появляться будет, и нужно будет просто жать «Ок». Неудобно, но что поделаешь.

Примечание: иногда на некоторых ОС наоборот приходилось включать NTLM-авторизацию. Возможно это так же зависило от версий браузера и ОС.

FireFox, Chrome: они поддерживают, хотя нужно немного по шаманить. Опишу несколько вариантов, которые раздобыл в интернете, возможно вам придётся перепробовать все, пока не найдёте тот, который подошёл вам.

1) нужно будет добавить в реестре HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa параметр под названием LmCompatibilityLevel типа DWORD и присвоить ему значение 1. После чего надо будет перегрузить компьютер (именно этот вариант мне подошёл)

2) Чтобы Firefox мог проходить ntlm авторизацию, вроде достаточно открыть в адресной строке about:config и изменить параметры на такие:

network.negotiate-auth.delegation-uris = http://,https://
network.negotiate-auth.trusted-uris = http://,https://

После чего перезапустить браузер.

3) Открываем редактор политик (gpedit.msc) Конфигурация компьютера -> Конфигурация windows -> Параметры безопасности -> Локальные Политики -> Параметры Безопасности -> Сетевая безопасность: уровень проверки подлинности LAN Manager и ставим параметр Отправлять LM и NTLM – использовать сеансовую безопасность NTLMv2 при согласовании.

После чего закрываем политику и перегружаемся.

Если у вас английская версия, тогда так: machine policy-> computer config->windows setting->local policies->security option->Network security: LAN Manager authentication level и выбрать LM & NTLM – Use NTLMv2 session if negotited.

От себя: у меня все заработало. шаманить с самими браузерами не пришлось. Но информация по включению и отключению NTLM в браузере полезна.

Полезные статьи:

http://www.securitylab.ru/analytics/362448.php
http://www.chla.ru/index.php/security
http://wiki.squid-cache.org/ConfigExamples#Authentication

25 января Татьянин День

Январь 25, 2012

Просто тест

Maslenitsa

Март 14, 2011

Бакшевская Масленица

Survey video

 

Обзорный видео ролик

Два ролика с конкурсами и штурмом.

Two rollers with competitions and storm.

Part  I

Part  II

 

Сжигаем чучело:

We burn a stuffed animal

http://video.rutube.ru/f6cc6e2cd2631403726124719606be90

Fortress storm

Штурм

And still a roller

 

штурм

Масленица. Краткий обзор. Черновик.

Февраль 2, 2011

 

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

Содержание.

1. Исторический обзор. Откуда пошел праздник. Как праздновался. Мифология языческого праздника. Религиозный аспект.

2. Масленица в рецептах. Какие традиционные блюда едят на масленицу. Рецепты наиболее популярных.

3. Народное творчество. Частушки, песни , музыка.

4. Масленица в русском искусстве. (Живописи, музыке, кино, эстрада )

5. Современные празднования

5.1  В Москве 

5.2  Бакшевская Масленица.

5.3 Интегрированный урок художественного труда и право-славной культуры от Софьи Феликсовны

5.4  Видеоролик от Александра .

5.5  Интервью от Станислава.

 

Читать далее…

Bonding Linux. VLAN. iptables CLUSTERIP.

Июнь 3, 2010

 

В продолжении предыдущей статьи:

1. Введение.

Нужно настроить балансировку (распределение нагрузки)  и резервирование доступа к веб приложениям, имея один общий публичный адрес.

Для этих целей можно использовать протокол CARP.

CARP – Common Address Redundancy Protocol — протокол избыточности общего адреса

Читать далее…

Load Balancing в Linux с использованием iptables с расширением CLUSTERIP.

Май 27, 2010

Введение.

Часто для Web приложений необходимо балансировать нагрузку. Имеем один общий виртуальный адрес на несколько узлов, к примеру 2-а. С помощью программных средств нагрузка распределяется равномерно между ними.  Если один узел выходит из строя – вся нагрузка падает на второй.

Балансировка (выравнивание) нагрузки — распределение процесса выполнения заданий между несколькими серверами сети с целью оптимизации использования ресурсов и сокращения времени вычисления.

Система балансировки нагрузки Web-серверов – это инструментальное средство, предназначенное для переадресации клиентских запросов на наименее загруженный или наиболее подходящий Web-сервер из группы машин, на которых хранятся зеркальные копии информационного ресурса. Клиент не подозревает о том, что обращается к целой группе серверов: все они представляются ему в виде некоего единого виртуального сервера.

Рассмотрим один из способов – расширение CLUSTERIP для iptables, реализованное в виде модуля к ядру.

Дополнительный модуль для iptables -  CLUSTERIP позволяет создать простой кластер узлов, использующих общую пару адресов IP и MAC, без явной системы распределения (балансировки) трафика перед этим кластером. Соединения будут статически распределяться между узлами кластера.

Данный модуль к iptables, позволяет использовать один multicast MAC адрес на всех серверах кластера. Приняв запрос, за нодой кластера закрепляется обработка всех пакетов пришедших с клиентского IP (также можно учитывать порт назначения и отправки пакета).

Операция поддерживает несколько опций для создания и управления кластером.

–new

создает новый кластер ClusterIP. Эта операция всегда должна быть первой среди операций для данного ClusterIP.

–hashmode <режим>

задает режим хэширования (Распределения соединений между узлами кластера) и может принимать значения:

  • sourceip – распределение по адресу отправителя
  • sourceip-sourceport – адрес и порт отправителя
  • sourceip-sourceport-destport -адрес и порт отправителя, порт получателя
  • –clustermac mac

задает MAC-адрес для кластера. По сути, этот адрес является multicast-адресом канального уровня.

–total-nodes <количество>

задает общее число узлов в кластере.

–local-node <номер>

определяет локальный номер узла в кластере.

–hash-init rnd

задает случайное значение, используемое при инициализации hash-функции.

Для использования операции CLUSTERIP требуется ядро со включенной опцией CLUSTERIP target support. Если для опции было выбрано значение M, потребуется также загрузка модуля ядра ipt_CLUSTERIP.

Исходные данные:

  1. 2 а сервера – ivbal1 и ivbal2
  2. Операционная система CentOS 5.5
  3. Пакет СlusterIp

Установка пакетов.

#wget  -O /etc/yum.repos.d/CentOS-Testing.repo \ http://dev.centos.org/centos/5/CentOS-Testing.repo
# yum –enablerepo c5-testing install iptables-mod-CLUSTERIP

Добавляем экспериментальный репозитаоий и ставим пакет от туда. Маленькое но существенное замечание !!! -

Последний пакет CLUSTERIP не совместим с последней версией пакета iptables. Для того что бы поставить пакет, удаляем полностью пакеты связанные с iptables. Cмотри картинку.

image

Далее ставим пакет :

# yum –enablerepo c5-testing install iptables-mod-CLUSTERIP

по зависимостям ставится нужная версия iptables.

Далее подгружаем :

# modprobe ipt_conntrack
# modprobe ipt_CLUSTERIP

Уточнение:

Для того чтобы модуль ipt_conntrack, подгружался автоматически после рестарта iptables. Правим /etc/sysconfig/iptables-config :

image

Прописываем правила для iptables

Для node1 – ivbal1

# iptables –I INPUT -d 10.0.1.187 -i eth0 -j CLUSTERIP –new –clustermac 01:00:5e:00:00:20 –total-nodes 2 –local-node 1 –hashmode sourceip-sourceport
# service iptables save

для node2 – ivbal2

# iptables –I INPUT -d 10.0.1.187 -i eth0 -j CLUSTERIP –new –clustermac 01:00:5e:00:00:20 –total-nodes 2 –local-node 2 –hashmode sourceip-sourceport
# service iptables save

Опции модуля расписаны в введении.

Создаем алиасы сетевого интерфейса в нужной сети.

На обоих нодах одинаково. У меня для eth0 в node1, node2 – сеть 10.0.1.0\24.

DEVICE=eth0:0
BOOTPROTO=static
HWADDR=01:02:03:04:05:06
#HWADDR=E4:1F:13:2C:87:B0
IPADDR=10.0.1.187
NETMASK=255.255.255.0
ONBOOT=yes

Мак адрес можно не указывать, подхватывается мак интерфейса eth0.

Поднимать алиасы тоже нет необходимости – подымаются сразу на обоих машинах после рестарта интерфейса eth0 – на обоих машинах.

Node 2:

Меняем местами ноды.
# echo "+1" > /proc/net/ipt_CLUSTERIP/10.0.1.187

Возвращаем в исходное.

# echo "-1" > /proc/net/ipt_CLUSTERIP/10.0.1.187

Просмотр состояния :

# cat /proc/net/ipt_CLUSTERIP/10.0.1.187

Логи работающей системы:

image

Дополнительная информация. В работающей системе.

Состояние загруженных модулей:

image

Информация о модуле ipt_CLUSTERIP, ip_conntrack пакете iptables:

image

image

modinfo:

image

Информация по сетевым интерфейсам:

image

uname -a

Linux ivbal1 2.6.18-194.3.1.el5 #1 SMP Thu May 13 13:08:30 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux

Проверка.

Для проверки нужен веб-сервер. Установим Apache. yum – нам поможет.

далее сделаем тестовые страницы:

Node 1:

# cat << EOF > /var/www/html/index.html
NODE1
EOF

Node 2:

# cat << EOF > /var/www/html/index.html
NODE2
EOF

Запускаем :

# service httpd start

Заходим с третьей машины по удаленному адресу в браузере  http://10.0.1.187. Жмем – cntrl-shift – R  – обновлять без кэша. Видим как меняется на страничке надпись – NODE1 NODE2 NODE 1 ……..

Источники. Информации в интернете не много, но ее достаточно чтоб настроить балансировку основанную на модуле CLUSTERIP.

1. http://ben.timby.com/?p=48 Основная статья.

2. http://security.maruhn.com/iptables-tutorial/x8906.html

3. http://www.protocols.ru/modules.php?name=News&file=print&sid=103

Adaptec AIC-7902B U320 Host-RAID. RHEL.

Ноябрь 30, 2009

 

Столкнулся со странным на первый взгляд RAID – ом со следующим чипом – AIC-7902. Сей чип имеется встроенным на материнской плате нашего сервера IBM xSerias 346. Есть и отдельное исполнение в виде платы PCI-X.

Разобраться помогли две статьи.

1. Первая стаья на IXBT называется: Adaptec ASR-2230SLP: встречаем RAID-on-Chip (ROC).

В ней пишется о новинками в стане контроллеров для интерфейса Ultra320 SCSI. Проводяться тестирования, сравнения и т д …. Так у меня на работе довольно старые сервера IBM – x Series346, данная статья оказалась полезна и заинтересовала упоминанием чипа AIC-7902, который как раз и находиться в наших серверах. Интересные места приведены ниже.

Контроллеры Adaptec 2230SLP и 2130SLP базируются на новейшем ROC-микроконтроллере AIC-7942W разработки и производства самой Adaptec. Раньше (этот как раз и встроен в наш сервер) в ASR-2200S и ASR-2120S,  вместо AIC-7942W применялось два чипа — интерфейсный чип (например, AIC-7902 для Ultra320 SCSI) и процессор для обсчета конфигураций RAID (обычно Intel GC80302). Последний очень прилично (обжигающе) нагревался в работе, хотя радиатором и не снабжался.

В тестировании там использовалась материнская плата Gigabyte GA-8KNXP Ultra-64 на чипсете Intel E7210 (MCH i875P + южный мост Intel Hance Rapids 6300ESB с шиной PCI-X).  Контроллер Ultra320 SCSI Adaptec AIC-7902B на шине PCI64 на материнской плате.

На материнской плате Gigabyte GA-8KNXP Ultra-64  расположен достаточно современный двухканальный контроллер Ultra320 SCSI HostRAID — Adaptec AIC-7902W (Аналогично моему случаю), подключенный к шине PCI64. По сути этот SCSI-контроллер — почти полный аналог отдельных карт-контроллеров Adaptec SCSI Card 39320A-R или 29320A-R. Он оснащен встроенным в BIOS фактически программным RAID уровней 0, 1 и 10 (специальная технология Adaptec HostRAID) и не имеет собственной кэш-памяти. Хотя HostRAID и не является полностью аппаратным, считать его очень уж ущербным не стоит — создание и обсчет массивов в этом случае происходит на уровне BIOS контроллера (а не операционной системы) и при этом расчеты настолько просты (ведь уровни RAID 0, 1 и 10 не требуют почти никакой математики), что производятся системой без заметного ущерба для производительности. HostRAID успешно портируется Адаптеком и в SATA-контроллеры, среди которых южные мосты Intel ICH5R, ICH6R, ICH7R, контроллеры Silicon Image SiI3112, SiI3512, Marvell H1, H2, AHCI чипсеты и др.

2. Вторая статейка. Полностью полностью прояснила ситуацию.

Adaptec AIC-7902W

Это полноценный одночиповый двухканальный SCSI-320 контроллер на шину PCI-X (64-бита 133Mhz).

По заявлениям Adaptec, этот чип умеет поддерживать RAID -0 и -1. Однако к сожалению, это всего лишь так называемый HostRAID. Что именно означает это наименование, Adaptec не поясняет, но по видимому, что-то типа "полу-аппаратного" RAID (по типу WinModem) или вообще чисто софтовое решение. То есть, обработка контрольных сумм RAID выполняется на процессоре сервера (Host) вместо спец-процессора контроллера (ControllerRAID). Естественно, Adaptec выпускает также и полноценные "железные" RAID-контроллеры (Adaptec SCSI RAID 2120S, 2200S и т.д.). Кроме того Adaptec поддерживает ту же HostRAID-технологию еще и для IDE и SATA контроллеров, это еще больше укрепляет нашу уверенность в "софтовости". Самое веселое во всей этой истории это то, что чип AIC-7902 стал очень популярен у производителей серверных материнских плат.

Сама компания Adaptec выпускает несколько контроллеров, сделанных на чипе AIC-7902W : 39320D-R и 39320-R (оба двухканальные, отличия только в разъемах). Одноканальные 29320-R и 29320LP-R сделаны на чипе AIC-7901W.

ВНИМАНИЕ! : производители мамок встраивают Adaptec BIOS (SCSI-Select Utility) прямо в BIOS материнской платы, поэтому обновить BIOS Adaptec удается далеко не всегда, а при попытке воспользоваться родными утилитами Adaptec BIOS Flash Update (от контроллеров Adaptec) можно начисто убить BIOS мамки вообще.

Драйвера Linux.

    Первое, что необходимо сказать, что существуют два драйвера для чипа Adaptec AIC-7902.

Драйвер aic79xx – это "обычный" драйвер, без поддержки HostRAID. Существует в исходных текстах и бесплатно раздается с сайта Adaptec или здесь под лицензией GPL. В официальное ядро вроде до сих пор не входит, по крайней мере в Linux Kernel 2.4  его точно нет, но компилируется без труда.

Драйвер a320raid – это тот самый, специальный драйвер с поддержкой HostRAID, который нам нужен.

    Драйвер a320raid не существует в исходных текстах, более того, при загрузке (по insmod, так как это обычный модуль ядра) пишет, что не распространяется под лицензией GPL и наше ядро теперь того tainted, не GPL. Загляните на форум Adaptec. Проблема с этим драйвером связана именно с тем, что он выполнен в виде бинарного модуля ядра и поэтому требует ядро Linux строго определенной версии. Самые первые версии драйверов Linux с поддержкой HostRAID появились на сайте тех-поддержки Intel для серверных мамок, например для мамки SE7501HG2. Это были драйвера для RedHat 8.0 и S.U.S.E. К счастью, сейчас Adaptec выложил драйвера на сайте и их не приходится искать. Однако проблема с бинарностью драйверов остается и они по-прежнему требуют точных версий ядра.

Выводы автора.

a) Контроллер Adaptec AIC-7902W – вполне приличный двухканальный SCSI Ultra-320 чип.
b) Технология Host-RAID – дешовое RAID решение (несколько двусмысленно ;) .
c) HostRAID драйвера довольно сильно грузят процессор (даже Xeon, даже HT)
d) Аппаратный RAID – всегда намного лучше. Бинарные драйвера – это стрёмно.

Результаты тестов Hot-Swap: вытаскивание SCSI винта на ходу (стоит Intel Hot Swap Board, корпус SC5200) никак не отображается в системных логах Linux и т.д. После возврата винта на место, к нему начинаются интенсивные обращения, по видимому, восстанавливается RAID. В логах – пусто

3. От себя.

И так этот RAID – контроллер, не совсем аппартный. ДЛя него как уже писалось имеется два драйвера – с поддержкой и без поддержки HostRAID.

Наиболее полно драйвера представлены на сайте производителя.

http://www.adaptec.com/en-US/downloads/rh/rhel_4?productId=ASC-29320ALP-R&dn=Adaptec+SCSI+Card+29320ALP-R

Имеются к RHEL4.6, RHEL5. На сайте IBM тока – RHEL 4.5.

Аналог только в виде отдельной платы, те же дрова нужны -

http://www.adaptec.com/ru-RU/products/Controllers/Hardware/scsi/entry/ASC-29320ALP-R/

Нужно создать дискетку с драйверами под конкретную версию дистрибутива RHEL. Перенести img на флоп можно командой dd или rawrite. Подключается она в момент инсталляции RedHat c CD при загрузке командой:  linux dd.

Привожу картинки – результаты выполнения команд lsmod, modinfo, для двух видов драйверов.

При подсовывании дискеты с драйверами в системе видны два модуля для RAID. (Помечены).

image

Вывод lsmod без установки драйверов HostRAID.

image

modinfo

image

Источники:

1. http://www.adaptec.com/ru-RU/products/Controllers/Hardware/scsi/entry/ASC-29320ALP-R/

2. http://www.ixbt.com/storage/adaptec2230s.shtml

3. http://sensi.org/~alec/unix/redhat/raid_320.html

Настройка NTP клиента в Linux. NTP client Linux.

Ноябрь 27, 2009

 

Исходные данные:

  • ОС – RHEL 4.5 32x
  • Установлен пакет – ntp-4.2.0.a.20040617-6.el4.i386.rpm
  • ntp сервер по адресу 172.17.0.2

Введение.

Система Linux, как и большинство других современных операционных систем, фактически имеет двое часов. Первые часы — аппаратные, иногда называемые Real Time Clock, сокращенно (RTC), или часы BIOS, обычно они связаны с колеблющимся кварцевым кристаллом, имеющим точность хода до нескольких секунд в день. Точность зависит от различных колебаний, например, окружающей температуры. Вторые часы — внутренние программные часы, которые идут непрерывно, в том числе и при перерывах в работе системы. Они подвержены отклонениям, связанным с большой системной нагрузкой и задержкой прерываний. Однако система обычно считывает показания аппаратных часов при загрузке и потом использует системные часы. Команда date, устанавливает не аппаратные, а системные часы.

Если используется NTP, можно установить аппаратные часы в ходе первой инсталляции системы и больше никогда не беспокоиться о них.

Микросхема часов реального времени (ЧРВ), используемая на материнских платах, не особенно точна и обычно отстает, или забегает вперед на определенное время каждый день.

Можно синхронизировать аппаратные часы с системными при помощи команды hwclock с опцией -w или –systohc и синхронизировать системные часы с аппаратными при помощи команды hwclock с опцией -s или –hctosys.

Настройка.

Для начала в файле /etc/ntp.conf добавляем строчку :

server 172.17.0.2

image

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

Следующий момент, устанавливает локальное или всемирное время будет использоваться.

#cat /etc//etc/sysconfig/clock

У нас не то :

image

Правим ZONE – на "Europe/Moscow"

Получаем:

image

UTC=true системные часы не используют универсальное представление времени

ARC=true Используется нормальная эпоха UNIX.

Далее установка временной зоны- timezone.

Временная зона под Linux  устанавливается через символическую ссылку, из /etc/localtime на файл из директории /usr/lib/zoneinfo(или /usr/share/zoneinfo), чем указывается в какой временной зоне вы находитесь.

Рисунок. Содержимое /usr/share/zoneinfo

image

Выполняем команды.

rm -rf /etc/localtime

ln -s /usr/share/zoneinfo/Europe/Moscow /etc/localtime

Далее синхронизируем время с Ntp сервером. Предварительно останавливаем демон ntpd.

service ntpd stop

image

Все работает !

Если демон ntpd запущен то выдается следующее сообщение, при попытки выполнить синхронизацию с ntp сервером.

image

ntpq –p

Данная команда показывает, к каким серверам производиться подключение.

Дополнение:

Установка аппаратных часов

Для установки аппаратных часов, установите сначало системное время а потом уже аппаратное используя программу «/sbin/clock -w» (или«/sbin/clock -wu» в случае использования всемирного времени).Чтобы узнать аппаратное время запустите clock без параметров. Если аппаратные часы установлены в локальное время а вы хотите увидеть всемирное наберите «/sbin/clock –u»

Установка системных часов

Для установки системных часов в Линуксе, используется программа date. Для примера установка текущего времени (системного!) и даты на 31 июля, 23:16,наберите «date 07312316» (обратите внимание что время дано в 24-часовой записи) Если вы хотите изменить год то набиретие «date 073123161998». Для установки секунд набирите «date 07312316.30» или «date 073123161998.30». Чтобы узнать системное время запустите date без аргументов.

Используемые источники:

http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/en-US/Reference_Guide/s2-sysconfig-clock.html

http://www.ibm.com/developerworks/ru/edu/l-lpic1111/section7.html

http://ods.com.ua/win/rus/unix/time.html

ПИСЬМО МУСУЛЬМАНСКОМУ ДРУГУ

Октябрь 20, 2009

Взята: www.narochnitskaia.info

Рекомендуется к прочтению. !!!

Мой мусульманский друг!

Отчего ты не бережешь колодец, из которого пили поколения твоих предков? Пили и утоляли жажду своей духовной свободы – той самой свободы совести, которая была бы им недоступна в «цивилизованной» Европе, где пылали костры инквизиции и где принцип Аугсбургского религиозного мира «cujus regio ejus religio» («чья страна – того и вера») предписывал подданным принимать веру своего правителя.

Именно в православной России, ценящей прежде всех иных свобод «свободу не плоти, но духа», такое насилие над духовной свободой, свободой совести было неслыханным. Отчего же тех предков твоих, мой исламский друг, не смущали православные кресты на кремлевских соборах и чин помазания на царство православного царя, когда они стремились и просились именно в русское православное государство? Да-да, сколько бы ни повторяли сегодня перекодированную в либеральные клише ленинскую большевистскую интерпретацию русской истории и сказки о «тюрьме народов», документы говорят сами за себя: и казахские жузы, и кавказские народы, ныне натравливаемые на русских, да и друг на друга, просились в Россию.

Читать далее…

Мы- русские.

Июнь 9, 2009

Follow

Get every new post delivered to your Inbox.