Настройка системы

Наделяем группу Администраторы домена полномочиями sudo

После успешного ввода в домен, пробуем залогиниться под учётной записью пользователя домена

В окне приветствия выбираем «Нет в списке?» и вводим поочерёдно Логин пользователя домена и Пароль учётной записи, под которой вы собираетесь залогиниться

После успешного входа, открываем терминал и логинимся под root

su -

Заходим в редактор настроек root.

nano /etc/sudoers

Ищем строчку:

## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL

и прописываем под ней дополнительную строку:

%Администраторы\ домена ALL=(ALL) ALL

Знак \ здесь является экранированием пробела, т.к. интерпретатор bash не умеет воспринимать пробелы, для него это окончание строки

Теперь все члены группы Администраторы домена в Active Directory вашего домена могут выполнять команды с привилегией sudo.

Если производите настройку пользователю домена и хотите работать под его учётной записью с правами sudo, то под строкой %Администраторы\ домена укажите:

%Пользователи\ домена ALL=(ALL) ALL

Сохраняем и закрываем файл.

Перезагружаемся, чтобы изменения вступили в силу

reboot

Скрываем смонтированные диски с Рабочего стола

Устанавливаем программу редактирования рабочего окружения

sudo dnf install dconf-editor dconf-devel

Идем по пути: Системные → Редактор dconf → org→ mate → caja → desktop → заходим в volumes-visible и снимаем галочку Use default value. Custom value выставляем значение False → справа сверху жмём на часы → Apply

Параметры → Управление файловым просмотром → Просматривать новые папки, используя: В виде списка. → вкладка Предварительный просмотр → Показывать текст в значках: Всегда → Показывать миниатюры: Всегда → Прослушивать звуковые файлы: Всегда → Показывать число объектов в папках: Всегда

Только авторизованные участники могут оставлять комментарии.

Перенести папку home на другой диск

Пусть /dev/sda1 это ваш старый диск и раздел, а /dev/sdb1 - новый, отформатированный раздел, куда вы хотите перенести /home

mkdir /mnt/newhome && mount /dev/sdb1 /mnt/newhome
rsync -a /home /mnt/newhome

Проверяете все ли нормально перенеслось.

Редактируем /etc/fstab

nano /etc/fstab

Там ищем старый хоум, или если его нет вписываете что-то вроде

/dev/sdb1 /home           ext4   defaults        0       1

Нужно чтоб адреса и тип файловой системы были правильными.

После чего

mount -a

Настройка xrdp-сервера

Установка и настройка сервера

Перед установкой и настройкой сервера необходимо предварительно перейти в сеанс пользователя root:

su -

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

1. Установите сервер xrdp командой:

dnf install xrdp xorgxrdp pulseaudio-module-xrdp

2. Создайте пользователя test и установите ему пароль:

useradd -m test
passwd test

3. Создайте группу tsusers и добавьте пользователя в эту группу:

groupadd tsusers
usermod -aG tsusers test

4. Настройте предпочитаемую графическую оболочку по умолчанию:

для mate выполните:

sed -i '/PREFERRED=/d' /etc/sysconfig/desktop 2>/dev/null; echo 'PREFERRED="$(type -p mate-session)"' >> /etc/sysconfig/desktop

для cinnamon выполните:

sed -i '/PREFERRED=/d' /etc/sysconfig/desktop 2>/dev/null; echo 'PREFERRED="$(type -p cinnamon-session)"' >> /etc/sysconfig/desktop

5. Измените файл /etc/xrdp/sesman.ini следующим образом:

sed -i 's/param=Xorg/param=\/usr\/libexec\/Xorg/' /etc/xrdp/sesman.ini

6. Раскомментируйте тип сессии Xorg в /etc/xrdp/xrdp.ini:

[Xorg]
name=Xorg
lib=libxup.so
username=ask
password=ask
ip=127.0.0.1
port=-1
code=20

7. Тип сессии Xvnc закомментируйте:

#[Xvnc]
#name=Xvnc
#lib=libvnc.so
#username=ask
#password=ask
#ip=127.0.0.1
#port=-1

8. Запустите сервер xrdp и добавьте его в автозапуск:

systemctl enable xrdp --now

9. Xrdp позволяет создавать новые сессии пользователей через запуск X-сервера, но не может подключаться к уже существующей сессии. Если сессия xrdp активна, то пользователь не сможет войти в нее снова.

При получении ошибки «Could not acquire name on session bus» необходимо на сервере создать файл /etc/X11/Xsession.d/99dbus-session со следующим содержимым:

unset DBUS_SESSION_BUS_ADDRESS

image.png

Для применения внесенных изменений необходимо перезагрузить систему.

Решение проблемы с переключением языка клавиатуры при подключении из Windows

Откройте файл:

nano /etc/xrdp/xrdp_keyboard.ini

Добавьте в конец файла следующее содержимое:

[layouts_map_ru]
rdp_layout_us=ru,us
rdp_layout_ru=ru,us
 
[rdp_keyboard_ru]
keyboard_type=4
keyboard_type=7
keyboard_subtype=1
options=grp:alt_shift_toggle
rdp_layouts=default_rdp_layouts
layouts_map=layouts_map_ru

В данной конфигурации раскладка переключается сочетанием клавиш Alt+Shift.

Чтобы отключить определённый тип сессии (Xvnc или Xorg), закомментируйте в файле /etc/xrdp/xrdp.ini соответствующий раздел: [Xvnc] или [Xorg].

Для применения настроек перезагрузите сервер xrdp:

systemctl restart xrdp

Проброс локального диска и принтера при подключении из Windows

Для  успешного подключения локального диска к удаленному рабочему столу необходимо убрать в настройках RDP-клиента галочку «Принтеры».

Подключение на клиенте

Для подключения из Windows используйте «Подключение к удаленному рабочему столу».

Для подключения из РЕД ОС используйте приложение «Remmina» («Главное меню» —  «Интернет» — «Remmina»).

Выберите протокол RDP, впишите узел и нажмите клавишу Enter, чтобы подключиться.

Для подключения в открывшемся окне впишите имя пользователя и пароль.

Для применения настроек перезагрузите сервер xrdp:

systemctl restart xrdp

Устранение ошибки при настройке удаленного доступа с Windows 7/XP на РЕД ОС

При возникновении ошибки такого вида:

image.png

Откройте файл:

nano /etc/xrdp/xrdp.ini

Измените значение параметра security_layer:

security_layer=rdp

Для применения настроек перезагрузите сервер xrdp:

systemctl restart xrdp

Аутентификация под доменным пользователем

Для разрешения аутентификации доменных пользователей требуется изменить файл:

nano /etc/xrdp/sesman.ini

Закомментировав следующие строки:

#TerminalServerUsers=tsusers
#TerminalServerAdmins=tsadmins

Перезапустите сервер:

systemctl restart xrdp

Чтобы разрешить определенным доменным пользователям доступ к RDP-серверу, достаточно в группу tsusers добавить доменных пользователей.

Добавление в группу tsusers пользователя bob производится командой:

usermod -aG tsusers bob

где bob - это доменный пользователь,

В файл /etc/xrdp/sesman.ini в секцию [Security]  необходимо добавить строки:

TerminalServerUsers=tsusers
AlwaysGroupCheck=true

Еще один вариант - в качестве локальной группы указать доменную:

TerminalServerUsers=rdp

здесь rdp - группа безопасности на вашем контроллере домена, в которую могут входить необходимые вам пользователи xrdp-сервера.

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

systemctl restart xrdp
systemctl restart sssd

Дополнительная настройка SELinux

После тестового подключения к xrdp-серверу нужно выполнить настройку SELinux, выполните следующие команды на сервере:

ausearch -c 'krb5_child' --raw | audit2allow -M my-krb5child
semodule -X 300 -i my-krb5child.pp

Завершение всех процессов при выходе из сеанса

Для того чтобы при выходе из системы прекращались все процессы, явно или неявно запущенные от имени авторизованного пользователя, в файле /etc/systemd/logind.conf необходимо раскомментировать параметр KillUserProcesses и установить значение yes.

image.png

После изменения значения данного параметра необходимо либо перезагрузить компьютер, либо выполнить команду перезапуска сервиса logind для применения настроек:

systemctl restart systemd-logind

Оптимизация производительности

Оптимизацию использования ресурсов RDP-сервера (процессора, оперативной памяти, каналов связи) можно произвести представленными ниже изменениями конфигурации.

при использовании MATE:

Для отключения композитного менеджера путем задания значения по умолчанию параметра dconf следует создать файл

 /etc/dconf/db/local.d/10_mate_nocomp со следующим содержимым (с правами пользователя root):

nano /etc/dconf/db/local.d/10_mate_nocomp
[org/mate/marco/general]
compositing-manager=false 

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

echo "/org/mate/marco/general/compositing-manager" > /etc/dconf/db/local.d/locks/10_mate_nocomp

при использовании CINNAMON:

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

sed -i '/PREFERRED=/d' /etc/sysconfig/desktop 2>/dev/null; echo 'PREFERRED="$(type -p cinnamon-session-cinnamon2d)"' >> /etc/sysconfig/desktop


Cockpit - веб-интерфейс для удаленного администрирования

Cockpit — простой в использовании, но мощный удаленный менеджер для серверов GNU/Linux, это интерактивный пользовательский интерфейс администрирования сервера, который предлагает LIVE-сеанс Linux через веб-браузер.

Чтобы установить и включить Cockpit  используйте следующие команды в терминале с правами root:

