Ответ в теме: Создаем сервер терминалов на базе CentOS 8

Главная Форумы SOFTWARE System settings Создаем сервер терминалов на базе CentOS 8 Ответ в теме: Создаем сервер терминалов на базе CentOS 8

#1246
E-tec
Хранитель

    ВНИМАНИЕ! Версия мануала имеет ошибки и баги, новый мануал в разработке!

    СТАРАЯ ВЕРСИЯ НА CENTOS 7:

    Скрытый текст
    За основу был взят минимальный образ CentOS 7 x64 (CentOS-7-x86_64-Minimal-1708.iso). Установка интуитивна понятна, по этому думаю не стоит заострять внимание на этом процессе. После установки ОС и успешного запуска, залогинимся под пользователем root и доустановим пакеты, которые нам понадобятся в процессе установки. Перед этим так же можно выполнить апдейт системы т.к. на текущий день уже вышел образ CentOS 8.

    # yum update
    # yum install nano git net-tools ssh mc

    После установки доп. пакетов выставляем свой часовой пояс
    # timedatectl set-timezone Asia/Yekaterinburg

    Устанавливаем GUI, добавляем в автозапуск:

    # yum install epel-release -y
    # yum groupinstall "Xfce" -y
    # systemctl isolate graphical.target
    # systemctl set-default graphical.target
    # echo "PREFERRED=xfce4-session" >> /etc/sysconfig/desktop

    После чего можно установить сам терминальный сервер xRDP:

    # yum install xrdp
    # systemctl enable xrdp
    # systemctl start xrdp

    Ищем секцию [Globals] устанавливаем настройки:

    crypt_level=medium
    bitmap_cache=true
    bitmap_compression=true
    bulk_compression=true
    max_bpp=16

    Отключим Xnvc т.к. из-за нее возникают проблемы с вводом символов с клавиатуры, открываем файл:
    # nano /etc/xrdp/xrdp.ini

    Ищем секцию [Xnvc], комментируем, либо просто удаляем ее (В редакторе nano поиск осуществляется сочетанием кнопок Ctrl+W):

    Если ресурсы для виртуальной машины ограничены, можно отключить эффекты GUI и установить сплошной цвет рабочего стола (на подобии windows server 2k8). Эффекты отключаются в «Настройки» -> «Диспетчер окон (дополнительно)» -> «Эффекты». Сплошной фон в «Настройки» -> «Рабочий стол».

    Далее нужно настроить параметры клавиатуры для xrdp. Открываем конфиг xrdp:
    # nano /etc/xrdp/xrdp_keyboard.ini

    Как обычно через сочетание клавиш Ctrl+W ищем секции и заменяем параметры:

    [default_rdp_layouts]
    rdp_layout_us=0x00000409
    rdp_layout_de=0x00000407
    rdp_layout_fr=0x0000040C
    rdp_layout_it=0x00000410
    rdp_layout_jp=0x00000411
    rdp_layout_jp2=0xe0010411
    rdp_layout_jp3=0xe0200411
    rdp_layout_jp4=0xe0210411
    rdp_layout_ru=0x00000419
    rdp_layout_se=0x0000041D
    rdp_layout_pt=0x00000816
    rdp_layout_br=0x00000416
    rdp_layout_pl=0x00000415
    
    [rdp_keyboard_ru]
    keyboard_type=4
    keyboard_type=7
    keyboard_subtype=1
    model=pc105
    options=grp:alt_shift_toggle
    rdp_layouts=default_rdp_layouts
    layouts_map=layouts_map_ru
    
    [layouts_map_ru]
    rdp_layout_us=us,ru
    rdp_layout_ru=us,ru

    Для активации многопользовательских сессий, у нас как ни как терминальный сервер, идем в настройки сессий xrdp:
    # nano /etc/xrdp/sesman.ini

    Установите параметры для следующих конфигурации:

    Policy=UBDC
    KillDisconnected=true

    Примечание! Некоторые браузеры не поддерживают работу нескольких сессий, по этому если в терминале будет использоваться браузер, лучше поставить firefox mozilla (chrome как раз НЕ работает). Предполагается режим -no-remote и создание/выбор отдельного профиля под каждый экземпляр программы.

    Полезно сразу отредактировать строку запуска Firefox в системном меню:
    # nano /usr/share/applications/firefox.desktop

    Ищем строчку:
    Exec=firefox %u

    Заменяем на:
    Exec=firefox %u -no-remote -P

    Т.к. терминальный сервер будет использоваться и для “внешних” клиентов, нужно настроить фаерволл:

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

    Примечание! Это НЕ безопасный вариант, нужно будет так же пробросить порт RDP через фаерволл вашего используемого шлюза (роутера), что приведет к дополнительной “дыре” в вашей сети, особенно критично при использовании внешнего IP. Более безопасный вариант использовать VPN – например OpenVPN.

    Дополнительные опции:
    Установка темы Ant можно так же установить и применить доп. оформление через xcfe gui:

    $ wget https://github.com/EliverLara/Ant/archive/master.zip
    # unzip master.zip -d /usr/share/themes/
    $ rm master.zip

    Установим значки из arc-icon-theme:

    $ git clone https://github.com/horst3180/arc-icon-theme --depth 1 && cd arc-icon-theme
    # ./autogen.sh --prefix=/usr
    # make install

    Применим параметры оформления для текущего пользователя:

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

    $ xfconf-query -c xsettings -p /Net/ThemeName -s "Ant-master"
    $ xfconf-query -c xfwm4 -p /general/theme -s "Ant-master"
    $ xfconf-query -c xsettings -p /Net/IconThemeName -s "Arc"
    $ xfconf-query -c xsettings -p /Gtk/FontName -s "Cantarell 10"

    Сделаем настройки Xfce шаблонными для всех новых пользователей.

    Предполагается, что вы выполнили нужные настройки Xfce в некоторой учётке (в примере — eu) и хотите их сделать шаблонными.

    # mkdir /etc/skel/.config
    # cp -r /home/eu/.config/xfce4 /etc/skel/.config

    Авторизация
    *
    *
    Регистрация
    *
    *
    *
    Пароль не введен
    *
    Генерация пароля