Надеюсь мой опыт поможет.
Проблема решается 2-мя строчками кода и одной командой в консоли.
1) В консоли делаете симлинк на /bitrix/ (допустим имя симлинка - /manager/)
2) Далее в init.php добавляете:
[QUOTE] AddEventHandler("main", "OnEndBufferContent", "myfunction");
function myfunction(&$content)
{
global $USER, $APPLICATION;
if (($APPLICATION->GetCurDir() == '/bitrix/' || $APPLICATION->GetCurDir() == '/bitrix/admin/') && !$USER->IsAdmin()) { LocalRedirect("/404.php"); }
}[/QUOTE]
Полагаю идея понятна - перед выводом контента система проверяет, если страница по адресу bitrix или bitrix/admin/ и пользователь не авторизован как админ, то система отредиректит на 404 ошибку.
Ну а через симлинк manager можно спокойно штатно авторизоваться.
Даже если при работе в админке (после авторизации) произойдет переход в bitrix/admin/ (например при редактировании элемента инфоблока) редиректа на 404 не будет (т.к. пользователь авторизован) и можно спокойно работать.