Установка ssh-server в ubuntu

Сгенерировать пару ключей

Первый шаг — это генерация пары ключей. Обычно это делается на клиентской машине.
Например, на вашем ноутбуке.

Основная команда ssh-keygen создаст 2048-битную пару RSA ключей. Для
большей надёжности можно добавить флаг -b 4096

Выполните

ssh-keygen -b 4096

Чтобы сгенерировать ключ в /home/$(whoami)/.ssh

или

sudo ssh-keygen -b 4096

Чтобы сгенерировать ключ в /home/root/.ssh

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):

Нужно придумать имя ключа.

Я назову ключ

andrei-key101

а сохранять буду в текущую директорию.

Enter file in which to save the key (/root/.ssh/id_rsa): andrei-key101
Enter passphrase (empty for no passphrase):
Enter same passphrase again:

Нужно два раза ввести пароль. Если он вам нужен. Обычно нет.

Your identification has been saved in andrei-key101
Your public key has been saved in andrei-key101.pub
The key fingerprint is:
SHA256:abcd/abcdefghijklmnopqrstuvwxyz1234567890ab root@urn-su
The key’s randomart image is:
+——-+
|=o oo++ |
|= oo o. = o |
|+ |
|Oo=o . . |
|B+.o S . |
|+o.o |
|+.0. . |
|o+= . E |
|+=oo. . . |
+———+

Ключи готовы. Я сохранил их в текущую директорию поэтому увижу их сделав ls

ls

andrei-key101 andrei-key101.pub

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

Включение SSH в Ubuntu

Сервер SSH не устанавливается по умолчанию в настольных системах Ubuntu, но его можно легко установить из стандартных репозиториев Ubuntu.

Чтобы установить и включить SSH в вашей системе Ubuntu, выполните следующие действия:

  1. Откройте свой терминал либо с помощью либо щелкнув значок терминала и установите пакет , набрав:

    При появлении запроса введите пароль и введите чтобы продолжить установку.

  2. После завершения установки служба SSH запустится автоматически. Чтобы убедиться, что установка прошла успешно и запущена служба SSH, введите следующую команду, которая распечатает состояние сервера SSH:

    Вы должны увидеть что-то вроде :

    Нажмите чтобы вернуться в командную строку.

  3. Ubuntu поставляется с инструментом настройки брандмауэра под названием UFW. Если в вашей системе включен брандмауэр, обязательно откройте порт SSH:

Доступ к SFTP через командную строку Linux

Вы можете войти в SFTP, как вы это обычно делаете с SSH.

sftp [email protected]

Примеры команд SFTP

Команды SFTP обычно имеют следующий формат.

COMMAND  

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

GET – загрузить содержимое с удаленного сервера в локальную систему. Команда ниже загружает удаленный файл poster.img в каталог ~/Pictures локальной системы.

GET poster.img ~/Pictures

PUT – загрузка содержимого из локальной системы в удаленную систему. Ниже команда загружает ~ /Pictures/poster2.jpg в нашу папку загрузок.

PUT ~/Pictures/poster2.jpg uploads/

RM – Для удаления файлов в удаленной системе. Это очень похоже на команду rm. Вы можете видеть ниже, которая удаляет изображение в uploads/poster3.jpg

RM uploads/poster3.jpg

Вышеуказанные команды очень просты и достаточны для изучения FTP /SFTP-сервера. Если вы хотите узнать больше, используйте команду help.

Мы надеемся, что эта статья помогла вам в настройке SFTP-сервера в Linux.

Если вы нашли эту статью полезной, поделитесь ею с друзьями. Если у вас есть предложения, не стесняйтесь оставить их ниже.

Настройка SSH (для серверов)

На данный момент наша служба ssh будет прослушивать порт 22 и готова аутентифицировать любого пользователя (в том числе root) после сохранения ключа.

Если вы хотите изменить любую из конфигураций, таких как порт, для прослушивания соединений, вы можете отредактировать файл «/etc/ssh/sshd_config», добавив, удалив, прокомментировав или раскомментировав строки, а затем перезапустив службу sshd.

