Работа с ssh. Пользователи.
Основы работы с Linux. -> Работа с сервером по ssh.
Работа с сервером по протоколу ssh.
Команда соединения с сервером
ssh username@host
ssh root@mydomain.com
ssh root@234.12.5.67
Команда копирования публичного ключа.
ssh-copy-id root@servaername.com
Основы работы с 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 класса доступа:
-
пользователя – владельца файла;
-
группы – владельца файла (к этому классу относятся все члены группы, в которой состоит пользователь – владелец файла);
-
и остальных пользователей (к этому классу относятся все пользователи, которые не принадлежат к предыдущим классам).
И 3 вида доступа.
r (read) – право на чтение файла,
w (write) – право на изменение (редактирование),
x (execute) – право на запуск.
Для изменения вида доступа используется команда chmod.
Команда добавление прав на выполнение для всех классов доступа.
chmod +x filename
Удаление прав на выполнение.
chmod -x filename
Теперь вы знакомы с основными понятиями, связанными с правами доступа и собственности в окружении Linux.