Linux запретить root ssh

Запрещаем использование root в SSH

Сегодня, сидя на работе, я забрел через SSH на один удаленный сервер, проблема в том, что при вводе рутового пароля он отказался пускать меня. В старые времена такое положение вещей меня бы озадачило, но тут я сразу смекнул в чем дело, root’y доступ на сервер просто запрещен. Мне такая штука очень понравилась, и так как часто с рабочего компьютера захожу на свой ноутбук по SSH я решил примутить такую же и у себя, для пущей безопасности. Зайдя на сервер я немного поковырялся в конфигах SSH и нашел то что искал.

Для чего необходимо закрывать доступ root’y? Ответ довольно простой, кто-нибудь может перехватить или украсть пароль, после чего получить права суперпользователя на сервере где у вас крутиться Web-шоп, правда неприятно?

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

Напомню, чтобы иметь возможность присоединяться по SSH к компьютеру, нужно установить пакет OpenSSH-server как один из вариантов:

#sudo apt-get install openssh-server

Открываем конфиг любым текстовым редактором:

Найдите в нем секцию, содержащую строку «PermitRootLogin»

# Authentication: 
LoginGraceTime 120

PermitRootLogin yes
StrictModes yes

Отредактируйте строку как показано ниже для отключения возможности подключаться через ssh рутом, изменив «yes» на «no».

После этого перезапустите sshd:

Немного о свойствах файла sshd_config и простейших параметрах которые стоит сразу изменить.

Port 22 — номер порта можно и поменять, в особенности если SSH пользуетесь вы один, а не целая группа админов. Именно 22-ой порт стоит первый в списке для сканирования и атак.

  • PermitRootLogin no — об этой строчке собственно и вся статья. Повторяться не стоит.
  • AllowUsers sasha — этого параметра нет в sshd_config, допишите его обязательно. sasha — имя вашего юзера с ограниченными правами.
  • PermitEmptyPasswords no — Запрет на установку пустого пароля.
Читайте также:  Удаленная поддержка пользователей linux

И напоследок, всем кто часто юзает SSH советую детально изучить тему безопасности, прочитать маны, дабы предостеречь себя от несчастных случаев…

Источник

Включение и Отключение входа по SSH. Ограничение доступа по SSH в Linux

Всем известно, что системы Linux имеет доступ пользователя root, и по умолчанию SSH доступ включен для внешнего мира.

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

Отключить вход по SSH

Поэтому лучше завести другую учетную запись, которой вы регулярно пользуетесь, а затем переключиться на пользователя root, используя команду «su–«, когда это необходимо. Прежде чем начать, убедитесь, что у вас есть обычная учетная запись пользователя, и с ее помощью вы можете получить root-доступ.

В Linux очень легко создать отдельную учетную запись, войти в систему как пользователь root и просто запустить команду adduser, чтобы создать отдельного пользователя. Как только пользователь будет создан, просто выполните следующие действия, чтобы отключить вход в систему root через SSH.

Вам может быть интересно:

Мы используем главный файл конфигурации sshd, чтобы отключить вход в систему root, и это может помешать хакеру получить доступ к вашей системе Linux. Здесь же мы можем и включить доступ, а также как ограничить доступ по ssh на основе списка пользователей.

Отключить вход по SSH

Чтобы отключить вход в систему с root, откройте основной файл конфигурации ssh /etc/ssh/sshd_config с выбранным вами редактором. В моем случае я использую редактор Vi или Vim

Найдите в файле следующую строку.

Удалите «#» из начала строки. Сделайте строку похожей на эту.

Отключить вход в Linux по SSH

Далее нам нужно перезапустить службу SSH.

# systemctl restart sshd
или
# /etc/init.d/sshd restart

Теперь попробуйте войти в систему пользователем root, вы получите сообщение об ошибке “Permission denied”.

$ ssh root@192.168.0.102
root@192.168.0.102’s password:
Permission denied, please try again.

Ошибка Отказа в разрешении SSH

Итак, с этого момента войдите в систему как обычный пользователь, а затем используйте команду «su», чтобы переключиться на пользователя root.