Есть много вариантов для настройки. Мы создали список конфигураций, которые, скорее всего, понадобятся.

1. Измените порт SSH по умолчанию

Обычно служба sshd прослушивает TCP-порт 22. Если вы хотите изменить его на какой-либо другой порт, скажем, 5678, то добавьте/отредактируйте следующую строку в файле /etc/ssh/ssh_config.

Port 5678

Перезапустите службу, чтобы увидеть изменения немедленно.

2. Отключите root-вход через SSH

Позволять корневым пользователям проходить аутентификацию по ssh не очень хорошая идея из соображений безопасности. Пользователи sudo могут входить в систему удаленно, но не root, так как root находится на вершине пищевой цепи безопасности.

Root можно отключить, добавив (если его еще нет) следующую строку и перезапустив службу.

PermitRootLogin no

Если строка уже присутствует, убедитесь, что она не закомментирована.

3. Разрешить аутентификацию на основе ключей SSH

Возможно, вы захотите разрешить аутентификацию на основе ключей ssh, чтобы конечному пользователю не приходилось постоянно вводить пароль. Для входа в удаленную систему достаточно просто использовать ssh user@ip.

Для этого вы должны настроить SSH, чтобы разрешить аутентификацию с открытым ключом:

PubkeyAuthentication yes

Если строка уже присутствует, убедитесь, что она не закомментирована.

Теперь, если вы хотите разрешить определенной системе вход в систему с помощью открытого ключа, вам нужно добавить этот открытый ключ конечного пользователя в файл .ssh/authorized_keys.

Вы можете создавать ключи ssh (открытый ключ и закрытый ключ) с помощью ssh-keygen . Чтобы узнать больше о key-gen, обратитесь к этому замечательному ресурсу.

Вы можете передать открытый ключ конечного пользователя на удаленный сервер любым удобным для вас способом. Вы можете использовать команду scp, если хотите, или просто получить ее через FTP. Это действительно зависит от вас.

Выше три наиболее необходимы, но если вы хотите изменить дальше, пожалуйста, обратитесь к странице руководства по sshd_config.

Мы думаем, что это достаточно хороший материал для чтения, чтобы узнать, как включить SSH в Ubuntu/Debian и как настроить SSH на вашем сервере для удаленного входа.

Если вы нашли эту статью полезной, поделитесь ею с друзьями. Если у вас есть предложения или комментарии или вы думаете, что я что-то упустил, не стесняйтесь оставлять комментарии ниже.

Настройте сервер SSH

Для того, чтобы установить SSH сервер очень легко, но делает его гораздо более безопасным, требует немного больше работы. После завершения установки отредактируйте файл. Но прежде чем приступить к редактированию любого файла конфигурации, я предлагаю вам сделать резервную копию исходного файла:

Теперь используйте следующую команду для редактирования файла:

Первое, что вы захотите отредактировать, это порт, который прослушивает ваш SSH-сервер. По умолчанию SSH-сервер прослушивает порт 22. Все это знают. Поэтому для обеспечения безопасности соединения всегда рекомендуется запускать сервер SSH через нестандартный порт. Поэтому отредактируйте следующий раздел, чтобы выбрать случайный номер порта:

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

Второе необязательное изменение для повышения безопасности – перечисление пользователей, которым разрешен удаленный доступ к системе через SSH. Для этого добавьте следующую строку в конец файла:

Замените и на фактические имена пользователей.

Единственное, что вы можете пожелать, это установить «да». Это позволит вам запускать программное обеспечение на удаленном сервере в локальной системе. Если локальной системой является Windows, которая не поставляется с, вы можете использовать бесплатные программы, такие как Xming.

После установки SSH-сервера и внесения любых изменений в файл конфигурации () вам придется перезапустить службу. Используйте следующую команду для перезапуска SSH:

Если вы настроили псевдонимы bash, как описано в этом посте, вы можете использовать ярлыки (например ) для перезапуска вашего сервера OpenSSH.

Безопасная оболочка Ubuntu

Итак, установите SSH-сервер в вашей системе Ubuntu и начните пользоваться удаленным доступом. Теперь вы можете получить доступ к системным папкам и файлам через SFTP с помощью таких программ, как FileZilla.

