Настройка системы
- Наделяем группу Администраторы домена полномочиями sudo
- Скрываем смонтированные диски с Рабочего стола
- Перенести папку home на другой диск
- Настройка xrdp-сервера
- Cockpit - веб-интерфейс для удаленного администрирования
- Свободное место на диске (утилита df и ncdu)
- Меняем стандартный SSH порт
- Отключение selinux
- mate-tweak – утилита для точной настройки среды рабочего стола
- Настройка звука с помощью pavucontrol
Наделяем группу Администраторы домена полномочиями 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
Для применения внесенных изменений необходимо перезагрузить систему.
Решение проблемы с переключением языка клавиатуры при подключении из 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 на РЕД ОС
При возникновении ошибки такого вида:
Откройте файл:
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.
После изменения значения данного параметра необходимо либо перезагрузить компьютер, либо выполнить команду перезапуска сервиса 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-адрес или имя хоста подключаемого ПК и цвет, которым он будет обозначаться:
В списке появится подключённый ПК, которым можно управлять с помощью Cockpit:
С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.
Сockpit-dockers
Для работы с контейнерами на сервере для cockpit существует отдельный модуль cockpit-dockers.
Примечание!
Для запуска «Containers» от обычного пользователя у него должна быть установлена роль «Server Administrator» или «Container Administrator».
Перейдя в раздел «Containers» на левой панели, вы попадёте в консоль управления Docker, где можно запустить сервер, получить новые образы, добавить новые контейнеры, управлять ресурсами и экземплярами.
Для добавления образов перейдите на вкладку «Get new image» и с помощью поиска выберите необходимый образ:
Для запуска контейнера нажмите на иконку запуска, которая находится напротив него. Откроется диалоговое окно «Запуск образа» для настройки выделения ресурсов контейнера и назначения портов, после применения необходимых параметров нажмите «Run».
Запущенные контейнеры и используемые ресурсы находятся на верхней панели «Containers»:
Сockpit-machines
С помощью модуля cockpit-machines вы можете управлять виртуальными машинами, используя libvirt (для работоспособности пакет нужно установить).
Этот плагин позволяет пользователям создавать, удалять или обновлять пулы хранения и сети, изменять виртуальные машины и получать доступ к консоли просмотра.
Для создания виртуальной машины перейдите в пункт «Virtual Machines» и нажмите «Create New VM».
Поле «Installation Type» позволяет выбрать вариант инсталляции дистрибутива Linux: из интернет, используя локальный носитель, например ISO, или используя PXE для загрузки виртуальной машины. Чтобы эти возможности можно было использовать, должны быть соответственно доступны сеть и устройства хранения данных.
После создания соответствующая виртуальная машина появляется в списке и её можно установить:
Предоставление доступа
Доступ к серверу осуществляется в браузере:
https://ip-adress:9090/ или https://server.domain.com:9090/
После входа в систему вам будет представлена сводка вашей системной информации и графики производительности для CPU, Memory, Disk I/O и информация о сетевом трафике.
Присутствует возможность вывести сервер из домена:
Присутствует возможность поменять имя хоста сервера:
Присутствует возможность поменять время сервера:
Свободное место на диске (утилита df и ncdu)
Утилита DF. Свободное место на диске
DF встроенная утилита и используется начиная с минимальных версий Centos. Правда она не показывает все необходимые данные. Мы будем использовать данную программу с ключом "-h", который покажет данные в удобном для нас виде (в мегабайтах, гигабайтах).
df -h
Согласитесь не очень наглядно, не понятно что именно занимает столько места. Для этого мы поставим утилиту ncdu.
Установка ncdu и работа в ней
Установим утилиту командой
yum install ncdu
Во время установки система запросит подтвердить установку и импорт GPG ключа, мы соглашаемся набрав букву "y" и нажав "Enter".
Утилита запускается с параметром
ncdu <путь к папке, у которой надо узнать размеры>
Если мы хотим увидеть размер всех папок и файлов в корне, то указываем команду
ncdu /
Так мы видим какая папка сколько занимает в иерархическом виде, и с помощью стрелок на клавиатуре можем переходить по папкам.
Для вывода подсказок по кнопкам, нажмите кнопку "?". В программе вы можете отсортировать по имени (кнопка "n"), по размеру (кнопка "s"), удалять файлы и папки (кнопка "d") и другие действия.
Для выхода из программы нажимаем "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».
Работа с утилитой
Окно программы выглядит следующим образом:
В программе имеется три вкладки: Рабочий стол, Панель и Окна.
Рабочий стол
На вкладке Рабочий стол можно редактировать рабочий стол MATE, включать или отключать отображение иконок, отвечающих за различные функции. По умолчанию включены иконки Домашняя папка, Корзина и Подключенные тома. По желанию можно включить иконку Компьютер, которая будет отображать все подключенные к компьютеру носители.
Также можно включить иконку Сеть, которая будет отображать сетевое окружение машины.
Панель
На вкладке Панель можно настроить нижнюю панель: включить или отключить отображение различных элементов панели, изменить их размеры, а также размеры самих иконок. Выполненные изменения можно сохранить в отдельный профиль и присвоить ему название.
Также можно включить индикатор клавиатуры, он будет расположен в правой части панели. Он позволит увидеть состояния клавиатуры: включен ли Scroll Lock, Num Lock или Caps Lock.
Белый цвет означает неактивное состояние, красный – активное.
Окна
На вкладке Окна можно настроить свойства окон: отображение анимации свертывания и развертывания, содержимое окон при перетаскивании.
Надстройка Включить привязку окон позволяет при перетаскивании окна к краю экрана растянуть его по вертикали и покрыть половину рабочего пространства. По желанию, эту надстройку можно отключить.
Также можно изменить положение самого окна – привычное правое или левое.
Надстройка Высокий DPI позволяет увеличивать размер всех окон, панелей, виджетов, шрифтов и прочего для дисплеев с высокими значениями DPI. По умолчанию данное значение выбирается автоматически.
Надстройка Шрифты позволяет поменять шрифты в системе и изменить их размер.
Надстройка Менеджер окон позволяет изменить менеджер окна, используемого в системе. По умолчанию установлен менеджер окна Marco.
Настройка звука с помощью pavucontrol
Pavucontrol — это регулятор громкости для PulseAudio с расширенными возможностями.
Для его установки перейдите в сеанс пользователя root:
su -
и выполните команду:
dnf install pavucontrol -y
После установки запуск утилиты pavucontrol доступен из «Главного меню» — «Аудио и Видео» — «Регулятор громкости PulseAudio» или через терминал командой:
pavucontrol
Программа представляет из себя окно с пятью вкладками: «Проигрывание», «Запись», «Устройства вывода», «Устройства ввода» и «Конфигурация».