$ ssh root@192.168.0.102
tecmint@192.168.0.102’s password:
Last login: Mon Dec 27 15:04:58 2021 from 192.168.0.161

$ su —
Password:
Last login: Mon Dec 27 15:05:07 IST 2021 on pts/1

Логин пользователя SSH

Включить корневой вход по SSH

Чтобы включить ведение журнала ssh, откройте файл /etc/ssh/sshd_config.

Читайте также:  Astra linux disable parsec

Найдите следующую строку удалите «#» в начале и сохраните файл. (это называется раскоментирование)

Включить вход в Linux

Теперь перезапустите службу sshd.

# systemctl restart sshd
или
# /etc/init.d/sshd restart

Теперь попробуйте войти в систему с помощью корневого пользователя.

$ ssh root@192.168.0.102
root@192.168.0.102’s password:
Last login: Mon Dec 27 15:14:54 2021 from 192.168.0.161

Корневой логин SSH

Ограничить вход пользователей SSH

Если у вас в системе большое количество учетных записей пользователей, то имеет смысл ограничить пользователям удаленный доступ по SSH. А тем которым он действительно нужен предоставить доступ по SSH. Откройте файл /etc/ssh/sshd_config.

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

Ограничить вход пользователя SSH

Теперь перезапустите службу ssh

Возможно вам будет интересно: Как исправить ошибку “W: Some index files failed to download” Ошибка в Ubuntu

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

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

Источник

Disable or Enable SSH Root Login and Limit SSH Access in Linux

Everyone knows that Linux systems come with root user access and by default, root access is enabled for the outside world.

For security reasons, it’s not a good idea to have ssh root access enabled for unauthorized users. Because any hacker can try to brute force your password and gain access to your system.

Disable SSH Root Login

So, it’s better to have another account that you regularly use and then switch to the root user by using the ‘su –‘ command when necessary. Before we start, make sure you have a regular user account and with that, you su or sudo to gain root access.

In Linux, it’s very easy to create a separate account, log in as a root user and simply run the adduser command to create a separate user. Once the user is created, just follow the below steps to disable root login via SSH.

Читайте также:  Linux unarchive tar zst

We use sshd master configuration file to disable root login and this will may decrease and prevent the hacker from gaining root access to your Linux box. We also see how to enable root access again as well as how to limit ssh access based on users’ list.

Disable SSH Root Login

To disable root login, open the main ssh configuration file /etc/ssh/sshd_config with your choice of editor.

Search for the following line in the file.

Remove the ‘#‘ from the beginning of the line. Make the line look similar to this.

Disable Root Login in Linux

Next, we need to restart the SSH daemon service.

# systemctl restart sshd OR # /etc/init.d/sshd restart

Now try to log in with the root user, you will get a “Permission denied” error.

$ ssh [email protected] [email protected]'s password: Permission denied, please try again.

SSH Permission Denied Error

So, from now onwards login as a normal user and then use the ‘su’ command to switch to root user.

$ ssh [email protected] [email protected]'s password: Last login: Mon Dec 27 15:04:58 2021 from 192.168.0.161 $ su - Password: Last login: Mon Dec 27 15:05:07 IST 2021 on pts/1

SSH User Login

Enable SSH Root Login

To enable ssh root logging, open the file /etc/ssh/sshd_config.

Search for the following line and remove the ‘#‘ at the beginning and save the file.

Enable Root Login in Linux

Restart the sshd service.

# systemctl restart sshd OR # /etc/init.d/sshd restart

Now try to log in with the root user.

$ ssh [email protected] [email protected]'s password: Last login: Mon Dec 27 15:14:54 2021 from 192.168.0.161

SSH Root Login

Limit SSH User Logins

If you have a large number of user accounts on the systems, then it makes sense that we limit remote SSH access to those users who really need it. Open the /etc/ssh/sshd_config file.

Add an AllowUsers line at the bottom of the file with a space separated by a list of usernames. For example, user tecmint and sheena both have access to remote ssh.

AllowUsers tecmint sheena

Limit SSH User Login

Now restart ssh service.

Источник

Оцените статью
Adblock
detector