Источник записи: https://www.smarthomebeginner.com

SSH порт

Каждый процесс / служба в Linux получает свой выделенный порт для связи по сети. SSH по умолчанию настроен на использование порта 22 для удаленной связи

Обратите внимание, что для SSH можно настроить другой порт. Это хорошая мера безопасности для предотвращения различных атак, например, DDoS или перебора

Даже если программа предназначена для определенного порта, порт не будет открыт, если программа не запущена. Мы можем использовать этот трюк, чтобы проверить, работает ли SSH. Если порт открыт, значит, SSH запущен.

Чтобы проверить список открытых портов, мы будем использовать инструмент netstat. Это специальный инструмент для печати различной сетевой информации, такой как сетевые соединения, таблицы маршрутизации, статистика интерфейса и т. Д. Это руководство демонстрирует всестороннее использование netstat.

Следующая команда проверяет, прослушивает ли SSH порт 22. Если SSH настроен на прослушивание другого порта, используйте этот порт.

Альтернативный метод проверки открытых портов — это проверка файла порта. Следующая команда распечатает список всех открытых файлов портов.

Другой способ — подключиться к порту SSH через Telnet.

В зависимости от того, открыт ли порт 22, выходные данные будут отличаться.

Конфигурация Windows в файле sshd_config

В среде Windows программа sshd по умолчанию считывает данные конфигурации из файла %programdata%\ssh\sshd_config, но вы можете указать другой файл конфигурации, запустив команду sshd.exe с параметром -f.
Если указанный файл отсутствует, sshd создаст новый файл с конфигурацией по умолчанию при запуске службы.

Ниже перечислены элементы конфигурации специально для среды Windows, которые можно указать в sshd_config.
Существуют и другие параметры конфигурации, которые здесь не перечислены, так как они подробно описаны в документации по OpenSSH для Win32 в Интернете.

AllowGroups, AllowUsers, DenyGroups, DenyUsers

Управление тем, какие пользователи и группы могут подключаться к серверу, осуществляется с помощью директив AllowGroups, AllowUsers, DenyGroups и DenyUsers.
Директивы разрешения и запрета обрабатываются в следующем порядке: DenyUsers, AllowUsers, DenyGroups и наконец AllowGroups.
Все имена учетных записей должны быть указаны в нижнем регистре.
Дополнительные сведения о шаблонах с подстановочными знаками вы найдете в разделе PATTERNS непосредственно в файле ssh_config.

При настройке правил для пользователей и (или) групп в домене используйте следующий формат: .
Windows поддерживает несколько форматов для указания субъектов домена, но многие из них конфликтуют со стандартными шаблонами в Linux.
По этой причине добавлен символ *, чтобы поддерживать полные доменные имена.
Кроме того, этот подход использует «?» вместо «@», чтобы избежать конфликтов с форматом username@host.

Пользователи и группы, входящие в рабочие группы, а также подключенные к Интернету учетные записи всегда разрешаются в имена локальных учетных записей (без сегмента домена, примерно как стандартные имена в UNIX).
Пользователи и группы домена строго разрешаются в формат NameSamCompatible, то есть «короткое_имя_домена\имя_пользователя».
Все правила конфигурации для пользователей и групп должны соответствовать этому формату.

Примеры для пользователей и групп домена

Примеры для локальных пользователей и групп

AuthorizedKeysFile

По умолчанию используется значение .ssh/authorized_keys .ssh/authorized_keys2. Если путь не является абсолютным, он вычисляется относительно основного каталога пользователя (или пути к образу профиля). Например: c:\users\user

Обратите внимание, что если пользователь входит в группу администраторов, используется %programdata%/ssh/administrators_authorized_keys

ChrootDirectory (добавлена поддержка в версии 7.7.0.0)

Эта директива поддерживается только для сеансов SFTP. Удаленный сеанс подключения к cmd.exe не учитывает ее. Чтобы настроить сервер chroot только для SFTP, укажите параметр ForceCommand со значением internal-sftp. Вы также можете настроить SCP с поддержкой chroot, реализовав пользовательскую оболочку, которая допускает только SCP и SFTP.

