Содержание

Пошаговая инструкция настройки обычного Linux сервера

Конфигурационные файлы

Примеры конфигов

sudo wget https://wiki.itvideo.pro/dokuwiki/_export/code/linux/vds/bashrc?codeblock=1 -O .bashrc
sudo wget https://wiki.itvideo.pro/dokuwiki/_export/code/linux/vds/bash_aliases?codeblock=1 -O .bash_aliases
sudo wget https://wiki.itvideo.pro/dokuwiki/_export/code/linux/vds/inputrc?codeblock=1 -O .inputrc
sudo wget https://wiki.itvideo.pro/_media/linux/vimrc.txt -O .vimrc

1. Заходим под root

2. Установка необходимых пакетов

sudo -i
apt update && apt install -y \
    curl \
    vim  \
    telnet \
    sudo \
    wget \
    mc \
    net-tools \
    git \
    curl \
    man \
    bash-completion \
    dnsutils \
    whois

3. Изменение сетевых настроек

    vim /etc/network/interfaces
interfaces
   auto eth1
   iface eth1 inet static
   address 192.168.2.9
   netmask 255.255.255.0
   gateway 192.168.2.1
   nameserver 192.168.2.1
systemctl restart networking.service

4. Изменить название сервера

hostnamectl
sudo hostnamectl set-hostname srv.mydomain.ru
sudo systemctl restart systemd-hostnamed
hostnamectl

5. Переименование motd

sudo mv /etc/motd /etc/motd.old

6.Установка временной зоны

sudo timedatectl set-timezone Europe/Moscow

7.Создание пользователя

adduser myuser

8.Создание пароля

passwd myuser

9. Добавление пользователя в группу wheel для sudo

RHEL

usermod -aG wheel myuser

Debian

usermod -aG sudo myuser

10. Sudo

Шаг 1. Запускаем visudo

sudo visudo 

Шаг 2. Меняем в файле Defaults env_reset на Defaults env_reset, timestamp_timeout=60, чтобы пароль нужно было вводить не так часто. Шаг 3. Находим файл в /etc/sudoers.d/ и добавляем в него строку, чтобы пароль вообще не запрашивало.

 myuser ALL=(ALL) NOPASSWD:ALL

11. Настраиваем SSH

sudo vim /etc/ssh/sshd_config

Переопределяем порт

По умолчанию используется порт 22 и в файле конфигурации параметр Port=22 закомментирован. Его необходимо раскомментировать и сдублировать, тогда SSH будет отвечать сразу на двух портах.

Port 22
Port 22222

Перегружаем sshd и проверяем вход под новым пользователем по SSH на порт 22222 и работу sudo Если нормально, то возвращаемся к редактированию sshd_config

ПараметрОписание
Port 22Комментируем
Port 22222Оставляем
PermitRootLoginЗапрещаем

12. Настройка файервола UFW

sudo ufw status verbose
sudo apt install ufw
sudo ufw allow from 98.169.197.61 to any port 55522
sudo ufw allow http
sudo ufw allow https
sudo ufw allow smtp
sudo ufw enable
sudo ufw reload
sudo ufw status numbered
sudo ufw delete 2

13. Настройка vim

  mkdir -p .vim/colors
  cd .vim/colors

Установка тем

gruvbox

 wget https://raw.githubusercontent.com/morhetz/gruvbox/master/colors/gruvbox.vim

molokai

wget https://raw.githubusercontent.com/tomasr/molokai/master/colors/molokai.vim

better-molokai Лучшая тема, с исправленным цветом комментариев

 wget https://raw.githubusercontent.com/ELouisYoung/vim-better-molokai/master/colors/better-molokai.vim

14. Изменение PS1

Копируем .bashrc

15. Запрет вывода "Last Login message"

   >/var/log/lastlog
   chattr +i /var/log/lastlog
   >/var/log/wtmp
   >/var/log/btmp
   chattr +i /var/log/wtmp /var/log/btmp

16. Вывод системной информации neofetch

Устанавливаем и редактируем конфигурационный файл

sudo apt install neofetch
sudo mv .config/neofetch/config.conf  .config/neofetch/config.conf.old
sudo vim  .config/neofetch/config.conf

вставить конфиг ниже

config.conf
print_info() {
    info title
    info underline
    info "OS" distro
    info "Kernel" kernel
    info "Uptime" uptime
    info "Packages" packages
    info "Shell" shell
    info "Resolution" resolution
    info "DE" de
    info "Terminal" term
    info "Memory" memory
    info "Disk" disk
    info "Public IP" public_ip
}
title_fqdn="on"
kernel_shorthand="on"
distro_shorthand="off"
os_arch="on"
uptime_shorthand="on"
memory_percent="on"
memory_unit="mib"
package_managers="on"
shell_path="off"
shell_version="on"
speed_type="bios_limit"
speed_shorthand="off"
cpu_brand="on"
cpu_speed="on"
cpu_cores="logical"
cpu_temp="off"
gpu_brand="on"
gpu_type="all"
refresh_rate="off"
gtk_shorthand="off"
gtk2="on"
gtk3="on"
public_ip_host="http://ident.me"
public_ip_timeout=2
de_version="on"
disk_show=('/')
disk_subtitle="mount"
disk_percent="on"
music_player="auto"
song_format="%artist% - %album% - %title%"
song_shorthand="off"
mpc_args=()
colors=(distro)
bold="on"
underline_enabled="on"
underline_char="-"
separator=":"
block_range=(0 15)
color_blocks="on"
block_width=3
block_height=1
col_offset="auto"
bar_char_elapsed="-"
bar_char_total="="
bar_border="on"
bar_length=15
bar_color_elapsed="distro"
bar_color_total="distro"
cpu_display="off"
memory_display="off"
battery_display="off"
disk_display="off"
image_backend="off"
image_source="auto"
ascii_distro="auto"
ascii_colors=(distro)
ascii_bold="on"
image_loop="off"
thumbnail_dir="${XDG_CACHE_HOME:-${HOME}/.cache}/thumbnails/neofetch"
crop_mode="normal"
crop_offset="center"
image_size="auto"
gap=3
yoffset=0
xoffset=0
background_color=
stdout="off"