FreeBSD + pam_radius.so | pam_tacplus.so

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
gbyte
проходил мимо

FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение gbyte » 2011-02-22 12:19:21

Настраивал ли кто-либо авторизацию в FreeBSD через pam_radius.so или pam_tacplus.so?

Вторую неделю мучаюсь.
man pam_radius, pam_tacplus, radius.conf, tacacs.conf прочитал.
Дядя Гугл инфы по теме практически не дает.


Сейчас положение дел такое:
В качестве TACACS+/RADIUS сервера используется Cisco ACS 5.

pam_radius.so говорит:

Код: Выделить всё

Feb 21 11:19:44 webserv sshd[99280]: Invalid user user1 from 172.1.1.100
Feb 21 11:19:48 webserv sshd[99282]: in openpam_dispatch(): pam_radius.so: no pam_sm_acct_mgmt()
Feb 21 11:19:48 webserv sshd[99280]: fatal: Internal error: PAM auth succeeded when it should have failed
То есть авторизация проходит, проблема начинается на аккаунтинге.

Пробовал pam_tacplus.so - тоже проблемы. Cisco ACS пишует в логе:

Код: Выделить всё

24408 User authentication against Active Directory failed since user has entered the wrong password
При этом пароль я точно ввожу правильно. Или я что-то не так делаю или ACS пароль расшифровать не может.

Кто настраивал, поделитесь конфигами.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Гость
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение Гость » 2011-02-22 12:47:53

копайте в расширеное логирование
там и увидите ошибку

gbyte
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение gbyte » 2011-02-22 13:20:50

если имеется ввиду директива "debug" на уровне модулей, то она включена.
никакой дополнительной информации не дает.

если не трудно, уточните что имеется ввиду?

Гость
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение Гость » 2011-02-22 13:52:22

если верить
http://svn.freebsd.org/viewvc/base/stab ... iew=markup

должны присутсвовать такой логинг
Got user:
Got password
Radius opened

он где то есть?
что он показывает там еще?

gbyte
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение gbyte » 2011-02-22 13:55:46

при включенном debug и отключенном no_warn сообщает только:

Код: Выделить всё

Feb 21 11:19:44 webserv sshd[99280]: Invalid user user1 from 172.1.1.100
Feb 21 11:19:48 webserv sshd[99282]: in openpam_dispatch(): pam_radius.so: no pam_sm_acct_mgmt()
Feb 21 11:19:48 webserv sshd[99280]: fatal: Internal error: PAM auth succeeded when it should have failed

gbyte
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение gbyte » 2011-02-22 14:01:46

Конфиги:

Код: Выделить всё

# grep -v '#' sshd 
auth		sufficient	pam_opie.so		no_warn no_fake_prompts
auth		requisite	pam_opieaccess.so	no_warn allow_local
auth		sufficient	pam_radius.so		debug try_first_pass template_user=raduser
auth		required	pam_unix.so		try_first_pass

account		required	pam_nologin.so
account		sufficient	pam_radius.so		template_user=raduser
account		required	pam_login_access.so
account		required	pam_unix.so

session		required	pam_permit.so
password	required	pam_unix.so		try_first_pass

# cat ../radius.conf 
#
auth	acs	FAKEkey	3
#
acct	acs	FAKEkey	3

Гость
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение Гость » 2011-02-22 14:17:32

if (type == PAM_SUCCESS) {
if (!sshpam_authctxt->valid ||
(sshpam_authctxt->pw->pw_uid == 0 &&
options.permit_root_login != PERMIT_YES))
fatal("Internal error: PAM auth "
"succeeded when it should have "
"failed");
import_environments(&buffer);
*num = 0;
**echo_on = 0;
ctxt->pam_done = 1;
xfree(msg);
return (0);
}
тоесть из под рута заходить нельзя

Гость
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение Гость » 2011-02-22 14:27:09

либо нужно разрешить
options.permit_root_login != PERMIT_YES

gbyte
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение gbyte » 2011-02-22 15:22:39

1. естественно захожу не под рутом.
2. допустим что ssh думает что я рут по данным которые ему предосталяет pam_radius.so
3. включил "PerminRootLogin=yes"
4. #/etc/rc.d/sshd restart
5. попробовал перезайти - результат тотже

Гость
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение Гость » 2011-02-22 15:31:31

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

но условие там елементарное

повторюсь в коде а не квоте
http://src.gnu-darwin.org/src/crypto/op ... pam.c.html

Код: Выделить всё

case PAM_SUCCESS:
			if (**prompts != NULL) {
				/* drain any accumulated messages */
				debug("PAM: %s", **prompts);
				buffer_append(&loginmsg, **prompts,
				    strlen(**prompts));
				xfree(**prompts);
				**prompts = NULL;
			}
			if (type == PAM_SUCCESS) {
				if (!sshpam_authctxt->valid ||
				    (sshpam_authctxt->pw->pw_uid == 0 &&
				    options.permit_root_login != PERMIT_YES))
					fatal("Internal error: PAM auth "
					    "succeeded when it should have "
					    "failed");
				import_environments(&buffer);
				*num = 0;
				**echo_on = 0;
				ctxt->pam_done = 1;
				xfree(msg);
				return (0);
			}
			error("PAM: %s for %s%.100s from %.100s", msg,
			    sshpam_authctxt->valid ? "" : "illegal user ",
			    sshpam_authctxt->user,
			    get_remote_name_or_ip(utmp_len, options.use_dns));
			/* FALLTHROUGH *

Гость
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение Гость » 2011-02-22 15:33:37

повторюсь условие там елементарное

или нелегальный юзер, или uid == 0 и рут
тогда ошибка

gbyte
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение gbyte » 2011-02-22 16:14:53

Я понимаю.
Код тоже прочитал.

Сам нахожусь в тупике.

Может кто-то всетаки имеет практический опыт и готов поделится?

Гость
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение Гость » 2011-02-22 16:18:23

а кто вам мешает помиеть такой опыт?
берете компилятор gcc
редактор vi
и обычными printf смотрите что же там за значения в условии
и какое именно уловие там срабатывает
далее ищете кто как и когда то условие модифицирует что бы оно корретно отработало

gbyte
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение gbyte » 2011-02-22 17:32:28

Уважаемый, Гость!

Я прекрасно понимаю что можно и ОС самостоятельно написать, затем перечитав все RFC написать под нее собственный сетевой стек и тд и тп.
Можно и одежду шить самостоятельно, пищу выращивать/добывать и тд.

Но если так делать, времени ни на жизнь ни на работу не останется.

Поэтому предпочитаю использовать готовые решения.

Настраиваю по МАНам, но возникли проблемы.
А на форум обратился в надежде что кто-то имел опыт и более удачив/умен чем я и знает где подкрутить...

Если будут еще конструктивные предложения, буду рад.

Гость
проходил мимо

Re: FreeBSD + pam_radius.so | pam_tacplus.so

Непрочитанное сообщение Гость » 2011-02-22 17:41:38

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