воскресенье, 12 декабря 2010 г.

Восстановления паролей к Brocade Silkworm switches 4100

Подключаемся через порт, к примеру через виндовую прогу HyperTerminal,затем на экране появляется небольшая инфа,потом в течении 4 секунд нужно нажать ESC,после этого появится меню
Press escape within 4 seconds to enter boot interface.
1) Start system.
2) Recover password.
3) Enter command shell.

Если забудем пароль Boot PROM password можно тогда восстановить за счет второго меню, но я его знаю.
Мне нужно 3 меню, ввожу пароль и попадаю в ограниченное меню
Далее printenv
Интересует строка OSLoader=MEM()0xF0000000;MEM()0xF0800000
Далее даём команду, чтоб загрузиться в привилегированном режиме
boot MEM()0xF0000000 –s
После этого система загрузится только для чтения, нам нужно перемонтировать диски с чтением и записью
mount -o remount,rw,noatime /
mount /dev/hda2 /mnt
/sbin/passwddefault
После этого пароль будет default
Основные пароли по умолчанию могут быть
fibranne
fibreanne
password
default
Далее reboot –f
Ждем системы, пока она отработает тесты, после этого вводим имя admin пароль default,после этого система предложит изменить пароль для таких пользователей как:
Root
Admin
user

четверг, 20 мая 2010 г.

Настройка Postfix+Active Directory

Настроем почтовый сервер Postfix в операционной системе Freebsd 8.0,запрашивающий информацию из Active Directory

Задачи:
Запросы информации в AD
Аунтификация SMTP
Настройка pop3 и imap /ssl

Примечание:
Дело в том,что pop3 и imap поднимался за счет courier-imap,но аутентификацию smtp не смог завести за счет cyrus-sasl,поэтому для аутентификация SMTP был применен Dovecot c его sasl,хотя все можно было подвесить на dovecot (pop3 , imap ),но, так как все работало менять не стал

Шаг 1

Postfix должен быть собран с поддержкой ldap,dovecot,остальные опции по потребностям

Я не буду подробно расписывать конфиги всех пакетов, остановлюсь только на важном,чтоб в конечном итоге все работало

Почта будет хранится по пути:
/var/spool/mail

Конечная папка пользователя будет размещена таким образом:
/var/spool/mail/имя домена/имя пользователя@домен



Создадим пользователя и группу vmail
pw group add vmail -g 3000
pw user add vmail -g vmail -s /sbin/nologin -u 3000

mkdir /var/spool/mail
chown vmail:vmail /var/spool/mail/
chmod -R 740 /var/spool/mail/


ШАГ 2

Мы должны настроить конфиг main.cf

Описать,где храняться пользователи
virtual_alias_maps = hash:/usr/local/etc/postfix/virtual_alias
virtual_mailbox_domains = $mydomain
virtual_mailbox_base = /var/spool/mail
virtual_mailbox_maps = ldap:/usr/local/etc/postfix/ldap.conf
virtual_uid_maps = static:3000
virtual_gid_maps = static:3000

Сам конфиг ldap.conf,через который будет формироваться запросы по протоколу ldap к AD для поиска пользователей


server_host = 172.16.32.70:3268
search_base = dc=company,dc=local
version = 3
query_filter = (&(objectclass=person)(mail=%s))
result_attribute = mail
result_format = %d/%s/Maildir/
bind_dn = ldap@company.local
bind_pw = 12345


Разберем конфиг

%d Доменная часть без локальной части и символа @ (например, test.org).
%s Полный почтовый адрес (например, lena@test.org).
%u Локальная часть без символа @ и указания домена (например, lena).

Когда пользователь, в первый раз настроит свою почтовую программу, и отправит сам себе письмо, то для него будет создана его личная папка, где хранится его почта
/var/spool/mail/test.org/lena@test.org

Для того, что бы этого добиться нам нужно правильно сформировать запрос по протоколу ldap к контроллеру домена (Active Directory)
Для правильность формирования запросов можно поиграться с мощной утилитой из пакета support tools windows server, ldp

И так:
Для начала нас интересует, чтоб пользовательская папка была типа:

имя пользователя@домен

Для этого, в Active Directory,должен уже быть создан пользователь, или его нужно создать, после этого заходим в свойства данного пользователя, нас интересует строка как e-mail,ее нужно заполнить:



Таким образом, когда будет проверяться наличие пользователя, будет создан запрос к Active Directory,будет проверен аттребут mail ,который содержит lena@test.org
А результат будет таким согласно конфигу ldap.conf
/var/spool/mail/test.org/lena@test.org
В место %d подставится домен исключая локальную часть

ШАГ 3

Настройка SMTP аунтификации

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

