Etc ssh sshd config centos

Настройка SSH в CentOS 7

Настраиваем SSH в CentOS 7

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

Установка компонентов и запуск сервера

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

    Откройте «Терминал» и пропишите там команду sudo yum -y install openssh-server openssh-clients .

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

Редактирование конфигурационного файла

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

    Советуем использовать редактор nano, установить который в систему поможет команда sudo yum install nano . По завершении инсталляции запустите конфигурационный файл через sudo nano /etc/ssh/sshd_config .

Редактированием конфигурационного файла изменяется много параметров, но основной процесс — добавление и настройка ключей — производится с помощью специальных команд, о чем мы и хотим поговорить далее.

Создание пары RSA-ключей

Криптографический алгоритм RSA (аббревиатура от фамилий Rivest, Shamir и Adleman) используется сервисом SSH для создания пары ключей. Такое действие позволить максимально обезопасить клиентскую и серверную часть при проведении соединений. Задействовать придется обе цепи, чтобы создать пару ключей.

  1. Для начала зайдите на клиентский компьютер и введите в консоли ssh-keygen .
  2. После активации появится новая строка, где будет предложено указать путь для сохранения ключа. Если хотите оставить расположение по умолчанию, не вводите ничего, а просто нажмите на клавишу Enter.
  3. Далее создается парольная фраза. Она обеспечит защищенность от несанкционированного входа в систему. После создания пароля его потребуется повторить.
  4. На этом процедура генерации завершена. На экране вы увидите сам ключ и случайное изображение, присвоенное ему.
Читайте также:  Как заправить чернилами картридж hp струйный принтер

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

Копирование открытого ключа на сервер

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

Утилита ssh-copy-id

Копирование открытого ключа через утилиту ssh-copy-id — самый простой метод. Однако подойдет он только в том случае, когда на компьютере присутствует этот самый инструмент. Вам же нужно прописать всего одну команду ssh-copy-id username@remote_host , где username@remote_host — имя пользователя и хост удаленного сервера.

Если соединение проводится первый раз, на экране вы увидите сообщение подобного характера:

The authenticity of host ‘111.111.11.111 (111.111.11.111)’ can’t be established.
ECDSA key fingerprint is fd:fd:d4:f9:77:fe:73:84:e1:55:00:ad:d6:6d:22:fe.
Are you sure you want to continue connecting (yes/no)?

Оно обозначает, что сервер не находится в списке надежных источников и будет задан вопрос, стоит ли проводить дальнейшее подключение. Выберите вариант yes .

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

Копирование открытого ключа по SSH

При отсутствии утилиты ssh-copy-id рекомендуем задействовать стандартные возможности инструмента SSH, если, конечно, у вас имеется доступ к серверной учетной записи. Выгрузка ключей производится посредством обычного подключения, а именно:

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

/.ssh/id_rsa.pub | ssh username@remote_host «mkdir -p

/.ssh/authorized_keys» , где username@remote_host — имя учетной записи и хоста удаленного компьютера. Учтите, что опция >> добавит ключ в конец файла, а не перезапишет его полностью. Поэтому введенные ранее ключи тоже будут сохранены.

  • Для соединения введите парольную фразу.
  • Не забудьте перезагрузить сервер через sudo service sshd restart , чтобы обновились списки ключей.
  • Ручное копирование открытого ключа

    Иногда случаются ситуации, когда невозможно использовать утилиту ssh-copy-id, а также отсутствует доступ по паролю. Тогда копирование осуществляется вручную.

      Сперва узнайте этот ключ через уже знакомую команду cat, введя в консоли cat

    /.ssh/id_rsa.pub .

  • Скопируйте его содержимое в отдельный файл.
  • Подключитесь любым удобным методом к удаленному компьютеру и создайте каталог mkdir -p

    /.ssh . Команда ничего не сделает, если каталог уже существует.
    Осталось только внести данные в файл «authorized_keys». Команда echo public_key_string >>

    Читайте также:  Картридж каретки xh axle 05

    /.ssh/authorized_keys добавит ключ в файл или создаст сначала файл, если он отсутствует. Вместо «public_key_string» нужно вставить полученную ранее строку с ключом.

    На этом процедура копирования ключа успешно завершена. Благодаря этому теперь доступна аутентификация к серверу путем ввода ssh username@remote_host . Однако подключиться можно и через пароль, что понижает безопасность такой сети.

    Отключение аутентификации по паролю

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

    1. На удаленном сервере запустите конфигурационный файл SSH через sudo nano /etc/ssh/sshd_config .
    2. Отыщите параметр «PasswordAuthentication» и измените значение на no .
    3. Сохраните изменения и завершите работу в текстовом редакторе.
    4. Новый параметр вступит в силу только после перезагрузки сервиса sudo systemctl restart sshd.service .

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

    Источник

    How to Install / Enable OpenSSH on CentOS 7

    Home » SysAdmin » How to Install / Enable OpenSSH on CentOS 7

    Secure Shell (SSH) is a cryptographic protocol that allows a client to interact with a remote server in a secure environment.

    High-level encryption protects the exchange of sensitive information and allows flie trans or issue commands on remote machines securely.

    Learn how to enable SSH on CentOS 7 by following the instructions in this short tutorial.

    • CentOS 7 system to act as an SSH server
    • A user with necessary permissions
    • Access to a command line (Ctrl-Alt-T)
    • yum utility (included by default)

    Installing and Enabling OpenSSH on CentOS 7

    SSH software packages are included on CentOS by default. However, if these packages are not present on your system, easily install them by completing Step 1, outlined below.

    Step 1: Install OpenSSH Server Software Package

    Enter the following command from your terminal to start the installation process:

    This command installs both the OpenSSH client applications, as well as the OpenSSH server daemon, sshd.

    In this example, the system informs us that the latest version is already present.

    Step 2: Starting SSH Service

    To start the SSH daemon on the OpenSSH server:

    When active, sshd continuously listens for client connections from any of the client tools. When a connection request occurs, sshd sets up the correct connection.

    Читайте также:  Change linux user login

    Step 3: Check sshd status

    Check the status of the SSH daemon:

    As we have previously started the service, the output confirms that it is active.

    To stop the SSH daemon enter:

    We can check if the service has stopped by verifying the status. The output shows that the service is inactive and the time and date when the status last changed.

    Step 4: Enable OpenSSH Service

    Enable SSH to start automatically after each system reboot by using the systemctl command:

    To disable SSH after reboot enter:

    OpenSSH Server Configuration

    Properly configuring the sshd configuration file hardens server security. The most common settings to enhance security are changing the port number, disabling root logins, and limiting access to only certain users.

    To edit these settings access the /etc/ssh/sshd_config file:

    Once you access the file by using a text editor (in this example we used vim), you can disable root logins and edit the default port number:

    PermitRootLogin no

    • Change the SSH port to run on a non-standard port. For example:

    Port 2002

    Remember to uncomment the lines that you edit by removing the hashtag.

    Save and close the file. Restart sshd:

    Note: We recommend you generate SSH keys for authentication, as a safer alternative to passwords.

    Firewall Settings

    After successfully enabling SSH and configuring the sshd file, adjust the firewall settings to make sure there are no compatibility issues.

    It is also possible to restrict IP access to make the connection even more secure.

    To restrict IP access, edit the iptables file by typing:

    To allow access using the port defined in the sshd config file, add the following line to the iptables file:

    To restrict access to a specific IP, for example 133.123.40.166, edit the line as follows:

    If your site uses IPv6, and you are editing ip6tables, use the line:

    Save and exit the file by pressing Escape (Esc) on your keyboard and typing:

    :X

    Press Enter to confirm.

    Restart iptables to apply the changes:

    In this tutorial, we learned how to enable SSH on a CentOS 7 server. Additionally, we configured your firewall and SSH rules to limit access.

    Your CentOS 7 server is now able to accept SSH connections.

    Check out our guide on “ssh_exchange_identification: Read: Connection Reset By Peer” error if you notice it while connecting to your remote server.

    Источник

  • Поделиться с друзьями
    КомпСовет
    Adblock
    detector