Пошаговая инструкция настройки обычного 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
sudo -i
apt update && apt install -y \
    curl \
    vim  \
    telnet \
    sudo \
    wget \
    mc \
    net-tools \
    git \
    curl \
    man \
    bash-completion \
    dnsutils \
    whois
    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
hostnamectl
sudo hostnamectl set-hostname srv.mydomain.ru
sudo systemctl restart systemd-hostnamed
hostnamectl
sudo mv /etc/motd /etc/motd.old

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

sudo timedatectl set-timezone Europe/Moscow
adduser myuser
passwd myuser
usermod -aG wheel myuser
usermod -aG sudo myuser

Шаг 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"