exim авторизация из 2х баз
Модератор: xM
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
exim авторизация из 2х баз
подскажите где я ошибся?
авторизация из LDAP и из файла
PLAIN:
driver = plaintext
public_name = PLAIN
server_condition = ${if or {${saslauthd{{$2}{$3}}{1}{0}}\
{lookup{$auth1}lsearch{/etc/exim/passwd} {$value} {false} }}}
server_set_id = $2
_____________
лог
PLAIN authenticator failed for ([10.10.10.10]) [10.10.10.10]: 435 Unable to authenticate at present (set_id=name@domain.ru): each subcondition inside an "or{...}" condition must be in its own {}
вижу что скобки но не могу понять где (
авторизация из LDAP и из файла
PLAIN:
driver = plaintext
public_name = PLAIN
server_condition = ${if or {${saslauthd{{$2}{$3}}{1}{0}}\
{lookup{$auth1}lsearch{/etc/exim/passwd} {$value} {false} }}}
server_set_id = $2
_____________
лог
PLAIN authenticator failed for ([10.10.10.10]) [10.10.10.10]: 435 Unable to authenticate at present (set_id=name@domain.ru): each subcondition inside an "or{...}" condition must be in its own {}
вижу что скобки но не могу понять где (
Услуги хостинговой компании Host-Food.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/
Тарифы на виртуальные сервера (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/
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
вот 2 рабочих аунтефикатора из которых пытаюсь сделать один, раздельно все работает.
два рабочих аунтификатора
PLAIN:
driver = plaintext
public_name = PLAIN
server_condition = ${if saslauthd{{$2}{$3}}{1}{0}}
server_set_id = $2
и второй
PLAIN:
driver = plaintext
public_name = PLAIN
server_set_id = $auth2
server_prompts = :
server_condition = ${lookup{$auth2}lsearch{/etc/exim/passwd} {${if eq{$value}{$auth3} }} {false}}
два рабочих аунтификатора
PLAIN:
driver = plaintext
public_name = PLAIN
server_condition = ${if saslauthd{{$2}{$3}}{1}{0}}
server_set_id = $2
и второй
PLAIN:
driver = plaintext
public_name = PLAIN
server_set_id = $auth2
server_prompts = :
server_condition = ${lookup{$auth2}lsearch{/etc/exim/passwd} {${if eq{$value}{$auth3} }} {false}}
-
- ст. прапорщик
- Сообщения: 571
- Зарегистрирован: 2010-03-12 12:59:08
- Контактная информация:
Re: exim авторизация из 2х баз
Код: Выделить всё
${if or {\
{${saslauthd{{$2}{$3}}{1}{0}}}\
{lookup{$auth1}lsearch{/etc/exim/passwd} {$value} {false} }\
}\
}
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
попробовал, получаю вот что
PLAIN authenticator failed for ([10.1.1.2]) [10.1.1.2]: 435 Unable to authenticate at present (set_id=test@test.ru): condition name expected, but found "${saslauthd{{$2}" inside "or{...}" condition
целиоком блок выглядит так
PLAIN:
driver = plaintext
public_name = PLAIN
server_condition = ${if or {\
{${saslauthd{{$2}{$3}}{1}{0}}}\
{lookup{$auth1}lsearch{/etc/exim/passwd} {$value} {false} }\
}\
}
server_set_id = $2
меня еще смущает то что должно правильно ли проставлена переменная в server_set_id
PLAIN authenticator failed for ([10.1.1.2]) [10.1.1.2]: 435 Unable to authenticate at present (set_id=test@test.ru): condition name expected, but found "${saslauthd{{$2}" inside "or{...}" condition
целиоком блок выглядит так
PLAIN:
driver = plaintext
public_name = PLAIN
server_condition = ${if or {\
{${saslauthd{{$2}{$3}}{1}{0}}}\
{lookup{$auth1}lsearch{/etc/exim/passwd} {$value} {false} }\
}\
}
server_set_id = $2
меня еще смущает то что должно правильно ли проставлена переменная в server_set_id
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
одну ошибку я нашел, if стоял не там,
теперь такая петрушка.....
PLAIN authenticator failed for ([10.1.1.2]) [10.1.1.2]:
435 Unable to authenticate at present (set_id=test@test.ru): { or{{if saslauthd{{test@test.ru}{123123}}{1}{0}}{false}}}
PLAIN:
driver = plaintext
public_name = PLAIN
server_set_id = $2
server_condition = { or{\
{if saslauthd{{$2}{$3}}{1}{0}}\
{${lookup{$auth1}lsearch{/etc/exim/passwd}{$value}{false}}}\
}}
теперь такая петрушка.....
PLAIN authenticator failed for ([10.1.1.2]) [10.1.1.2]:
435 Unable to authenticate at present (set_id=test@test.ru): { or{{if saslauthd{{test@test.ru}{123123}}{1}{0}}{false}}}
PLAIN:
driver = plaintext
public_name = PLAIN
server_set_id = $2
server_condition = { or{\
{if saslauthd{{$2}{$3}}{1}{0}}\
{${lookup{$auth1}lsearch{/etc/exim/passwd}{$value}{false}}}\
}}
-
- ст. прапорщик
- Сообщения: 571
- Зарегистрирован: 2010-03-12 12:59:08
- Контактная информация:
Re: exim авторизация из 2х баз
Код: Выделить всё
server_condition = ${if or{\
{eq{1}{${saslauthd{{$2}{$3}}}}}\
{${lookup{$auth1}lsearch{/etc/exim/passwd}{$value}{false}}}\
}\
}
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
PLAIN authenticator failed for ([10.1.1.2]) [10.1.1.2]: 435 Unable to authenticate at present (set_id=test@test.ru): "${saslauthd" is not a known operator (or a } is missing in a variable reference) inside "or{...}" condition
в этом случае так , пропущена переменная
в этом случае так , пропущена переменная
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
они у меня вроде как разбиты я да же выше показывал из оба по отдельности, ну никак не выходит каменный цветок, мастер!
-
- ст. прапорщик
- Сообщения: 571
- Зарегистрирован: 2010-03-12 12:59:08
- Контактная информация:
Re: exim авторизация из 2х баз
Код: Выделить всё
${if or{\
{if saslauthd{{$2}{$3}}{1}{0}}\
{eq{1}{1}}\
}}
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
PLAIN authenticator failed for ([10.1.1.2]) [10.1.1.2]: 435 Unable to authenticate at present (set_id=test@test.ru): unknown condition "if" inside "or{...}" condition
c этой конструкцией в логе это.... что то я уже совсем запутался (((
c этой конструкцией в логе это.... что то я уже совсем запутался (((
-
- ст. прапорщик
- Сообщения: 571
- Зарегистрирован: 2010-03-12 12:59:08
- Контактная информация:
Re: exim авторизация из 2х баз
Код: Выделить всё
${if or{\
{saslauthd{{$2}{$3}}}\
{eq{1}{1}}\
}\
}
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
дааа! так заработало!
теперь надо проверить вторую часть и соединить ))
теперь надо проверить вторую часть и соединить ))
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
со второй частью где lookup то же проблема
435 Unable to authenticate at present (set_id=test@test.ru): condition name expected, but found "${lookup{$2}lsea" inside "or{...}" condition
server_condition = ${if or{\
{${lookup{$2}lsearch{/etc/exim/passwd}}}\
{eq{1}{1}}\
}\
}
435 Unable to authenticate at present (set_id=test@test.ru): condition name expected, but found "${lookup{$2}lsea" inside "or{...}" condition
server_condition = ${if or{\
{${lookup{$2}lsearch{/etc/exim/passwd}}}\
{eq{1}{1}}\
}\
}
-
- ст. прапорщик
- Сообщения: 571
- Зарегистрирован: 2010-03-12 12:59:08
- Контактная информация:
Re: exim авторизация из 2х баз
Код: Выделить всё
${if or{\
{eq{$auth1}{${lookup{$auth1}lsearch{/etc/exim/passwd}{$value}{false}}}}\
{eq{1}{1}}\
}\
}
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
почти верштейн, у меня мозги плавятся от жары....
server_condition = ${if or{\
{eq{$auth1}{${lookup{$auth1}lsearch{/etc/exim/passwd}{$value}{false}}}}\
{saslauthd{{$2}{$3}}}\
{eq{1}{1}}\
}\
}
получается так?
server_condition = ${if or{\
{eq{$auth1}{${lookup{$auth1}lsearch{/etc/exim/passwd}{$value}{false}}}}\
{saslauthd{{$2}{$3}}}\
{eq{1}{1}}\
}\
}
получается так?
-
- ст. прапорщик
- Сообщения: 571
- Зарегистрирован: 2010-03-12 12:59:08
- Контактная информация:
Re: exim авторизация из 2х баз
{eq{1}{1}}\ - это добавлено для отладки, как все заработает нужно обязательно убрать.
Хотя если поменять на {eq{0}{1}}\ - то можно и оставить, потому как всегда будет возвращаться false. счас для вас главное отладить lookup.
Хотя если поменять на {eq{0}{1}}\ - то можно и оставить, потому как всегда будет возвращаться false. счас для вас главное отладить lookup.
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
в результате получилась такая конструкция
PLAIN:
driver = plaintext
public_name = PLAIN
server_set_id = $2
server_condition = ${if or{\
{eq{$2}{${lookup{$2}lsearch{/etc/exim/passwd}{$value}{false}}}}\
{saslauthd{{$2}{$3}}}\
}\
}
пароли через SASL принимает, а в файле нет (((
я поправил $auth1 на $2 так как в server_set_id стоит $2
PLAIN:
driver = plaintext
public_name = PLAIN
server_set_id = $2
server_condition = ${if or{\
{eq{$2}{${lookup{$2}lsearch{/etc/exim/passwd}{$value}{false}}}}\
{saslauthd{{$2}{$3}}}\
}\
}
пароли через SASL принимает, а в файле нет (((
я поправил $auth1 на $2 так как в server_set_id стоит $2
-
- ст. прапорщик
- Сообщения: 571
- Зарегистрирован: 2010-03-12 12:59:08
- Контактная информация:
Re: exim авторизация из 2х баз
Содержимое /etc/exim/passwd какое?
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
test@test.ru:пароль
опять же если мы разделили то все работало, обьединил из sasl работает из файла нет (
опять же если мы разделили то все работало, обьединил из sasl работает из файла нет (
-
- ст. прапорщик
- Сообщения: 571
- Зарегистрирован: 2010-03-12 12:59:08
- Контактная информация:
Re: exim авторизация из 2х баз
Код: Выделить всё
$ cat tt2
test:testpass
$ sudo exim -be
> ${if or{{eq{testpass}{${lookup{test}lsearch{/home/OFFICE/skyworker/tt2}{$value}{false}}}}{eq{0}{1}}}}
true
> ${if or{{eq{testpass1}{${lookup{test}lsearch{/home/OFFICE/skyworker/tt2}{$value}{false}}}}{eq{0}{1}}}}
>
-
- ефрейтор
- Сообщения: 53
- Зарегистрирован: 2011-05-09 17:28:11
Re: exim авторизация из 2х баз
server_condition = ${if or{\
{eq{$3}{${lookup{$2}lsearch{/etc/exim/passwd}{$value}{false}}}}\
{saslauthd{{$2}{$3}}}\
}\
}
да все верно, вот рабочая конструкция. Спасибо огромнейшее!
{eq{$3}{${lookup{$2}lsearch{/etc/exim/passwd}{$value}{false}}}}\
{saslauthd{{$2}{$3}}}\
}\
}
да все верно, вот рабочая конструкция. Спасибо огромнейшее!