HostKey

По умолчанию используются значения %programdata%/ssh/ssh_host_ecdsa_key, %programdata%/ssh/ssh_host_ed25519_key, %programdata%/ssh/ssh_host_dsa_key и %programdata%/ssh/ssh_host_rsa_key. Если эти файлы отсутствуют, sshd автоматически создает их при запуске службы.

PermitRootLogin

Неприменимо в ОС Windows. Чтобы предотвратить вход администратора, примените для группы Administrators директиву DenyGroups.

SyslogFacility

Если вам требуется ведение журнала в файле, используйте LOCAL0. Журналы создаются в папке %programdata%\ssh\logs.
Любое другое значение, включая используемое по умолчанию AUTH, направляет журналы в ETW. Дополнительные сведения см. в статье о возможностях по ведению журнала в Windows.

Не поддерживается

Следующие параметры конфигурации недоступны в версии OpenSSH, которая поставляется в составе Windows Server 2019 и Windows 10 версии 1809:

  • AcceptEnv
  • AllowStreamLocalForwarding
  • AuthorizedKeysCommand
  • AuthorizedKeysCommandUser
  • AuthorizedPrincipalsCommand
  • AuthorizedPrincipalsCommandUser
  • сжатие;
  • ExposeAuthInfo
  • GSSAPIAuthentication
  • GSSAPICleanupCredentials
  • GSSAPIStrictAcceptorCheck
  • HostbasedAcceptedKeyTypes
  • HostbasedAuthentication
  • HostbasedUsesNameFromPacketOnly
  • IgnoreRhosts
  • IgnoreUserKnownHosts
  • KbdInteractiveAuthentication
  • KerberosAuthentication
  • KerberosGetAFSToken
  • KerberosOrLocalPasswd
  • KerberosTicketCleanup
  • PermitTunnel
  • PermitUserEnvironment
  • PermitUserRC
  • PidFile
  • PrintLastLog
  • RDomain
  • StreamLocalBindMask
  • StreamLocalBindUnlink
  • StrictModes
  • X11DisplayOffset
  • X11Forwarding
  • X11UseLocalhost
  • XAuthLocation

Определить IP-адрес

Чтобы подключиться к удаленному устройству через SSH, вам необходимо знать IP-адрес машины. У вас есть два простых способа найти это:

  • Запустите команду терминала
  • Проверить роутер

Чтобы отобразить IP-адрес удаленной системы, войдите в систему и запустите

ip address

Это вернет IP-адрес устройства, поэтому запишите его. В более старых версиях Linux могут быть лучшие результаты.

Вы также можете проверить свой маршрутизатор, чтобы увидеть подключенные устройства. ПК или сервер Linux будут перечислены, как правило, по имени операционной системы или устройства. Это должно упростить идентификацию.

Чтобы отобразить общедоступный IP-адрес, войдите на сервер и откройте whatsmyip.org.

Используемый IP-адрес должен быть подходящим для подключения. Итак, если устройство находится в той же сети, что и клиент, используйте локальный IP-адрес. Для подключений через Интернет используйте общедоступный IP-адрес. Если компьютер находится в другой сети, убедитесь, что порт 22 перенаправлен на компьютер.

Запустить SSH в фоновом режиме

Существует несколько способов запустить ssh соединение в фоновом режиме — то есть освободим текущий терминал.

-L, screen, tmux, nohup

Мне запустить ssh фоном из скрипта помог nohup, поэтому начнём с него

nohup ssh user@host «cd scripts;python3 my_script.py $ARG1 $ARG2; exit» &

Для чего это было нужно: Python скрипт сначала
открывал одно ssh соединение из
subprocess
там выполнялась команда для запуска

мониторинга потребления памяти

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

Чтобы уйдя из первого подключения не оборвать мониторинг потребления памяти
перед ssh нужно было добавить nohup, а в самом конце поставить &

Подключение к SSH через Интернет

Чтобы подключиться к компьютеру с Ubuntu через Интернет, вам необходимо знать свой общедоступный IP-адрес и настроить маршрутизатор для приема данных через порт 22 и их отправки на компьютер Ubuntu, на котором работает SSH.

переадресации портов, у

После того, как вы нашли IP-адрес и настроили маршрутизатор, вы можете войти в систему, набрав:

Если вы открываете свою машину для доступа в Интернет, рекомендуется принять некоторые меры безопасности. Самый простой — настроить маршрутизатор на прием трафика SSH на нестандартный порт и пересылку его на порт 22 на машине, на которой запущена служба SSH.

Вы также можете настроить аутентификацию на основе ключа SSH и подключиться к компьютеру с Ubuntu без ввода пароля.

Антивирус

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

Но эти вирусы могут использовать файловый сервер Samba для распространения от одной Windows системы на другие. Что бы поддерживать наше файловое хранилище в чистоте, мы установим антивирус и настроим автоматическое сканирование.

Установим антивирус ClamAV

$ sudo apt install clamav

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

Удалять подозрительные файлы мы сразу не будем, мы их будем перемещать в карантин, где они никому не навредят

Если среди этих файлов было что-то важное, администратор сможет найти их в карантине и что-то сделать. Создадим папку карантина и ограничим доступ к ней

$ sudo mkdir /quarantine
$ sudo chmod 600 /quarantine

Попробуем просканировать домашние папки пользователей

$ sudo clamscan -i -r --move=/quarantine /home

После сканирования получим протокол

----------- SCAN SUMMARY -----------
Known viruses: 6278963
Engine version: 0.99.2
Scanned directories: 13
Scanned files: 13
Infected files: 0
Data scanned: 4.79 MB
Data read: 1.59 MB (ratio 3.00:1)
Time: 22.176 sec (0 m 22 s)

Все хорошо, вирусов не обнаружено. Если бы нашлось что-то подозрительное, оно было бы перемещено в папку карантина.

Нам остается настроить автоматическое расписание обновления сигнатур и сканирования домашних папок. Редактируем файл расписания демона cron

$ sudo crontab -e

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

Добавьте две строчки

0 1 * * * freshclam
0 2 * * * clamscan -i -r --move=/quarantine /home

Каждый день в 1:00 ночи будет автоматически запускаться обновление сигнатур, а в 2:00 ночи будет запущено сканирование всех домашних папок пользователей, инфицированные файлы будут перемещены в папку карантина.

Дополнительные настройки безопасности

Есть и другие рекомендуемые конфигурации, чтобы избежать нежелательных подключений к нашему SSH-серверу. Эти соединения:

  • Войти : Мы установим время, необходимое для ввода пароля, чтобы злоумышленнику не приходилось «много думать».
  • MaxAuthTries : Количество разрешенных попыток при вводе пароля перед отключением.
  • MaxStartups : Количество одновременных входов в систему с IP-адреса, чтобы избежать использования грубой силы в нескольких сеансах одновременно.
  • AllowUsers : Это для создания белого списка пользователей. Этот параметр позволяет нам настроить пользователей, которые смогут подключиться. Это очень ограничительная мера, но в то же время очень безопасная, поскольку она блокирует все подключения пользователей, которых нет в списке. Пользователи, которые у нас здесь, смогут подключиться, а остальные — нет.
  • DenyUsers : Аналогично предыдущему, но теперь мы создаем черный список. Пользователи, которые у нас здесь, не смогут подключиться, а остальные подключатся.
  • AllowGroups / DenyUsers : Точно так же, как указано выше, но вместо создания черного / белого списка пользователей это группы пользователей.

Например, файл конфигурации для sshd_config будет следующим:

Дополнительной мерой безопасности является настройка алгоритмов обмена ключами, симметричного шифрования, а также конфигурации HMAC для проверки целостности. В настоящее время рекомендуется применять следующую конфигурацию для обеспечения очень высокой безопасности:

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

Мы должны принять во внимание эту деталь и проверить, какие алгоритмы совместимы, а какие нет

Если мы создали новые ключи RSA или DSA для ключей с большей битовой длиной, мы должны поместить их в файл конфигурации (или заменить предыдущие, и, таким образом, нам не придется трогать файл конфигурации), таким образом мы получим дополнительная безопасность, если, например, мы используем ключи RSA длиной 4096 бит или выше.

Чтобы сгенерировать новые 4096-битные ключи RSA, нам просто нужно выполнить следующую команду:

Если мы хотим сгенерировать новые ключи ECDSA (с максимальной длиной 512 бит) или ED25519, нам нужно будет ввести следующие команды:

Запустить SSH в фоновом режиме

Существует несколько способов запустить ssh соединение в фоновом режиме — то есть освободим текущий терминал.

-L, screen, tmux, nohup

Мне запустить ssh фоном из скрипта помог nohup, поэтому начнём с него

nohup ssh user@host «cd scripts;python3 my_script.py $ARG1 $ARG2; exit» &

Для чего это было нужно: Python скрипт сначала
открывал одно ssh соединение из
subprocess
там выполнялась команда для запуска

мониторинга потребления памяти

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

Чтобы уйдя из первого подключения не оборвать мониторинг потребления памяти
перед ssh нужно было добавить nohup, а в самом конце поставить &

SSH Keys

SSH allow authentication between two hosts without the need of a password. SSH key authentication uses a private key and a public key.

To generate the keys, from a terminal prompt enter:

This will generate the keys using the RSA Algorithm. At the time of this writing, the generated keys will have 3072 bits. You can modify the number of bits by using the option. For example, to generate keys with 4096 bits, you can do:

During the process you will be prompted for a password. Simply hit Enter when prompted to create the key.

By default the public key is saved in the file , while is the private key. Now copy the file to the remote host and append it to by entering:

Finally, double check the permissions on the file, only the authenticated user should have read and write permissions. If the permissions are not correct change them by:

You should now be able to SSH to the host without being prompted for a password.

Подключение по SSH

ssh

ssh [email protected]

Если вы подключаетесь к хосту впервые, появится предупреждение

The authenticity of host ‘192.168.56.101 (192.168.56.101)’ can’t be established.
ECDSA key fingerprint is SHA256:db8az/qbrWOJWvNRv2d9UHaDBnnUHanJ9Svca9vFx7c.
Are you sure you want to continue connecting (yes/no/)?

Если выбрать yes то в терминале вы увидите сообщение

Welcome to Ubuntu 20.04.3 LTS (GNU/Linux 5.11.0-27-generic x86_64)

* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage

0 updates can be applied immediately.

Your Hardware Enablement Stack (HWE) is supported until April 2025.

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

И одновременно с этим, незаметно для вас в файл

~/.ssh/known_hosts

добавится похожая строка:

|1|abcdef+abcdefghijklmnopqrst=|abcdefghijklmnopqrstuvwxyz1= ssh-rsa abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrst/abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz12345/abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzB1234567

Обычно файл

known_hosts

имеет следующий формат (записи идут через пробел)

Таким образом

abcdef+abcdefghijklmnopqrst=|abcdefghijklmnopqrstuvwxyz1=

Это хэш от имени сервера.

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

SSH работает в Linux

Есть несколько методов, чтобы определить, работает ли SSH в системе в данный момент.

Обратите внимание, что SSH разделен на две части с точки зрения функциональности: SSH-клиент и SSH-сервер. Клиент подключается к серверу по протоколу SSH

Ключ SSH — это стандартная мера безопасности для защиты соединения.

Если SSH установлен и включен, то, вероятно, сервер SSH запущен и работает в системе, ожидая запроса на соединение SSH. Мы можем определить, работает ли SSH-сервер, но он не дает информации о том, активно ли SSH-соединение. Мы можем проверить это, если порт SSH в настоящее время открыт.

Включить SSH в Ubuntu и Debian с помощью OpenSSH

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

Чтобы SSH работал, на удаленной системе должен быть запущен ssh-сервер, на который пользователь должен войти. Кроме того, в локальной системе должен быть ssh-клиент, с которого пользователь будет входить в удаленную систему.

OpenSSH обеспечивает обе эти функции. Там является OpenSSH-клиент для конечных пользователей и OpenSSH-сервер для удаленных серверов.

Перед установкой OpenSSH вы должны проверить, установлен ли и работает ли SSH в вашей системе.

