Skip to content

Instantly share code, notes, and snippets.

@antonlukin
Last active March 7, 2024 16:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save antonlukin/4eabd05455562f914650be7b86fe071c to your computer and use it in GitHub Desktop.
Save antonlukin/4eabd05455562f914650be7b86fe071c to your computer and use it in GitHub Desktop.
Установка и настройка Ubuntu Server

Настройка Ubuntu Server

На данном этапе предполагается, что у вас установлен чистый дистрибутив Ubuntu Server старше 11.04. Все команды ниже гарантировано работают в версии 12.04.

Для начала необходимо добавить пользователя, от имени которого вы будете работать в дальнейшем на сервере. Делается это командой:

adduser login

Здесь login ваше имя пользователя. На всех своих серверах я использую логин master.

Я предпочитаю сразу же убрать необходимость ввода пароля при каждом запуске команды через sudo. Однако не советую этого делать всем и везде, так как это несомненно ударит по безопасности:

visudo

Находим строку, которая начинается с %sudo и заменяем ее на:

%sudo ALL=(ALL) NOPASSWD: ALL

Открываем файл групповой политки любым редактором. Если вы не знакомы с vim, то лучше будет использовать интуитивный nano:

nano /etc/group

Напротив строчки sudo должен быть ваш логин. Добавьте его, если это не так.

Теперь можно залогиниться под новым пользователем. На время настройки, перейдем в режим администратора:

sudo -s

Чтобы настроить имя хоста, используйте файлы

/etc/hosts
/etc/hostname

А также команду hostname. В большинстве случаев, можете оставить все по умолчанию.

Установка окружения

Следующим шагом обновим информацию о пакетах и установим кое-что:

apt update && apt install language-pack-ru language-pack-ru-base aptitude build-essential zlib1g-dev zsh git-core vim screen exuberant-ctags curl zip unzip

Таким образом будут установлены:

  • language-pack-ru language-pack-ru-base — поддержка русского языка
  • aptitude — удобный менеджер пакетов
  • build-essential — инструменты для сборки пакетов
  • zsh — удобная командная оболочка
  • git-core — система контроля версия git
  • vim — расширенный текстовый редактор
  • screen — работа с несколькими сессиями в рамках одной
  • exuberant-ctags — утилита-плагин для vim, собирающая информацию об именах и позициях переменных, функций и процедур, встречающихся в исходном коде
  • curl — удобная сетевая утилита
  • zip/unzip — архвитор zip

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

Если сервер находится не в вашем часовом поясе, то удобнее будет настроить на нем ваше локальное время. Делается это командой:

dpkg-reconfigure tzdata

Создание системного пользователя:

sudo adduser --no-create-home --disabled-login --shell /bin/false http

Установка PHP

sudo add-apt-repository ppa:ondrej/php

Установка пакетов
sudo apt install php8.2-fpm php8.2-mysql php8.2-zip php8.2-gd php8.2-xsl php8.2-redis php8.2-curl php8.2-imagick php8.2-mbstring php8.2-intl

SMTP на digitalocean

sudo ufw enable
sudo ufw allow 25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment