Как запретить пользователям ssh выполнять команды Linux

Для удаленного управления Unix или Linux веб-сервером по SSH-протоколу обычно используют программу PuTTY, далее приведен список основных команд.

Копируем ключи ssh на сервер

И только после того как мы убедились что все хорошо, можно переходить к следующему шагу. Открываем новое окно терминала и копируем ssh ключи, можно сразу из под root пользователя. Для этого выполняем следующую команду “ssh-copy-id [email protected] и ваш ip адрес сервера. В моем случае это будет:

Копируем ключи ssh на сервер

ssh-copy-id [email protected]

Тут вас попросят так же ввести пароль, вводим, после чего вам скажут что на сервер был скопирован ключ. А теперь самое время попробовать подсоединиться к нашему серверу по ssh при помощи ключа. Для этого как обычно вводим команду ssh [email protected] и ваш ip адрес сервера. После чего вы должны попасть на ваш сервер без запроса пароля.

Копируем ключи ssh на сервер

ssh [email protected]

Основные команды Bash

Команда CD

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

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

cd /home/YOUR_USER_NAME или проще: cd ~

Для того, чтобы перейти в каталог на уровень выше, выполните команду cd..

Знаете ли, что командная оболочка реализовала очень удобную функцию подсказок вам нужно перейти в каталог с длинным названием, freebestwebhosting, вам не нужно вводить ее полностью. Вместо этого, вы можете ввести только часть букве free и нажат на клавишу tab, и интерпретатор bash самостоятельно дополнит команду.

Читайте также:  Как установить профиль разработчика для IOS?

Команда CAT

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

cat

Команда GREP

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

cat /var/log/apache2/ | grep

В результате запроса вы увидите данные только по пользователю с ip адреса

Команда TAIL

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

tail -f /var/log/apache2/

Команда SSH

SSH — это протокол подключения к серверу. Для того, чтобы подключиться к серверу по ssh, введите команду в формате:

ssh [email protected] и нажмите enter.

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

Стандартный порт SSH — 22. Многие администраторы, для того, чтобы немного обезопасить сервер закрывают доступ к ssh через порт 22, а открывают альтернативный порт, например 2231.

Если ваш сервер находиться на не стандартном порте 22, а на порте к примеру 2231, тогда команда подключения через ssh к серверу будет выглядеть так:

ssh [email protected] -p2231

Как изменить права на файл (chmod)

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

chmod 644 .htaccess

Читайте также:  http://rus-linux.net

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

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

chmod -R 775 catalog

Как получить root права в linux и выполнять команды от root. Команда sudo.

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

sudo less /etc/php5/apache2/

Команда сменить владельца файла или каталога (chown и sudo)

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

Для смены владельца файла или каталога, нужно воспользоваться двумя командами: sudo и chown:

sudo chown john:john затем enter и введите пароль для root и снова enter.

Команда sudo позволит без входа пол пользователем root, выполнить команду от root. jonh — это ваш пользователь, второй john — это группа пользователя john (может быть любой).

Резюме

В данной статье мы рассмотрели несколько полезных команд оболочки Bash в Linux и Unix подобных системах. Эти команды вам могут пригодиться для настройки собственного VDS сервера, например от хостинга Таймвеб.

В следующих статьях мы рассмотрим не менее полезные команды оболочки bash, познакомимся с консольным редактором nano и vim, файловыми менеджером mc и многими другими.

Инструменты для анализа безопасности SSH

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

Lynis

Универсальный инструмент безопасности с открытым кодом для тестирования безопасности систем Linux. Он проверит все, что может, от загрузчика до сервера. Он бесплатный и написан с помощью shell script. Lynis работает в самой системе, поэтому может просматривать как файлы конфигурации, так и фактически загруженную конфигурацию. Он включает в себя несколько тестов для OpenSSH и его конфигураций, включая параметры безопасности. Результаты или возможные улучшения отображаются на экране, что позволяет непосредственно приступить к действиям и начать усиливать безопасность системы.

Читайте также:  Фотоаппарат с WI-FI: особенности синхронизации камеры и компьютера

Скачайте утилиту с GitHub или с сайта. Используйте инструкцию, чтобы быстрее понять, с чего начать работу.

ssh-audit

Несмотря на то, что инструмент ssh-audit немного устарел, его стоит иметь в своем арсенале. Вместо тестирования на самом хосте, он может подключаться к SSH-серверу через сеть. Он выполняет тестирование на выбранной системе и просматривает полученные ответы, на основании которых узнает о системе и сервере SSH. Он даже узнает о конкретных уязвимостях и может предупредить о них. Загрузите инструмент через GitHub и попробуйте применить.

Чтобы найти больше информации о других инструментах, читайте раздел «Сканеры конфигурации безопасности Linux».

Конфигурационные файлы клиента SSH

/etc/ssh/ssh_config

Общесистемный файл конфигурации клиента SSH.

/etc/ssh/ssh_known_hosts

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

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

Это конфигурационный файл с настройками каждого пользователя. Из-за возможного злоупотребления этот файл должен иметь строгие разрешения: чтение/запись для пользователя и недоступность для записи другими.

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