dnf install cockpit
systemctl enable cockpit.socket
systemctl start cockpit.socket

Дополнительные модули

Cockpit может быть дополнен существующими модулями, которые расширяют функционал утилиты.

dnf install cockpit-machines cockpit-storaged

Примечание!
В РЕД ОС пакет cockpit-docker устанавливается вручную. 

Ссылка на установку пакета - https://getcockpit.com/documentation/reference/docker.

Для появления установленных модулей перезапустите Cockpit командой:

systemctl restart cockpit.socket

Сockpit-dashboard

Модуль cockpit-dashboard позволяет управлять множеством компьютеров или серверов из одной сессии. Для этого выберите в левой панели вариант Dashboard.

В блоке «Servers» выберите пункт «Add Server», в появившемся окне нужно указать IP-адрес или имя хоста подключаемого ПК и цвет, которым он будет обозначаться:

image.png

В списке появится подключённый ПК, которым можно управлять с помощью Cockpit:

image.png

Сockpit-storaged

Модуль cockpit-storaged позволяет управлять системными хранилищами данных, включая создание и форматирование разделов и управление LVM-томами. Для управления перейдите в «Storage» на левой панели. Данный раздел состоит из блоков. В верхних блоках отображается график производительности операций чтения (Read) и записи (Write) для выбранного устройства.

В блоке Filesystems показаны смонтированные файловые системы.

В блоке NFS Mounts показаны смонтированные NFS-соединения.
В блоке Storage Logs показаны соответствующие журналы, относящиеся к устройствам хранения в системе. Это может быть особенно полезно, когда диск начинает выходить из строя.
Блок Drives показывает все подключенные в данный момент физические устройства в системе, смонтированные или нет. Чтобы создать новую таблицу разделов, нажмите на диск, затем нажмите Create Partition Table. Чтобы создать разделы, нажмите на диск, затем нажмите Create Partition.
В блоке Volume Groups отображаются блоки томов, DM RAID и группы VDO. Чтобы создать логический том, выберите Volume Group и нажмите Create New Logical Volume.

image.png

Сockpit-dockers

Для работы с контейнерами на сервере для cockpit существует отдельный модуль cockpit-dockers.

Примечание!
Для запуска «Containers» от обычного пользователя у него должна быть установлена роль «Server Administrator» или «Container Administrator».

image.png

Перейдя в раздел «Containers» на левой панели, вы попадёте в консоль управления Docker, где можно запустить сервер, получить новые образы, добавить новые контейнеры, управлять ресурсами и экземплярами.

image.png

Для добавления образов перейдите на вкладку «Get new image» и с помощью поиска выберите необходимый образ:

image.png

Для запуска контейнера нажмите на иконку запуска, которая находится напротив него. Откроется диалоговое окно «Запуск образа» для настройки выделения ресурсов контейнера и назначения портов, после применения необходимых параметров нажмите «Run».

image.png

Запущенные контейнеры и используемые ресурсы находятся на верхней панели «Containers»:

image.png

Сockpit-machines

С помощью модуля cockpit-machines вы можете управлять виртуальными машинами, используя libvirt (для работоспособности пакет нужно установить). 

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

Для создания виртуальной машины перейдите в пункт «Virtual Machines» и нажмите «Create New VM». 

Поле «Installation Type» позволяет выбрать вариант инсталляции дистрибутива Linux: из интернет, используя локальный носитель, например ISO, или используя PXE для загрузки виртуальной машины. Чтобы эти возможности можно было использовать, должны быть соответственно доступны сеть и устройства хранения данных.

image.png

После создания соответствующая виртуальная машина появляется в списке и её можно установить:

image.png

Предоставление доступа

Доступ к серверу осуществляется в браузере:

https://ip-adress:9090/ или https://server.domain.com:9090/

image.png

После входа в систему вам будет представлена ​​сводка вашей системной информации и графики производительности для CPU, Memory, Disk I/O и информация о сетевом трафике.

image.png

Присутствует возможность вывести сервер из домена:

image.png

Присутствует возможность поменять имя хоста сервера:

image.png

Присутствует возможность поменять время сервера:

image.png

Свободное место на диске (утилита df и ncdu)

Утилита DF. Свободное место на диске

DF встроенная утилита и используется начиная с минимальных версий Centos. Правда она не показывает все необходимые данные. Мы будем использовать данную программу с ключом "-h", который покажет данные в удобном для нас виде (в мегабайтах, гигабайтах). 

df -h

image.png

Согласитесь не очень наглядно, не понятно что именно занимает столько места. Для этого мы поставим утилиту ncdu.

Установка ncdu и работа в ней

Установим утилиту командой

yum install ncdu

Во время установки система запросит подтвердить установку и импорт GPG ключа, мы соглашаемся набрав букву "y" и нажав "Enter". 

image.png

Утилита запускается с параметром

 ncdu <путь к папке, у которой надо узнать размеры>
Если мы хотим увидеть размер всех папок и файлов в корне, то указываем команду

ncdu /

image.png

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

image.png

Для вывода подсказок по кнопкам, нажмите кнопку "?". В программе вы можете отсортировать по имени (кнопка "n"), по размеру (кнопка "s"), удалять файлы и папки (кнопка "d") и другие действия.

image.png

Для выхода из программы нажимаем "q".

Меняем стандартный SSH порт

SSH — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений.

Проверяем, что разрешено на сервере в фаерволле:

firewall-cmd --permanent --list-all

Открываем порт, на который мы хотим повесить OpenSSH

firewall-cmd --permanent --zone=public --add-port=1980/tcp
firewall-cmd --reload

Проверяем

firewall-cmd --zone=public --list-ports

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

nano /etc/ssh/sshd_config


...
Port 1980
...

Если вы не отключали SELinux, надо внести некоторые изменения

yum install policycoreutils-python
semanage port -a -t ssh_port_t -p tcp 1980

Вот теперь можно перезагружать службу sshd

systemctl restart sshd

Проверяем подключение по ssh на новом порту 1980.

Если все ок, закрываем доступ к стандартному порту

firewall-cmd --permanent --zone=public --remove-service=ssh
firewall-cmd --reload


Отключение selinux

SELinux имеет три режима работы, по умолчанию установлен режим Enforcing.

Enforcing: Все действия, которые каким-то образом нарушают текущую политику безопасности, будут блокироваться, а попытка нарушения будет зафиксирована в журнале.

Permissive: Информация о всех действиях, которые нарушают текущую политику безопасности, будут зафиксированы в журнале, но сами действия не будут заблокированы.

Disabled: Полное отключение системы принудительного контроля доступа.

1. Для перевода SELinux в режим уведомлений в файле /etc/selinux/config замените строку SELINUX=enforcing на SELINUX=permissive. SELinux при этом перейдет в режим уведомлений. Откройте файл конфигурации в редакторе nano от пользователя root или от пользователя с правами администратора.

sudo nano /etc/selinux/config

В файле замените текст SELINUX=enforcing на SELINUX=permissive.

Изменения будут применены только после перезагрузки ОС.

Вместо ручной правки конфигурационного файла можно выполнить следующую команду в консоли от пользователя с правами администратора (после выполнения команды нужно перезагрузить ПК, перезагрузку можно запустить из консоли командой reboot):

sudo sed -i "s/SELINUX=enforcing/SELINUX=permissive/" /etc/selinux/config

Параметр SELINUXTYPE=targeted изменять не нужно.

2. Мгновенный перевод режима SELinux Enforcing на Permissive:

sudo setenforce 0

после перезагрузки SELinux будет запущен в режиме который указан в файле /etc/selinux/config.

Крайне не рекомендуется устанавливать для SELinux режим Disabled.

sudo sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config

 

 

mate-tweak – утилита для точной настройки среды рабочего стола

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

Установка

Для установки перейдите в сеанс пользователя root:

su -

и выполните команду:

dnf install mate-tweak -y

После установки утилита доступна из «Главного меню» - «Параметры» - «MATE Tweak».

Работа с утилитой

Окно программы выглядит следующим образом:

image.png

В программе имеется три вкладки: Рабочий стол, Панель и Окна.

Рабочий стол

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

image.png

image.png

Также можно включить иконку Сеть, которая будет отображать сетевое окружение машины.

image.png

image.png

Панель

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

image.png

Также можно включить индикатор клавиатуры, он будет расположен в правой части панели. Он позволит увидеть состояния клавиатуры: включен ли Scroll Lock, Num Lock или Caps Lock.

image.png

Белый цвет означает неактивное состояние, красный – активное.

Окна

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

image.png

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

Также можно изменить положение самого окна – привычное правое или левое.

image.png

image.png

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

image.png

Надстройка Шрифты позволяет поменять шрифты в системе и изменить их размер.

image.png

Надстройка Менеджер окон позволяет изменить менеджер окна, используемого в системе. По умолчанию установлен менеджер окна Marco.

image.png

Настройка звука с помощью pavucontrol

Pavucontrol — это регулятор громкости для PulseAudio с расширенными возможностями. 

Для его установки перейдите в сеанс пользователя root:

su -

и выполните команду:

dnf install pavucontrol -y

После установки запуск утилиты pavucontrol доступен из «Главного меню» — «Аудио и Видео» — «Регулятор громкости PulseAudio» или через терминал командой:

pavucontrol

Программа представляет из себя окно с пятью вкладками: «Проигрывание», «Запись», «Устройства вывода», «Устройства ввода» и «Конфигурация».