Dovecot должен быть собран с ldap

Dovecot будет осуществлять аутентификацию SMTP за счет своего механизма sasl осуществлять запросы по протоколу ldap к AD,он будет связан с postfix.

основной конфиг dovecot
/usr/local/etc/dovecot.conf

ssl no
first_valid_uid = 3000
last_valid_uid = 3000
first_valid_gid = 3000
last_valid_gid = 3000

auth_verbose = yes
auth_debug = yes
auth_debug_passwords = yes

auth default {
mechanisms = plain login
passdb ldap {
args = /usr/local/etc/dovecot-ldap.conf
}
userdb ldap {
args = /usr/local/etc/dovecot-ldap.conf
}
socket listen {
master {
path = /var/run/dovecot/auth-master
mode = 0660
user = vmail
group = vmail
}

client {
path = /var/run/dovecot/auth-client
mode = 0660
user = postfix
group = postfix
}

}
}
Как видно конфиг краткий ,так как описывает только процесс и источник аутентификации

Если dovecot не настраивается для работы с pop3 и imap, то поддержку ssl нужно отключить иначе, dovecot не запустится,выдавая ошибку мол нейдены сертификаты

конфиг dovecot-ldap.conf,описывающий запросы к контроллеру домену для проверки валидности

hosts = 172.16.32.70:3268
dn = ldap@company.local
dnpass = 12345
auth_bind = yes
ldap_version = 3
base = cn=Users,dc=company,dc=local
user_attrs = sAMAccountName=home
user_filter = (&(ObjectClass=person)(sAMAccountName=%u))
pass_filter = (&(ObjectClass=person)(sAMAccountName=%u))



В main.cf Postfix

smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = /var/run/dovecot/auth-client
dovecot_destination_recipient_limit = 1
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination

В master.cf Postfix

dovecot unix - n n - - pipe
flags=DRhu user=vmail:vmail argv=/usr/local/libexec/dovecot/deliver -d ${user}


Шаг 4

Нам нужно настроить pop3 и imap в месте с Active Directory,использовались пакет courier-authlib нужна поддержка ldap, courier-imap

После этого нам нужно отредактировать файл

/usr/local/etc/authlib

authdaemonrc

authmodulelist="authldap"
authmodulelistorig="authldap"
daemons=5
authdaemonvar=/var/run/authdaemond
subsystem=mail
DEBUG_LOGIN=2
DEFAULTOPTIONS="wbnodsn=1"
LOGGEROPTS=""

И настроить подключения к AD,для аунтификации пользователей

/usr/local/etc/authlib

authldaprc

LDAP_URI ldap://172.16.32.70
LDAP_PORT 3268
LDAP_PROTOCOL_VERSION 3
LDAP_BASEDN cn=Users,dc=company, dc=local
LDAP_BINDDN ldap@company.local
LDAP_BINDPW 12345
LDAP_TIMEOUT 5
LDAP_AUTHBIND 1
LDAP_MAIL mail
LDAP_FILTER (objectclass=person)
LDAP_HOMEDIR description
LDAP_MAILROOT /var/spool/mail
LDAP_MAILDIR ./
LDAP_DEFAULTDELIVERY defaultDelivery
LDAP_FULLNAME cn
LDAP_CRYPTPW userPassword
LDAP_DEREF never
LDAP_GLOB_UID vmail
LDAP_GLOB_GID vmail
LDAP_CLEARPW clearPassword
LDAP_CRYPTPW userPassword


И так нам нужно добится ,что бы когда пользователь заходит на сервер, его имя и
пароль корректно проходили процесс аутентификации,и imap или pop3 находил нужную
папку, а не писал все время в логах:
pop3d: chdir “cur”: No such file or directory

Т.е когда пользователь будет проверять почту а логах должно быть приблительно так:
mail authdaemond: Authenticated: sysusername=, sysuserid=3000, sysgroupid=3000,
homedir=/var/spool/mail/test.org/lena@test.org, address=lena@test.org, fullname=lena



Для того,что бы добится правельного формирования пути к конечной папки пользователя,чтоб pop3 или imap не кричали, мол нету такой папки
Нужно снова внести изменения в свойство учетной записи хранящаяся в AD

Я использовал строку description в свойствах учетной записи т.е



Изходя из конфига выше:
LDAP_MAIL mail
LDAP_FILTER (objectclass=person)
LDAP_HOMEDIR description

После этого, когда клиент пройдет аутентификацию,он получит свою почту, так как pop3
или imap корректно найдет нужный путь т.е



Шаг 5

Возможно нужно просматривать и отправлять почту через web,тогда будем использовать Squirrelmail

Установили,скофигурировали

