Шифрование и секретность в Linux


         

Руководство начинающего разработчика Debian

Depends Данный пакет не может быть установлен, если пакеты, указанные в списке зависимостей Depends, также не установлены. Используйте этот тип зависимости, если ваша программа гарантировано не будет работать (или вызовет какие-нибудь серьезные проблемы), если соответствующий пакет не установлен.
Recommends Программа dselect не установит ваш пакет, если пакеты, указанные в списке зависимостей Recommends, не установлены. Однако программы dpkg и apt-get должны позволить сделать это. Используйте данный тип зависимостей для пакетов, которые бы не использовались вместе с вашим пакетом только в нестандартных случаях.
Suggests Когда пользователь устанавливает ваш пакет, программа dselect предложит ему также установить пакеты, перечисленные в списке зависимостей Suggests. Программы dpkg и apt этого делать не будут. Используйте данный тип зависимостей для пакетов, которые могут расширить функциональность вашего пакета, и, таким образом, увеличить его полезность.

Обязательные файлы в каталоге debian
Справочник по Debian
The Linux kernel under Debian
Управление пакетами в Debian
Примеры скриптов
Основы Debian
Руководство по Debian
Обновление до дистрибутива testing
Заметка об авторских правах
Русский Debian 3.0 FAQ 0.3
Введение в создание пакетов для дистрибутива GNU Debian Linux

Шифрование и секретность в Linux

В эпоху электронных коммуникаций приходится уделять особое внимание вопросам конфиденциальности и защиты данных. Едва ли не каждый день приходится слышать о новых жертвах хакеров или пробелах в системе безопасности приложений, которым вы привыкли доверять.
В то же время шифрование обмена данными стало вполне обыденным явлением. На всех солидных коммерческих сайтах пересылка конфиденциальных данных (номера кредитной карты, домашнего адреса) защищается при помощи протокола SLL (Secure Sockets Layer).
Самый распространенный тип компьютерных преступлений вообще не связан со «взломом». Многие беспечные пользователи доверяют пересылку информации по Интернету таким протоколам, как POP и FTP. При этом пользователь может непреднамеренно передать свое имя и пароль в текстовом (не зашифрованном) виде.
Пересылка конфиденциальных данных в текстовом виде означает, что любой злоумышленник с программоп-сниффером (приложение, перехватывающее сетевой трафик между двумя сторонами) теоретически сможет получить доступ к секретной информации. Все сказанное относится и к области баз данных.
Удаленное подключение к PostgreSQL без шифрования данных открывает потенциальные возможности для злоупотреблений. Если хакер установит сниффер в вашей сети или в сети между клиентом и сервером, к которому вы подключаетесь, он сможет получить полный доступ ко всей информации, хранящейся в PostgreSQL.
Мы рассмотрим три общих способа шифрования данных между PostgreSQL и клиентом.
Встроенная поддержка SSL. Поддержка SSL в PostgreSQL активизируется при компиляции с ключом --with-ssl. Это позволяет psql (или любому клиенту, написанному с учетом возможности подключения к PostgreSQL через SSL) установить защищенное подключение к PostgreSQL.
SSH/OpenSSH. Сеанс SSH (Secure SHell) позволяет создать туннель (tunnel) к удаленному серверу — при условии, что демон SSH (например, sshd) установлен в системе и доступен для подключающегося пользователя. Для этого в системе, в которой работает PostgreSQL, создается учетная запись для каждого пользователя.
Stunnel. Приложение Stunnel создает шифрованный туннель для обмена данными между клиентом и сервером PostgreSQL. Для пользователей, не имеющих прямого доступа к удаленному серверу, Stunnel можно настроить на работу в клиентской системе.

Аутентификация и шифрование
Аутентификация клиентов занимает центральное место в PostgreSQL. Без нее пришлось бы либо пожертвовать возможностью удаленного подключения, либо слепо разрешать каждому, кто подключается к серверу, выборку и даже модификацию данных. PostgreSQL предоставляет в ваше распоряжение несколько механизмов аутентификации клиентов, и вы как администратор базы данных должны выбрать тот механизм, который лучше подходит для вашей системы.

Аутентификация клиента
Аутентификация с использованием паролей
Структура таблицы pg_shadow
Простой файл pgjiba conf
Проверка прав доступа
Структура файла pg_hba conf
Разделение полей в
Комментарии в файле pgjiba conf
Синтаксис записей файла pg_hba conf
Примеры записей в файле pg_hba conf

Управление базами данных
В этой главе будут рассмотрены некоторые вопросы управления СУБД PostgreSQL, в том числе запуск и завершение серверного процесса PostgreSQL, инициализация файловой системы, а также создание, удаление и сопровождение баз данных. Кроме того, рассматриваются вопросы архивации и восстановления данных из базы.

Запуск и завершение PostgreSQL
Приложение pg_ctl
Запуск PostgreSQL в приложении pg_ctl
Запуск PostgreSQL в приложении pg_ctl
Завершение PostgreSQL в приложении pg_ctl
Завершение PostgreSQL в приложении pg_ctl
Перезапуск PostgreSQL в приложении pg_ctl
Перезапуск PostgreSQL в приложении pg_ctl
Проверка состояния PostgreSQL в pg_ctl
Проверка состояния

