Мне нравится использовать сквид с опцией пулов задержки как действительно простая начальная точка. Слабость этого решения - то, что оно только поможет с типами трафика, который может быть вызван через прокси.
Для установки его, Вы просто помещаете сквид на свое конечное устройство, настраивают по мере необходимости. Настраивание клиентов для протоколов, которые не могут быть прозрачно прерваны.
Это - интересная статья http://www.lockdown.co.uk/?pg=combi&s=articles, которую это подробно излагает, сколько времени это теоретически взяло бы к грубой силе пароль для differnt длин и наборов символов.
Вы могли бы хотеть указать, кто бы ни записал что политика в этом сообщении в блоге от Bruce Schneier.
Это - хорошая рецензия того, почему сила паролей является наименьшим количеством чьих-либо проблем в сети.
Посмотрите на принятый ответ в этом сообщении. Шоу, которые даже 8 символьных паролей с помощью полного спектра символов могут занять ~10 000 лет для взламывания!
При подсчете использования таблиц радуги как грубая сила (мнения варьируются), затем для 8 символов, с помощью таблиц радуги, которые включают все символы в пароль, приблизительно 10 секунд. 20 символьных паролей (те же символы, те же таблицы радуги), меньше чем 30 секунд. Выгода - то, что требуется много времени для генерации таблиц. Мой занял приблизительно месяц для генерации на машине на 3 ГГц, обрабатывающей только ночью. С другой стороны, только необходимо сделать это однажды.
Проблема попытки помнить длинные пароли легко решена комбинацией символьной замены и использования фразы. Даже что-то столь же простое, "#Fr3ddy M3rcury#" достаточно сложен для большей части использования, все же удивительно легко помнить.
Полагайте, что пароль с восемью символами можно помнить. Пароль с 20 символами будет записан.
И затем кто-то может считать его.
Можно интересоваться статьей "Passwords vs Passphrases". Их заключение состоит в том, что 9 символьных полностью случайных паролей об эквиваленте 6 паролям слова. Но они чувствуют, что 6 фраз слова было бы легче помнить.
Все это зависит от символов, которые Вы используете, поскольку это изменяет количество комбинаций, Вы имеете. Принятие 8 символов:
Слово словаря:
egrep "^.{8}$" /usr/share/dict/words | wc -l 15601
Строчные буквы: 268 или 208827064576
Строчные и прописные буквы: 528 или 53459728531456
Ниже, верхний и числа: 628 или 218340105584896
Добавьте пунктуацию и другие символы, и грубое принуждение собирается занять время.
Те числа являются общими комбинациями, которые оказываются перед необходимостью быть попробованными. Очевидно, хакер не собирается пробовать каждую комбинацию после того, как у них есть пароль, поэтому разделитесь на два для получения среднего количества требуемых комбинаций.
Более твердый результат хешей в более длительное процессорное время для вычисления хеша, таким образом, общее время дольше. Пример от Джона:
Benchmarking: Traditional DES [64/64 BS]... DONE Many salts: 819187 c/s real, 828901 c/s virtual Only one salt: 874717 c/s real, 877462 c/s virtual Benchmarking: BSDI DES (x725) [64/64 BS]... DONE Many salts: 29986 c/s real, 30581 c/s virtual Only one salt: 29952 c/s real, 30055 c/s virtual Benchmarking: FreeBSD MD5 [32/64 X2]... DONE Raw: 8761 c/s real, 8796 c/s virtual Benchmarking: OpenBSD Blowfish (x32) [32/64]... DONE Raw: 354 c/s real, 356 c/s virtual Benchmarking: Kerberos AFS DES [48/64 4K]... DONE Short: 294507 c/s real, 295754 c/s virtual Long: 858582 c/s real, 863887 c/s virtual Benchmarking: NT LM DES [64/64 BS]... DONE Raw: 6379K c/s real, 6428K c/s virtual Benchmarking: NT MD4 [Generic 1x]... DONE Raw: 7270K c/s real, 7979K c/s virtual Benchmarking: M$ Cache Hash [Generic 1x]... DONE Many salts: 12201K c/s real, 12662K c/s virtual Only one salt: 4862K c/s real, 4870K c/s virtual Benchmarking: LM C/R DES [netlm]... DONE Many salts: 358487 c/s real, 358487 c/s virtual Only one salt: 348363 c/s real, 348943 c/s virtual Benchmarking: NTLMv1 C/R MD4 DES [netntlm]... DONE Many salts: 510255 c/s real, 512124 c/s virtual Only one salt: 488277 c/s real, 489416 c/s virtual
Конечно, это является все абсолютно академическим, потому что хакеры просто позвонят Вашему секретарю, говорящему им, что они от IT, и им нужен их пароль для чего-то, и Ваш сильный пароль бесполезен.
Существует безопасность, которую Вы получаете от передачи клиента/сервера, например, как Вы сказали, когда Вы можете остановить взломщиков после 3 попыток (когда они нападают по сети, как с веб-приложениями). С этим сценарием почти любая длина пароля может быть обсуждена как достаточная.
Если однако инсайдер захватывает эту базу данных с хешированными короткими паролями и может обойти "по сетевому" ограничению 3 попыток, игровых изменений.
Протест с ограничением количества попыток на учетную запись состоит в том, что это будет достаточно только для целенаправленных попыток одной определенной учетной записи. Также необходимо защитить от нападения на все учетные записи с данным (или переставленный) пароль - это не инициирует предупреждения, когда Вы просто ограничите количество попыток на учетную запись. Учитывая сегодняшний NAT и ботнеты, Вы не можете даже утверждать, что ограничение количества попыток на IP является хорошей безопасностью образа мыслей.
Хорошие ресурсы для чтения были уже даны в других ответах.
Я использую нетривиальные пароли для защиты
* assets that are important * stuff that's not subject to anti-hammering (lock-out after repeated attempts) * stuff that can conceivably be exposed to brute-forced/dictionary-based/hybrid attacks
Я менее обеспокоен своей учетной записью Gmail, так как попытки "в лоб" взламывания того пароля просто заблокируют учетную запись (и любой с доступом к серверу просто заменил бы хеш одним из их выбора, не пытаются взломать его).
Лучший пароль долог (> 12 символов) и криптографически случаен. Однако это более трудно помнить. Так, пароль, который комбинирует несколько слов с на вид случайными символами, мог бы быть хорошим компромиссом (возможно, первая 1 или 2 буквы первых строк пары Вашей любимой лиричной песни).