Linux
  • << DEBIAN >>
  •   < Debian 9 >
  •     Инсталиране на Debian 9
  •     Първоначални настройки (мрежа, VIM, Кирилизация)
  •     Инсталиране и настройка на SSH
  •     Инсталиране и настройка на DNS
  •     Инсталиране и настройка на NTP
  •     Инсталиране и настройка на Apache
  •     Инсталиране и настройка на MySQL (MariaDB)
  •     Инсталиране и настройка на PHPMyAdmin
  •     Инсталиране и настройка на собствен облак
  •     Инсталиране и настройка на SAMBA
  •     Инсталиране и настройка на FTP сървър
  •     Инсталиране и настройка на OSCAM
  •     Инсталиране и настройка на Mail server
  •       Първоначално конфигуриране на базата данни
  •       Инсталиране и конфигуриране на PostFix
  •       Инсталиране и конфигуриране на Dovecot
  •       PostFix дефинира Dovecot да удостоверява
  •       RoundCube
  •       Тестване доставката на поща
  •       Създаване на TLS криптиран ключ и сертификат
  •       WEB администриране
  •       Антиспам със SpamAssassin
  •       Антиспам с RSpmad
  •   < Debian 11 >
  •     Как зарежда Linux
  •     Разпределение на диска при BIOS и UEFI
  •     Debian 11 на BIOS върху LVM и RAID
  •     Инсталиране на Debian 11 на BIOS и ZFS
  •     Инсталиране на Debian 11 на BIOS и ZFS-1
  •     Инсталиране на Debian 11 на UEFI и ZFS
  •     ZFS Замяна на развален огледален диск
  •     Ремонт на GRUB и INITRAMFS
  •   < Debian 12 >
  •     Първоначални настройки
  •     DNS Сървър
  •     DNS Практика
  •     Инсталиране и настройка на Apache
  •     MySQL и PHPMyAdmin
  •     Елементарен MAIL сървър
  •       Първо надграждане на MAIL сървъра
  •     Инсталиране и настройка на пощенски сървър
  •     Пощенски сървър с iRedMail и PHPMyAdmin
  •     WEB сървър с Nginx
  •   Сървър на отделни хостове
  •     DNS Сървър
  •     SQL Сървър
  •     WEB Сървър
  •     Пощенски Сървър
  •   PXE Server
  •   PXE UEFI Server - TFTP
  •   Сървър за отдалечен достъп - RustDESK
  • < UBUNTU >
  •   Ubuntu SERVER 22.04
  •     Инсталиране на Ubuntu 22.04 Server
  •     Първоначални настройки на Ubuntu 22.04 Server
  •     DNS в Ubuntu 22.04 Server
  •     MySQL Apache PHPMyAdmin
  •     Пощенски сървър
  •       Пощенски сървър в опростен вариант
  •       PostFix, Dovecot по-подробно
  •   Ubuntu mini
  •   Ubuntu BUDGIE
  •     Инсталиране Ubuntu BUDGIE
  •     Първоначални настройки на Ubuntu BUDGIE
  •     Ubuntu BUDGIE като MAC OS
  •     Приложения за Ubuntu BUDGIE
  • GNOME работна среда
  •   Ubuntu GNOME
  •     Инсталиране на Ubuntu 21.04 GNOME
  •     Ubuntu 21.04 GNOME като MacOS
  • XFCE работна среда
  •   Debian - Install XFCE
  •     Debian XFCE - допълнение
  •     Debian XFCE като MacOS
  •   Ubuntu - Install XFCE
  •     Ubuntu XFCE - допълнение
  •     Ubuntu XFCE като MacOS
  • МАТЕ работна среда
  •   Debian - Install MATE
  •     Настройка на Debian MATE
  • PROGRAMS
  •   Conky
  •   Sublime Text
  • Инсталиране и настройка на SSH

    Първо обновяваме репозиторите.

    # apt-get update # apt-get upgrade


    Следва инсталиране на SSH сървиса, за да може отдалечено да се управлява хоста

    # apt-get install openssh-server


    И да проверим дали е стартирал сървиса

    # netstat -tulpn |grep :22 tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 415/sshd tcp6 0 0 :::22 :::* LISTEN 415/sshd


    Доста често аз сменям порт 22, нещо като вид защита, за целта:

    # vi /etc/ssh/sshd_config # What ports, IPs and protocols we listen for # Port 22 ### Заменя се с: Port 2018

    Така сървиса вече ще слуша на порт 2018 След всяка промяна следва и рестарт на сървиса

    # /etc/init.d/ssh restart [ ok ] Restarting ssh (via systemctl): ssh.service.


    И отново тест на сървиса

    # netstat -tulpn |grep :22 tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 415/sshd tcp6 0 0 :::22 :::* LISTEN 415/sshd


    Услугата работи. Обаче има един досаден проблем. Когато се влиза през SSH мъчно се свързваме с машината. Това е защото все още няма инсталиран и настроен DNS сървър. За целта ще направим една хитрост. Ще укажем във файла /etc/hosts името на хоста и реалното IP отговарящо за този хост.

    # vi /etc/hosts 127.0.0.1 localhost 127.0.1.1 home 109.160.78.103 home.tlan.net home

    Така home.tlan.net ще отговаря на IP 109.160.78.103 Да проверим:

    # hostname -f home.tlan.net


    Един пример: В бъдеще се наложи определен потребител да има достъп до определена директория през SSH връзка, примерно да си трансвферира файлове. Обаче да няма достъп до другите директории, както и да не ги вижда. За целта: - създаваме група sftp_group - създаваме потребител за тест с име: test - казваме на потребителя test да е член на групата sftp_group - конфигурираме ssh демона, като определяме правата на test Да започнем със създаване на групата:

    # adduser test Adding user `test' ... Adding new group `test' (1006) ... Adding new user `test' (1004) with group `test' ... Creating home directory `/home/test' ... Copying files from `/etc/skel' ... Enter new UNIX password: test12 Retype new UNIX password: test12 passwd: password updated successfully Changing the user information for daka Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] y # chown root:sftp_group /home/test/

    Създадохме потребител test с домашна директория /home/test/ и с парола test12 Да видим какво сме създали:

    # tail /etc/passwd |grep test test:x:1004:1006::/home/test:

    Потребителя е с номер 1004 и е член на група 1006. Да видим коя е тази група.

    # tail /etc/group | grep 1002 test:x:1006:

    Правилно групата се казва test Сега да направим потребителя test да е член и на групата sftp_group, за начало създаваме групата sftp_group:

    # groupadd sftp_group # echo "/sbin/nologin" >> /etc/shells


    И добавяме потребителя в групата:

    # usermod -G sftp_group -s /usr/sbin/nologin -d /var/www/exmaple.com test

    Казахме потребителя test да е член и на групата sftp_group, да не може да се логва на сървъра, само да ползва sftp връзка и домашната му папка да е: /var/www/exmaple.com. Разбира се папката трябва да съществува, в противен случай трябва да се създаде. Да видим какво стана:

    # tail /etc/group |grep test test:x:1004: sftp_group:x:1007:test

    Потребителя test е член на групите test, sftp Да конфигурирам ssh демона:

    # vi /etc/ssh/sshd_config # Търсим реда Subsystem sftp /usr/lib/openssh/sftp-server # Забраняваме го # Subsystem sftp /usr/lib/openssh/sftp-server # Под забранения ред поставяме следното: Subsystem sftp internal-sftp Match User test # Match Group sftp_group # Вместо User test може да се ползва група, като Group sftp_group ChrootDirectory /home/%h # Може да се опише пътя на директорията вместо %h X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp Match User tachko ChrootDirectory /home/%h # Може да се опише пътя на директорията вместо %h X11Forwarding no AllowTcpForwarding no ForceCommand internal-sftp


    Рестартираме ssh демона за да влязат промените в сила:

    # /etc/init.d/ssh restart


    И да пробваме:

    # sftp test@localhost test@localhost's password: test12 Connected to localhost. sftp>

    Всичко е наред, излизаме от sftp с Ctrl+c Следва инсталиране на услугата DNS, както и настройването и.