diff options
Diffstat (limited to 'tde-i18n-ru/docs/tdenetwork/kppp/security.docbook')
-rw-r--r-- | tde-i18n-ru/docs/tdenetwork/kppp/security.docbook | 140 |
1 files changed, 140 insertions, 0 deletions
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 @@ +<chapter id="security"> +<title +>&kppp; и безопасность</title> + +<para +>В основном этот раздел предназначен для суперпользователей (<systemitem +>root</systemitem +>), людей с высокими потребностями в безопасности и тех, кто просто интересуется безопасностью. Нет необходимости в прочтении этого материала тем, кто использует &Linux; дома, тем не менее, кое-какие знания можно почерпнуть и отсюда.</para> + +<sect1 id="security-restricting-access"> +<title +>Запрет на доступ к &kppp;</title> + +<para +>Системный администратор может ограничить доступ на использование &kppp;. Существует два способа для достижения этого.</para> + +<sect2 id="security-group-permissions"> +<title +>Разрешение на доступ на уровне привилегий группы</title> + +<para +>Создайте новую группу (назовите её, к примеру, <systemitem +>dialout</systemitem +> или как-нибудь в этом роде) и добавляйте в неё тех пользователей, кому разрешено использовать &kppp;. Затем наберите в командной строке:</para> + +<screen +><prompt +>#</prompt +> <userinput +><command +>chown</command +> <option +>root.dialout</option +> <filename +>/opt/kde/bin/kppp</filename +></userinput> +<prompt +>#</prompt +> <userinput +><command +>chmod</command +> <option +>4750</option +> <filename +>/opt/kde/bin/kppp</filename +></userinput +> +</screen> + +<para +>Здесь подразумевается, что &kde; установлена в каталог <filename class="directory" +> /opt/kde/</filename +> и что новая группа называется <systemitem +>dialout</systemitem +>.</para> + +</sect2> + +<sect2 id="security-kppps-way"> +<title +>Запрет на доступ с непосредственным использованием &kppp;</title> + +<para +>С самого начала &kppp; проверяет, существует ли файл <filename +>/etc/kppp.allow</filename +>. Если такой файл существует, только перечисленные в нем пользователи могут использовать программу. Этот файл должен быть открыт для всех на чтение (но, конечно, <emphasis +>НЕ</emphasis +> запись.) Распознаваемыми являются только имена пользователей, вы не можете использовать <acronym +>UID</acronym +> в этом файле. Короткий пример:</para> + +<screen +># /etc/kppp.allow +# строки комментариев игнорируются, +# как и пустые строки + +fred +karl +daisy +</screen> + +<para +>В приведённом примере только пользователи <systemitem +>fred</systemitem +>, <systemitem +>karl</systemitem +> и <systemitem +>daisy</systemitem +> могут использовать программу, а так же пользователи с <acronym +>UID</acronym +> 0 (нет необходимости добавлять суперпользователя в этот файл).</para> + +</sect2> + +</sect1> + +<sect1 id="security-why-suid"> +<title +>У &kppp; присутствует <acronym +>SUID</acronym +>-бит. А безопасность?</title> + +<para +>Представляется невозможным написать программу дозвона без использования <acronym +>SUID</acronym +>-бита, безопасную и простую в использовании неопытными пользователями. В плане безопасности &kppp; использует следующую стратегию.</para> + +<itemizedlist> +<listitem> +<para +>Процессы программы &kppp; разветвляются в самом начале выполнения программы.</para> +</listitem> +<listitem> +<para +>Основной процесс, ответственный за операции с <acronym +>GUI</acronym +> (такие как взаимодействие с пользователем), теряет бит <acronym +>SUID</acronym +> после разветвления и выполняется с привилегиями обычного пользователя.</para> +</listitem> +<listitem> +<para +>Порождённый процесс сохраняет привилегии и отвечает за все действия, которым нужны привилегии <systemitem +>суперпользователя</systemitem +>. Для обеспечения безопасности этой части, в ней не используются вызовы библиотек &kde; и &Qt;, а только вызовы обычных библиотек. Исходный код этого процесса короток (около 500 строк) и хорошо документирован, его легко проверить на наличие дыр в безопасности.</para> +</listitem> +<listitem> +<para +>Головной и порождённый процессы взаимодействуют согласно стандартному <acronym +>IPC</acronym +> (взаимодействие процессов) ОС &UNIX;.</para> +</listitem> +</itemizedlist> + +<para +>Особая благодарность выражается Harri Porten за написание этого замечательного участка программы. Задача казалась невыполнимой, но он сумел решить её за одну неделю.</para> + +</sect1> + +</chapter> |