Когда,все настроено,configtest Squirrelmail,говорит мол ошибок нет все нормально,и когда мы вводим пароль и имя,возникает ошибка IMAP СЕРВЕР СБРОСИЛ ПОДКЛЮЧЕНИЯ
То в настройках Squirrelmail,в параметрах сервера меню под номером 2, вместо полного доменного имени imap сервера нужно ввести ip адресс,по крайне мере у меня так заработал,разбираться не стал,забил

Шаг 6

При отладки почтовой ситемы имеет смысл на время включить отладку

Postfix:

В main.cf
debug_peer_level = 3
debug_peer_list = 127.0.0.1, test.org

либо
В master.cf

напротив smtpd ,выставить ключь -v (smtpd -v)


Для dovecot:

log_path = /var/log/dovecot.log
info_log_path = /var/log/dovecot.log

auth_verbose = yes
auth_debug = yes
auth_debug_passwords = yes

Для courier:

в конфиге authdaemonrc
DEBUG_LOGIN=2

Так же не рекомендуется испольовать порт 389 для запрос к AD,это может привести к проблемам репликации,поэтому правельное решение использовать глобальный каталог на порту 3268

После того,как система заработала нормально,я снизил уровень отладки,чтоб журналы не забивались лишним.......


freebsd 8.0
windows server 2008

вторник, 4 мая 2010 г.

Комментарии по установки snort,snortsam,base

После того, как дерево портов обновилось начинаем установку.Я не буду отражать полную настройку всего добра,а покажу,где может быть засада

1
При установке snort
/usr/ports/security/snort (версия установки была 2.8.5.3
нам нужно выбрать две опции
mysql
плагин snortsam
Как раз при установки плагина snortsam,идет накладывания патча,который не устанавливается корректно,и порт соответственно не устанавливается,причина всему некорректность файла Makefiles,описывающий опцию snortsam,строка PATCHFILES+=
там:
PATCHFILES+=snortsam-2.8.5.diff.gz:snortsam
Изменяем на:
PATCHFILES+=snortsam-2.8.5.diff.3.gz:snortsam

После этого,нужно отредактировать файл distinfo
Удалить старые записи и внести в не новые
MD5 (snortsam-2.8.5.3.diff.gz) = 9b6d44d8ea452132044b81a01886f18b
SHA256 (snortsam-2.8.5.3.diff.gz) = 777f21e192de511d586ac2f7d79b308d97cce843d84a4f24f2559f15070d665c
SIZE (snortsam-2.8.5.3.diff.gz) = 28880
можно поиграть с
md5 -s /путь/snortsam-2.8.5.3.diff.gz
sha256 -s /путь/snortsam-2.8.5.3.diff.gz

И тогда файл будет выглядит целиком:

MD5 (snort-2.8.5.3.tar.gz) = ef02aaad54746603f2cb3236fe962128
SHA256 (snort-2.8.5.3.tar.gz) = a7d9eb16427514d00926e9892c4a92b6ff1fd0f79555d8f8dce91dfa14112e6a
SIZE (snort-2.8.5.3.tar.gz) = 4730637
MD5 (snortsam-2.8.5.3.diff.gz) = 9b6d44d8ea452132044b81a01886f18b
SHA256 (snortsam-2.8.5.3.diff.gz) = 777f21e192de511d586ac2f7d79b308d97cce843d84a4f24f2559f15070d665c
SIZE (snortsam-2.8.5.3.diff.gz) = 28880

После этого порт нормально установится

2
Что касается установки base (из портов BASE 1.4.4)
Когда устанавливался php,версия его 5.3.2,и как в последствии оказалась существуют некоторые проблемы с устаревшими функциями
К сути:
После того как порт base установился
Мы начинаем настраивать подключения к mysql через web интерфейс ,после того как мы вбили все данные у нас появляется ошибки,которые мешают полностью до настроить base,как я понил в php 5.3.2 некоторые функции уже устарели или будут полностью удаленны,короче нужно в /usr/local/etc/php.ini закомментировать все
;error_reporting

После этого заканчиваем настройку, и в ходим в сам интерфейс
http://аддресс/base

И наконец нас ждет еще одна ошибка,которую сразу можно обнаружить ,когда мы пытаемся перейти по ссылки к примеру "График времени определения предупреждений" и это касается всех ссылок
Ошибка:

Fatal error: Call to undefined method ProtocolFieldCriteria::ProtocolFieldCriteria()

Решения :
Скачать версию 1.4.5 c сайта http://base.secureideas.net
После этого данная ошибка исчезнет
Установка была:
freebsd 8.0
mysql 5.0.89
php 5.3.2
snort 2.8.5.3
base 1.4.5
устал .......