From f7e7a923aca8be643f9ae6f7252f9fb27b3d2c3b Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Sat, 3 Dec 2011 11:05:10 -0600 Subject: Second part of prior commit --- tde-i18n-ru/docs/tdenetwork/kppp/security.docbook | 140 ++++++++++++++++++++++ 1 file changed, 140 insertions(+) create mode 100644 tde-i18n-ru/docs/tdenetwork/kppp/security.docbook (limited to 'tde-i18n-ru/docs/tdenetwork/kppp/security.docbook') diff --git a/tde-i18n-ru/docs/tdenetwork/kppp/security.docbook b/tde-i18n-ru/docs/tdenetwork/kppp/security.docbook new file mode 100644 index 00000000000..a0ae43a1f1d --- /dev/null +++ b/tde-i18n-ru/docs/tdenetwork/kppp/security.docbook @@ -0,0 +1,140 @@ + +&kppp; и безопасность + +В основном этот раздел предназначен для суперпользователей (root), людей с высокими потребностями в безопасности и тех, кто просто интересуется безопасностью. Нет необходимости в прочтении этого материала тем, кто использует &Linux; дома, тем не менее, кое-какие знания можно почерпнуть и отсюда. + + +Запрет на доступ к &kppp; + +Системный администратор может ограничить доступ на использование &kppp;. Существует два способа для достижения этого. + + +Разрешение на доступ на уровне привилегий группы + +Создайте новую группу (назовите её, к примеру, dialout или как-нибудь в этом роде) и добавляйте в неё тех пользователей, кому разрешено использовать &kppp;. Затем наберите в командной строке: + +# chown /opt/kde/bin/kppp +# chmod /opt/kde/bin/kppp + + +Здесь подразумевается, что &kde; установлена в каталог /opt/kde/ и что новая группа называется dialout. + + + + +Запрет на доступ с непосредственным использованием &kppp; + +С самого начала &kppp; проверяет, существует ли файл /etc/kppp.allow. Если такой файл существует, только перечисленные в нем пользователи могут использовать программу. Этот файл должен быть открыт для всех на чтение (но, конечно, НЕ запись.) Распознаваемыми являются только имена пользователей, вы не можете использовать UID в этом файле. Короткий пример: + +# /etc/kppp.allow +# строки комментариев игнорируются, +# как и пустые строки + +fred +karl +daisy + + +В приведённом примере только пользователи fred, karl и daisy могут использовать программу, а так же пользователи с UID 0 (нет необходимости добавлять суперпользователя в этот файл). + + + + + + +У &kppp; присутствует <acronym +>SUID</acronym +>-бит. А безопасность? + +Представляется невозможным написать программу дозвона без использования SUID-бита, безопасную и простую в использовании неопытными пользователями. В плане безопасности &kppp; использует следующую стратегию. + + + +Процессы программы &kppp; разветвляются в самом начале выполнения программы. + + +Основной процесс, ответственный за операции с GUI (такие как взаимодействие с пользователем), теряет бит SUID после разветвления и выполняется с привилегиями обычного пользователя. + + +Порождённый процесс сохраняет привилегии и отвечает за все действия, которым нужны привилегии суперпользователя. Для обеспечения безопасности этой части, в ней не используются вызовы библиотек &kde; и &Qt;, а только вызовы обычных библиотек. Исходный код этого процесса короток (около 500 строк) и хорошо документирован, его легко проверить на наличие дыр в безопасности. + + +Головной и порождённый процессы взаимодействуют согласно стандартному IPC (взаимодействие процессов) ОС &UNIX;. + + + +Особая благодарность выражается Harri Porten за написание этого замечательного участка программы. Задача казалась невыполнимой, но он сумел решить её за одну неделю. + + + + -- cgit v1.2.1