Проверьте, включен ли SSH и работает ли он

Скорее всего, SSH уже включен в вашей системе. Для проверки выполните следующую команду на удаленном сервере или в системе конечного пользователя:

ps -aux | grep ssh

Если SSH включен, вы должны увидеть информацию об агенте SSH на рабочем столе:

На сервере вы должны увидеть информацию о работающем демоне SSH:

Если вы не видите вывод, аналогичный приведенному выше, в вашей системе не работает SSH. Пришло время установить OpenSSH.

Установка OpenSSH в Ubuntu и Debian

Небольшая заметка о OpenSSH-клиент и OpenSSH-сервер перед установкой OpenSSH.

openssh-client: это пакет, который вам нужен, если вы хотите подключиться к удаленной системе Linux с помощью SSH. Это то, что вам нужно как конечный пользователь/пользователь рабочего стола.

openssh-server: это пакет, который вам нужен, если вы хотите разрешить удаленный вход в систему через SSH. Это то, что вам нужно на вашем сервере Linux.

Обратите внимание, что установка openssh-сервера также позволяет удаленно входить в другие системы через SSH. Другими словами, openssh-сервер состоит из openssh-клиента. Но если вы просто конечный пользователь с рабочим столом Linux, (в основном) нет необходимости устанавливать openssh-сервер и разрешать удаленный вход в вашу систему. Теперь, когда вы знаете разницу между ними, пришло время посмотреть, как их установить

Теперь, когда вы знаете разницу между ними, пришло время посмотреть, как их установить.

Установка OpenSSH для настольных компьютеров или конечных пользователей

Если вы просто хотите подключиться к другим удаленным системам через SSH, вам следует установить пакет openssh-client с помощью следующей команды:

Установка OpenSSH для серверов

Если вы настраиваете сервер Ubuntu/Debian, следует установить пакет openssh-server, чтобы другие удаленные пользователи могли подключаться к вашей системе.

sudo apt update
sudo apt install openssh-server

После того, как вы установили OpenSSH-сервер, пришло время узнать, как настроить и настроить его в соответствии с вашими потребностями.

Установка операционной системы

Сначала определимся с архитектурой сервера. Если Вам известна марка процессора, установленного в сервер, ознакомившись с его спецификацией Вы узнаете, совместим ли он с архитектурой x86-64 (64 бит) или только i386 (32 бит). Косвенный признак — размер оперативной памяти, 32-битная архитектура не может работать с оперативной памятью объемом более 3 Гбайт, иногда в эту архитектуру устанавливали 4 Гбайт памяти, но в системе было видно только 3 Гбайт.

Идем на страницу загрузки Ubuntu Server и скачиваем дистрибутив, соответствующей архитектуры. Дистрибутивы Ubuntu распространяются в виде образов загрузочных DVD дисков.

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

Выбирайте русский язык и в меню .

Далее Вам предложат указать страну, выбрать раскладку клавиатуры, дать имя серверу, указать имя и пароль суперпользователя (аналог администратора в Ubuntu) и подтвердить временную зону.

Некоторое затруднение может вызвать разметка диска. Если сомневаетесь, выбирайте автоматическую разметку и использовать весь диск. Но лучше выделить домашние папки пользователей в отдельные логические диски.

Так будет удобнее обновлять операционную систему, когда выйдет новая LTS версия 18.04.

Создавать или нет раздел подкачки зависит от объема оперативной памяти. Если у Вас ее немного, создайте раздел подкачки с таким же объемом. Впрочем, это не обязательно, можно после установки создать файл подкачки.

Далее в процессе установки Вам нужно будет выбрать каким образом Вы хотите управлять обновлением системы. Рекомендую устанавливать обновления безопасности автоматически.

И ближе к концу установки Вам предложат выбрать готовые наборы серверного программного обеспечения. Нам понадобятся:

  • Samba file server
  • Standart system utilites
  • OpenSSH server

Инсталлятор завершит свою работу, перезапустит сервер, Вы увидите протокол загрузки операционной системы, который завершится приглашением ввести логин и пароль пользователя в консоль.

Добро пожаловать в Linux!

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Мой редактор ОС
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: