Как запустить PostgreSQL в Kali Linux

Kali LinuxKali LinuxBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

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

Введение в PostgreSQL

PostgreSQL, также известный как Postgres, — это мощная система управления реляционными базами данных (СУБД) (relational database management system (RDBMS)) с открытым исходным кодом, широко используемая в различных отраслях и приложениях. Она известна своими надежными функциями, надежностью и соответствием стандарту SQL (Structured Query Language).

PostgreSQL предназначен для обработки широкого спектра типов данных, включая структурированные и неструктурированные данные, что делает его универсальным выбором для различных вариантов использования. Он поддерживает расширенные функции, такие как транзакции, управление параллельным доступом (concurrency control) и целостность данных (data integrity), обеспечивая надежность и согласованность ваших данных.

Одним из ключевых преимуществ PostgreSQL является его расширяемость (extensibility). Он позволяет пользователям создавать пользовательские типы данных, функции и даже языки программирования, что делает его легко адаптируемым к конкретным бизнес-требованиям. Кроме того, PostgreSQL предлагает расширенные функции безопасности, такие как контроль доступа на основе ролей (role-based access control) и шифрование, для защиты ваших данных от несанкционированного доступа.

graph TD A[PostgreSQL] --> B[Relational Database] B --> C[SQL Compliance] B --> D[Data Types] B --> E[Transactions] B --> F[Concurrency Control] B --> G[Data Integrity] B --> H[Extensibility] B --> I[Security]

PostgreSQL имеет широкий спектр применений, в том числе:

Application Description
Web Applications Хранение и управление данными для веб-приложений, таких как платформы электронной коммерции, системы управления контентом и платформы социальных сетей.
Business Intelligence Хранение и анализ больших наборов данных для бизнес-аналитики и принятия решений.
Geospatial Applications Обработка геопространственных данных, таких как сервисы на основе местоположения и географические информационные системы (ГИС) (geographic information systems (GIS)).
Scientific and Research Хранение и анализ научных данных, таких как геномные данные, астрономические наблюдения и мониторинг окружающей среды.

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

Установка PostgreSQL на Kali Linux

Kali Linux — это популярный дистрибутив для тестирования на проникновение (penetration testing) и этичного хакинга (ethical hacking), основанный на Debian. Хотя Kali Linux в первую очередь ориентирован на инструменты, связанные с безопасностью, он также поддерживает установку и использование PostgreSQL для различных целей, таких как управление базами данных, анализ данных и интеграция с приложениями, связанными с безопасностью.

Когда вы открываете терминал, вы автоматически попадаете в оболочку контейнера Kali Linux. Все следующие команды должны выполняться в этой среде Kali Linux.

Сначала обновите списки пакетов, чтобы убедиться, что у вас есть последняя информация о доступных пакетах.

apt-get update

Затем установите пакет PostgreSQL. Эта команда загрузит и установит сервер PostgreSQL и клиентские инструменты.

apt-get install -y postgresql postgresql-contrib

Флаг -y автоматически подтверждает установку, поэтому вам не нужно вводить 'y' при появлении запроса. Пакет postgresql-contrib включает в себя дополнительные утилиты и расширения для PostgreSQL.

После завершения установки вы можете проверить версию PostgreSQL, выполнив следующую команду:

psql --version

Это должно отобразить установленную версию PostgreSQL, подтверждая, что установка прошла успешно.

Запуск и подключение к PostgreSQL

После установки PostgreSQL служба обычно запускается автоматически. Однако в среде Docker-контейнера вам может потребоваться вручную запустить службу или убедиться, что она работает.

Чтобы запустить службу PostgreSQL в контейнере Kali Linux, используйте следующую команду:

service postgresql start

Эта команда запускает процесс сервера базы данных PostgreSQL.

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

su - postgres

Эта команда переключает текущего пользователя на postgres. Теперь вы будете находиться в домашнем каталоге пользователя postgres.

Теперь подключитесь к интерактивному терминалу PostgreSQL, просто набрав psql:

psql

Вы должны увидеть приглашение PostgreSQL, которое выглядит как postgres=#. Это указывает на то, что вы успешно подключились к базе данных PostgreSQL как пользователь postgres.

PostgreSQL connection verification

Чтобы проверить ваше соединение и увидеть доступные базы данных, вы можете использовать команду \l в командной строке psql:

\l

Эта команда выводит список всех баз данных, присутствующих в вашем экземпляре PostgreSQL. Вы должны увидеть базы данных по умолчанию, такие как postgres, template0 и template1.

Чтобы выйти из командной строки psql, введите \q и нажмите Enter.

\q

Чтобы выйти из сеанса пользователя postgres и вернуться к пользователю root (или вашему предыдущему пользователю), введите exit и нажмите Enter.

exit

Теперь вы снова находитесь в оболочке контейнера Kali Linux.

Создание и управление базой данных

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

Сначала переключитесь обратно на пользователя postgres, чтобы выполнять операции с базой данных:

su - postgres

Подключитесь к командной строке psql:

psql

В командной строке psql создайте новую базу данных с именем cyberdb:

CREATE DATABASE cyberdb;

Вы должны увидеть сообщение CREATE DATABASE.

Теперь подключитесь к вновь созданной базе данных. Вы можете сделать это, набрав \c, за которым следует имя базы данных:

\c cyberdb

Приглашение должно измениться на cyberdb=#, указывая на то, что вы теперь подключены к базе данных cyberdb.

Далее давайте создадим простую таблицу с именем users в базе данных cyberdb. Эта таблица будет хранить информацию о пользователях, включая ID, имя пользователя и адрес электронной почты.

CREATE TABLE users (
    id SERIAL PRIMARY KEY,
    username VARCHAR(50) UNIQUE NOT NULL,
    email VARCHAR(100) UNIQUE NOT NULL
);

Эта команда создает таблицу с тремя столбцами:

  • id: Автоматически увеличивающееся целое число, которое служит первичным ключом (primary key).
  • username: Строка длиной до 50 символов, которая должна быть уникальной и не может быть пустой.
  • email: Строка длиной до 100 символов, которая должна быть уникальной и не может быть пустой.

Вы должны увидеть сообщение CREATE TABLE.

Чтобы убедиться, что таблица была создана, вы можете перечислить таблицы в текущей базе данных с помощью команды \dt:

\dt

Это отобразит список таблиц в базе данных cyberdb, и вы должны увидеть в списке таблицу users.

Наконец, выйдите из командной строки psql и сеанса пользователя postgres:

\q
exit

Теперь вы снова находитесь в оболочке контейнера Kali Linux.

Steps to create and manage database

Вставка и запрос данных

Теперь, когда у вас есть база данных и таблица, давайте вставим некоторые данные в таблицу users и затем запросим их.

Сначала переключитесь обратно на пользователя postgres и подключитесь к базе данных cyberdb:

su - postgres
psql -d cyberdb

Теперь вы подключены к базе данных cyberdb.

Вставьте нового пользователя в таблицу users с помощью команды INSERT INTO:

INSERT INTO users (username, email) VALUES ('labex', '[email protected]');

Вы должны увидеть сообщение INSERT 0 1, указывающее на то, что одна строка была успешно вставлена.

Теперь давайте вставим еще одного пользователя:

INSERT INTO users (username, email) VALUES ('kaliuser', '[email protected]');

Вы снова должны увидеть INSERT 0 1.

Чтобы получить все данные из таблицы users, используйте команду SELECT:

SELECT * FROM users;

Эта команда отобразит все строки и столбцы из таблицы users. Вы должны увидеть двух пользователей, которых вы только что вставили.

Вы также можете выбрать определенные столбцы:

SELECT username FROM users;

Это отобразит только имена пользователей из таблицы.

Чтобы выбрать конкретного пользователя на основе условия, используйте предложение WHERE:

SELECT * FROM users WHERE username = 'labex';

Это извлечет строку, где имя пользователя равно 'labex'.

Наконец, выйдите из командной строки psql и сеанса пользователя postgres:

\q
exit

Теперь вы снова находитесь в оболочке контейнера Kali Linux.

Illustration for data operations in SQL

Заключение

Этот учебник предоставил исчерпывающее руководство по настройке и управлению базами данных PostgreSQL в среде Kali Linux, широко используемой платформе в области кибербезопасности (Cybersecurity). Вы узнали, как установить PostgreSQL, запустить службу, подключиться к базе данных с помощью инструмента командной строки psql, создать новую базу данных и таблицу, а также вставлять и запрашивать данные. Следуя изложенным шагам, вы теперь можете уверенно начать работу с PostgreSQL, используя его возможности для поддержки ваших проектов и задач, ориентированных на кибербезопасность. Обладая этими знаниями, вы можете и дальше совершенствовать свои навыки в области кибербезопасности и изучать огромный потенциал управления базами данных в сфере кибербезопасности.