Работа с ssh. Пользователи.

Основы работы с Linux. -> Консоль. Привилегии пользователей.

Привилегии пользователей.

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

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

В Linux существует два типа пользователей: системные и обычные.

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

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

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

ps aux

Просмотр процессов от конкретного пользователя.

ps -f -u zdimon

Чтобы просмотреть всех пользователей системы, проверьте файл /etc/passwd.

cat /etc/passwd

Добавление пользователей

adduser username

sudo adduser <username> sudo

Кроме основных двух типов пользователей в Linux существует также суперпользователь, или root.

Этот пользователь может переопределять права других пользователей на файлы и ограничивать доступ.

По сути, суперпользователь имеет права доступа ко всем файлам, существующим на сервере.

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

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

sudo -s

Переключится на произвольного пользователя.

su - username

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

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

В Linux все пользователи пренадлежат одной или нескольким группам.

Все пользователи, состоящие в группе sudo, по умолчанию имеют права sudo.

Просмотреть все группы можно в файле /etc/group.

cat /etc/group

Добавление прав sudo к существующему пользователю.

sudo usermod -a -G sudo <username>

В Linux каждый файл принадлежит одному пользователю и одной группе и имеет индивидуальные настройки доступа.

Для просмотра прав доступа используется команда ls.

ls -l filename

Пример вывода.

drwxrwxr-x  3 zdimon zdimon    4096 апр 20  2018 soft
drwx------  5 zdimon zdimon    4096 июл 17 10:40 storage1
drwxr-xr-x 25 root   root      4096 апр 14  2017 storage2

Первый столбец может быть представлен такими компонентами.

d rwx(1) rwx(2) rwx(3)

d – поле типа файла.

rwx(1) – права пользователя-владельца файла.

rwx(2) – права группы-владельца.

rwx(3) – права остальных пользователей.

Таким образом мы имеем 3 класса доступа:

  1. пользователя – владельца файла;

  2. группы – владельца файла (к этому классу относятся все члены группы, в которой состоит пользователь – владелец файла);

  3. и остальных пользователей (к этому классу относятся все пользователи, которые не принадлежат к предыдущим классам).

И 3 вида доступа.

r (read) – право на чтение файла,

w (write) – право на изменение (редактирование),

x (execute) – право на запуск.

Для изменения вида доступа используется команда chmod.

Команда добавление прав на выполнение для всех классов доступа.

chmod +x filename

Удаление прав на выполнение.

chmod -x filename

Теперь вы знакомы с основными понятиями, связанными с правами доступа и собственности в окружении Linux.

Основы работы с Linux. -> Работа с сервером по ssh.

Работа с сервером по протоколу ssh.

Команда соединения с сервером

ssh username@host
ssh root@mydomain.com
ssh root@234.12.5.67

Команда копирования публичного ключа.

ssh-copy-id root@servaername.com