Управление пользователями и группами
Каждому пользователю PostgreSQL назначается внутренний системный идентификатор (sysid) и пароль, хотя пароль не всегда обязателен для подключения (это зависит от файла конфигурации pg_hba.conf, о котором говорилось в главе 8). Системный идентификатор связывает объекты базы данных с владельцем (так называется пользователь, которому разрешено предоставлять и отзывать права доступа к объекту).

Управление пользователями
Просмотр списка пользователей
Структура таблицы pg_shadow
Создание пользователей
Создание пользователей SQL CREATE USER
Создание обычного пользователя
Создание пользователя с правом CREATEDB
Создание суперпользователя
Создание пользователей - createuser
Создание пользователя сценарием createuser

PL/pgSQL
Поддержка языков программирования реализуется отдельным объектом базы данных. Таким образом, прежде чем использовать язык PL/pgSQL, необходимо включить его поддержку в базу данных (по умолчанию PL/pgSQL устанавливается вместе с PostgreSQL). В этом разделе описана процедура включения PL/pgSQL в существующую базу данных

Поддержка PL/pgSQL
Включение поддержки PL/pgSQL при помощи psql
Создание обработчика вызовов PL/pgSQL
Включение поддержки
Включение поддержки PL/pgSQL - createlang
Использование приложения
Передача имени суперпользователя
Структура языка
Блоки
Структура программного блока PL/pgSQL

JDBC
Прежде чем использовать JDBC, следует построить драйверы JDBC для PostgreSQL. Для этого необходимо иметь исходные тексты драйверов на языке Java, входящие в полную поставку PostgreSQL и в пакет opt. Их также можно загрузить с сайта PostgreSQL

Построение драйвера JDBC для PostgreSQL
Использование драйвера PostgreSQL
Поиск по имени класса
Простое подключение JDBC
Использование JDBC
Принципы использования JDBC
Создание объекта Statement
Простая выборка в JDBC
Простая вставка в JDBC
Нетривиальные возможности JDBC

LXP
Атрибут start инициализирует целочисленный счетчик цикла, который увеличивается на 1 при каждой последующей итерации. Если в теге определен атрибут end, цикл прекращается после достижения числа, указанного в этом атрибуте. Если же определен атрибут endbefore, цикл прекращается на одну итерацию раньше. Таким образом, атрибуты end и endbefore в этом отношении функционально эквивалентны операторам = и таких языков программирования, как РНР и С

Циклы
Простой цикл for
Вывод элементов массива в цикле for
Методы включения в LXP
Включение файлов LXP
Включение документа LXP
Включение неструктурированных файлов
Включение неструктурированных файлов
Включение файлов с разделителями
Включение файла с разделителями

Команды PostgreSQL
Описание каждой команды за редким исключением делится па три части: синтаксис, описание и примергл. В первой части приводится общий синтаксис команды, объясняется смысл параметров и возможные результаты выполнения команды. Во второй части приводится краткий обзор основных применений команды. В последней части дается хотя бы один практический пример ее использования.

COMMIT
Пример 1
COPY
Ограничения
Формат файлов
Примеры
CREATE AGGREGATE
Пример 1
CREATE DATABASE
Примеры

Типы расширенных кодировок
Перечислены расширенные кодировки, поддерживаемые PostgreSQL версии 7.1.x. Эти типы кодировок доступны только в том случае, если при конфигурировании PostgreSQL был задан ключ --enable_multibyte (см. главу 2). Если расширенная кодировка не нужна, укажите тип SQL_ASCII.

Типы расширенных кодировок
Ключи командной строки postgres
Двоичный формат команды COPY
Заголовок
Записи
Завершение

Ядро ОС Linux

Эта книга вдохновляет вас, начинающих исследователей ядер, не достаточно знающих UNIX-системы, для изучения ядра Linux, когда она впервые появилась у вас и еще тяжела для полного понимания. Это пособие создано для того, чтобы помочь вам быстрее изучить основные концепции и выделить из внутренней структуры Linux то, что может понадобиться вам, чтобы, не читая полностью исходный текст ядра, определить, что же случилось с какой-либо конкретной переменной. Почему Linux ? Linux - это первая свободно доступная система типа UNIX для 386 компьютеров. Она была полностью переписана в уменьшенном объеме так, не имеет большого количества функций, работающих с режимом реального времени, как в других операционных системах (386BSD), и, следовательно, проста в понимании и доступна для изменений.
UNIX появился около 20 лет назад, но только недавно появились столь мощные микрокомпьютеры, способные поддерживать работу операционных систем с многозадачным, многопользовательским защищенным режимом. Кроме того, описания UNIX труднодоступны, лишь документация о внутренностях ядра распространялась свободно. UNIX, кажущийся в начале простым, со временем увеличивался в размерах и превратился в объемную систему, понятную лишь профессионалу.

Исследования ядра LINUXа
Драйверы устройств


Компьютерный андеграунд
Решение прикладных задач на компьютере. Практикум для студентов
Средства добычи знаний в бизнесе и финансах. OLAP-системы
Hardware - разное
Об IntranetWare для Малого Бизнеса
Справка по Adobe Premiere Pro 7.0
Язык программирования Си
Что такое реестр Общая теория
Звуковая студия на рабочем столе
Очерки по истории компьютерной науки и техники в Украине
История западноевропейской музыки до 1789 года
Межсетевое экранирование
Самоучитель по Macromedia HOMESITE
Проектно-вычислительный комплекс Structure CAD
Linux HOWTO
Спецификация языка HTML
HTML в примерах
Спецификация HTML 4.01 + Спецификация CSS2
Спецификация языка HTML
eMule. Полное описание