Установка на Ubuntu Server: Postgresql, Apache, SSH | Пошаговая инструкция | AdminWiki

Установка на Ubuntu Server: Postgresql, Apache и SSH - Полное руководство

17 декабря 2025 8 мин. чтения #apache #debian #linux server #postgresql #ssh #ubuntu сервер #настройка сервера

Представь, что ты только что развернул чистый Ubuntu Server и тебе нужно превратить его в полноценный рабочий сервер. В этой статье я, как Senior DevOps ментор, проведу тебя через ключевые этапы установки на Ubuntu Server самых важных сервисов: от базовой настройки SSH до развертывания Postgresql и Apache.

Подготовка Ubuntu Server к работе

Перед тем как начать установку на Ubuntu Server конкретных сервисов, давай разберем базовые шаги, которые обеспечат стабильную работу системы.

Обновление системы и установка базовых утилит

Первое, что нужно сделать после Ubuntu Server установки — обновить пакеты:

bash
sudo apt update
sudo apt upgrade -y
sudo apt install -y curl wget htop net-tools

💡 Совет ментора: Всегда выполняй apt update перед установкой любых пакетов. Это гарантирует, что ты работаешь с актуальными версиями из репозиториев.

Установка SSH на Ubuntu Server

SSH — твой главный инструмент для удаленного управления. Установка SSH на Ubuntu Server обычно выполняется одной командой, но правильная настройка требует внимания.

Базовая установка и настройка безопасности

bash
# Установка OpenSSH сервера
sudo apt install -y openssh-server

# Проверка статуса службы
sudo systemctl status ssh

# Автозагрузка при старте системы
sudo systemctl enable ssh

После установки SSH на Ubuntu Server, рекомендую сразу же настроить безопасность:

bash
# Резервное копирование конфига
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup

# Открываем конфиг для редактирования
sudo nano /etc/ssh/sshd_config

В файле /etc/ssh/sshd_config измени следующие параметры:

  • Port 2222 — меняем стандартный порт (необязательно, но рекомендуется)
  • PermitRootLogin no — запрещаем вход под root
  • PasswordAuthentication no — отключаем парольную аутентификацию
  • PubkeyAuthentication yes — включаем аутентификацию по ключам

⚠️ Внимание: Прежде чем отключать PasswordAuthentication, убедись, что добавил свой SSH-ключ в ~/.ssh/authorized_keys на сервере!

Установка Apache на Ubuntu Server

Apache — один из самых популярных веб-серверов. Ubuntu Server установка Apache выполняется просто, но есть нюансы в настройке.

Полная установка и базовая конфигурация

bash
# Установка Apache2
sudo apt install -y apache2

# Проверяем версию
apache2 -v

# Запускаем и добавляем в автозагрузку
sudo systemctl start apache2
sudo systemctl enable apache2

После установки Apache на Ubuntu Server, проверь его работу:

bash
# Проверка статуса
sudo systemctl status apache2

# Тестирование конфигурации
sudo apache2ctl configtest

# Перезагрузка конфигурации
sudo systemctl reload apache2

Настройка виртуальных хостов

Для Ubuntu Server установка Apache будет неполной без настройки виртуальных хостов:

config
<VirtualHost *:80>
    ServerAdmin admin@example.com
    ServerName example.com
    ServerAlias www.example.com
    
    DocumentRoot /var/www/example.com/public_html
    
    ErrorLog ${APACHE_LOG_DIR}/example.com_error.log
    CustomLog ${APACHE_LOG_DIR}/example.com_access.log combined
    
    <Directory /var/www/example.com/public_html>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

Установка Postgresql Server на Ubuntu

PostgreSQL — мощная объектно-реляционная СУБД. Установка Postgresql Ubuntu Server имеет свои особенности в зависимости от версии.

Установка последней версии PostgreSQL

bash
# Добавляем официальный репозиторий PostgreSQL
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

# Импортируем ключ репозитория
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

# Обновляем пакеты и устанавливаем PostgreSQL
sudo apt update
sudo apt install -y postgresql postgresql-contrib

После установки Postgresql Server проверь его состояние:

bash
# Проверка статуса службы
sudo systemctl status postgresql

# Проверка версии
psql --version

# Запуск интерактивной консоли PostgreSQL
sudo -u postgres psql

Базовая настройка безопасности PostgreSQL

После установки Postgresql Ubuntu Server нужно настроить аутентификацию:

config
# Редактируем pg_hba.conf
sudo nano /etc/postgresql/14/main/pg_hba.conf

# Меняем метод аутентификации с trust на md5:
# Было: local   all             all                                     trust
# Стало: local   all             all                                     md5

💡 Важно: Цифра 14 в пути — это версия PostgreSQL. У тебя может быть другая версия. Проверь содержимое каталога /etc/postgresql/.

Создание базы данных и пользователя

sql
-- Входим в консоль PostgreSQL
sudo -u postgres psql

-- Создаем нового пользователя
CREATE USER myuser WITH PASSWORD 'StrongPassword123!';

-- Создаем базу данных
CREATE DATABASE mydb OWNER myuser;

-- Даем все привилегии пользователю на базу данных
GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;

-- Выходим
\q

Сравнение методов установки на Debian-системах

Сервис Ubuntu Server Debian Рекомендуемая версия
Apache apt install apache2 apt install apache2 2.4.x
PostgreSQL Из репозитория pgdg Из репозитория pgdg 14+
SSH Server apt install openssh-server apt install openssh-server OpenSSH 8.x

Часто задаваемые вопросы (FAQ)

Чем отличается установка на Debian от Ubuntu Server установки?

В 95% случаев команды идентичны, так как Ubuntu основан на Debian. Основные отличия: версии пакетов в репозиториях и некоторые системные утилиты. Для установки server на Debian используй те же команды apt install, но проверяй доступность пакетов в репозиториях конкретной версии Debian.

Как проверить, что Apache работает после установки на Ubuntu Server?

Выполни команду sudo systemctl status apache2 и проверь, что служба активна. Затем открой браузер и перейди по IP-адресу сервера. Должна появиться стандартная страница "Apache2 Ubuntu Default Page". Также проверь логи: tail -f /var/log/apache2/access.log.

Почему не получается подключиться к PostgreSQL после установки?

Скорее всего, проблема в настройках аутентификации в pg_hba.conf или в брандмауэре. Проверь: 1) Правильно ли настроен метод аутентификации, 2) Открыт ли порт 5432 в брандмауэре, 3) Слушает ли PostgreSQL на нужном интерфейсе (0.0.0.0 или localhost).

Можно ли установить несколько версий PostgreSQL на один сервер?

Да, можно. Каждая версия устанавливается в отдельный каталог (/etc/postgresql/14/, /etc/postgresql/15/ и т.д.) и использует разные порты. Управлять службами можно через systemctl с указанием версии: sudo systemctl status postgresql@14-main.

Заключение

Мы прошли полный путь от чистой системы до рабочего сервера с SSH для управления, Apache для веб-сервисов и PostgreSQL для данных. Запомни ключевые моменты:

  • Всегда начинай с обновления системы (apt update && apt upgrade)
  • Настрой безопасность SSH перед открытием доступа к серверу
  • Для Ubuntu Server установка Apache включает настройку виртуальных хостов под твои проекты
  • Установка Postgresql Ubuntu Server требует дополнительной настройки аутентификации
  • Тестируй каждый сервис после установки командой systemctl status

Теперь у те есть готовый к работе сервер. Следующие шаги — настройка брандмауэра (UFW), резервное копирование и мониторинг. Но это уже тема для отдельной статьи.

Поделиться:
Сохранить гайд? В закладки браузера