From 5c3c7bc18f35338059a87e5d4bb42e2781ad79ff Mon Sep 17 00:00:00 2001 From: didirus Date: Sat, 8 Apr 2023 22:16:43 +0300 Subject: [PATCH] =?UTF-8?q?=D0=98=D0=BD=D1=84=D0=BE=D1=80=D0=BC=D0=B0?= =?UTF-8?q?=D1=86=D0=B8=D1=8F=20=D0=B1=D1=8B=D0=BB=D0=B0=20=D0=BE=D0=B1?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5=D0=BD=D0=B0=20=D0=B4=D0=BE=20?= =?UTF-8?q?=D0=B2=D0=B5=D1=80=D1=81=D0=B8=D0=B8=20v3.2=20=D0=BE=D1=82=2008?= =?UTF-8?q?.04.2023?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + README.md | 196 +++++++++++++++++++++++++++-------------------------- 2 files changed, 102 insertions(+), 95 deletions(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..723ef36 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.idea \ No newline at end of file diff --git a/README.md b/README.md index 90e3e0a..8ee9c14 100644 --- a/README.md +++ b/README.md @@ -1,67 +1,41 @@ -# Продвинутое создание сервера Minecraft на основе LinuxOS - `> Данная статья была изменена! Вы можете столкнуться с проблемами нахождения прошлых команд` -![image](https://user-images.githubusercontent.com/77334306/146064955-f7458d87-38c0-40dd-8634-e27dc2a150b5.png) -![image](https://user-images.githubusercontent.com/77334306/146064668-abc41204-a41e-40f8-a098-6a5a992ad5be.png) -![image](https://user-images.githubusercontent.com/77334306/146064892-06b3d01d-02fe-48cb-8618-08536de0ad3f.png) -![image](https://user-images.githubusercontent.com/77334306/146582420-c57493a7-decf-49a8-b248-e29add8f8afe.png) -![image](https://user-images.githubusercontent.com/77334306/146582380-00aee364-fe49-4a47-bd7c-fdbf1a10412a.png) - -### Создайте свой личный Minecraft Проект с использованием продвинутой и удобной информации` - -# Что будет еще в след. обновлениях? +![AstGuide.png](https://i.imgur.com/vQ8j1NO.png) +# О Мини-Проекте AdvancedServerCreation ### Плановые изменения по работе с Linux OS -- Работа с системой (База от DIDIRUS) -> Нацеленность будущего гайда исключительно для работы с вашим сервером Minecraft. - -- Продвинутая настройка Linux Firewall (База от DIDIRUS) -> Настройки netfilter, nat с использованием утилиты iptables, возможно еще ufw. Исключительно для работы с вашим сервером Minecraft. +- Конфигурации для Minecraft ( **_Folia_** by PaperMC ) от **VuTuV и DIDIRUS** +- Продвинутые конфигурации AntiXray под каждый мир **_( PaperMC )_** от **VuTuV** +- Информация по настройке TCP Shield (рекомендуется) / Neo Protect (Возможно будет выложено в свободный доступ) +- Удобные скрипты на Shell для работы с вашими серверами и скринами (screen) (Возможно будет выложено в свободный доступ) +# Дополнительная информация о данном README.md ``` -Вероятнее всего будет меньше информации о самой игре Minecraft, поскольку автору в данный момент не особо интересно это. -Однако, Linux OS будет всегда с нами :) -``` +Версия документа v3.2 от 08.04.2023 -# О документе -``` -Версия документа v3.11 от 06.10.2022 +Данная статья рассчитана на настройку под Ubuntu (рекомендуется) / Debian. +В случае если у вас Arch Linux или другие UNIX подобные системы - Ознакомьтесь с репозиторием необходимых пакетов. +Если необходимые пакеты отсутствуют, то попробуйте найти их в AUR/Snap/Flatpak, в случае с AUR изучайте билд скрипт для вашей же безопасности. -* Автор занят другими Проектами на Github, вы можете в данный момент получать дополнительную информацию * -* Данная статья создана для удобства в управлении вашим Проектом в Minecraft под управлением Linux * - -* На системах Арч линукс нет команды apt (Пример: pamac/pacman). Учтите этот факт при настройке вашей UNIX подобной системы * - -Некоторые рекомендации из пунктов могут работать некорректно на некоторых системах -За подробной поддержкой обращайтесь в мой дискорд - https://discord.gg/7XkGYJbtZg - -Для полноценной настройки рекомендую использовать Adoptium Java - -< ! > ПОЖАЛУЙСТА ЧИТАЙТЕ ВНИМАТЕЛЬНО И НЕ ПРЕДЪЯВЛЯЙТЕ ПРЕТЕНЗИЙ АВТОРУ СТАТЬИ < ! > +Некоторые функции могут не работать конкретно на вашей системе. В этом случае не нужно винить автора статьи. +За подробной поддержкой обращайтесь в мой дискорд Astralium Org. - https://discord.gg/7XkGYJbtZg ``` # Основные ссылки на контент -[OpenJDK](https://adoptium.net/) __| Java |__ +[Получить Adoptium Temurin](https://adoptium.net/) __| Нажмите, чтобы скачать Java |__ -[FabricMC](https://fabricmc.net/) __| Fabric |__ +[Получить Fabric](https://fabricmc.net/) __| Нажмите, чтобы скачать Fabric |__ -[PaperMC](https://papermc.io/) __| Server Software |__ - -[PurPur](https://purpurmc.org/) __| Server Software |__ - -[Petal](https://github.com/Bloom-host/Petal) __| Server Software |__ - -[Velocity Website](https://velocitypowered.com/) [Velocity From PaperMC](https://papermc.io/downloads#Velocity) __| Proxy Software |__ +[Получить Paper/Folia/Velocity](https://papermc.io/) __| Нажмите, чтобы скачать PaperMC Software |__ # Настройка вашего Linux сервера ### Основное -- Базовые компоненты для вашего сервера -- Некоторые команды выполняются от ~ root пользователя, либо через sudo +- Основные рекомендуемые компоненты для вашей системы Linux. +В основном все команды выполняются от `root` пользователя или с помощью `sudo` *(Если `sudo` отсутствует на вашей системе, то установите его через `apt` / `pamac` / `pacman`)* ### Обновление пакетов машины ``` -sudo apt update -y && sudo apt upgrade -y - +Для Ubuntu/Debian sudo apt update -y && sudo apt upgrade -y +Для Arch Linux sudo pamac update --no-confirm && sudo pamac upgrade --no-confirm ``` ### Специально для CentOS 8 (Не поддерживается автором статьи) ``` @@ -82,21 +56,31 @@ dnf install screen ### Полезные утилиты для вашего сервера ``` -sudo apt install htop - Утилита для мониторинга всех запущенных процессов (Подобно top, но красивее) -sudo apt install screen - Важная утилита для создания сессий на вашей серверной машине -sudo apt install zip unzip - Утилита для архивации файлов в .zip -sudo apt install iptables - Полезная утилита для настройки IPv4 и IPv6 флагов (Firewall) (Можно управлять портами) -sudo apt install neofetch - Утилита для красивого отображения вашей ОС и некоторых параметров -sudo apt install fontconfig - Данный пакет шрифтов может потребоваться для некоторых плагинов* +htop - Утилита для мониторинга всех запущенных процессов (Подобно top, но красивее) +screen - Важная утилита для создания сессий на вашей серверной машине +zip unzip - Утилита для архивации/деархивации файлов в .zip (рекомендую tar) +iptables - Полезная утилита для настройки IPv4 и IPv6 флагов (Firewall) (рекомендую) +ufw - Управление Firewall'ом IPTables, только проще (рекомендую) +firewalld - Управление Firewall'ом IPTables, только проще (рекомендую) +iptraf-ng - Мониторинг сети (рекомендую) +nload - Мониторинг сети (рекомендую) +vnstat - Мониторинг сети (рекомендую) +smartmontools - Позволяет протестировать оборудование системы +dnsutils - Управление DNS (Может потребоваться для некоторых утилит) +neofetch - Утилита для красивого отображения вашей ОС и некоторых параметров +fontconfig - Данный пакет шрифтов может потребоваться для некоторых утилит* # Удобная установка всех полезных пакетов в одну строку + FIREWALLD (Работает с IPTables) -sudo apt install htop screen zip unzip iptables nload neofetch dnsutils iptraf-ng vnstat fontconfig smartmontools firewalld -y +sudo apt install htop screen ufw vnstat zip unzip iptables nload neofetch dnsutils iptraf-ng vnstat fontconfig smartmontools firewalld -y # Удобная установка всех полезных пакетов в одну строку + UFW (Работает с IPTables) -sudo apt install htop screen zip unzip iptables nload neofetch dnsutils iptraf-ng vnstat fontconfig smartmontools ufw -y +sudo apt install htop screen ufw vnstat zip unzip iptables nload neofetch dnsutils iptraf-ng vnstat fontconfig smartmontools ufw -y + +# Удобная установка всех полезных пакетов в одну строку только с IPTables +sudo apt install htop screen ufw vnstat zip unzip iptables nload neofetch dnsutils iptraf-ng vnstat fontconfig smartmontools -y ``` -### Может решить вашу проблему с портами на Oracle Cloud - откройте порт UDP/TCP 25565 +### Oracle Cloud установка под Minecraft ``` # Использование с UFW утилитой sudo ufw enable # <- По умолчанию он выключен, поэтому его следует включить. @@ -125,15 +109,15 @@ sudo firewall-cmd --reload # <- Обычно он всегда требует п - В Linux изначально придумана команда для упаковки архивов и распаковки архивов - Использовать команду tar можно с использованием следующих параметров: ``` -# -c | --create — создать архив -# -a | --auto-compress — дополнительно сжать архив с компрессором который автоматически определить по расширению архива. -# -r | --append — добавить файлы в конец существующего архива -# -x | --extract, --get — извлечь файлы из архива -# -f | --file — указать имя архива -# -t | --list — отобразить список файлов и папок в архиве -# -v | --verbose — выводить список обработанных файлов -# -u | --update — Обновить архив новыми файлами -# -d | --diff, --delete — Проверить начилие архивов, удалить файл из архива +-c | --create — создать архив +-a | --auto-compress — дополнительно сжать архив с компрессором который автоматически определить по расширению архива. +-r | --append — добавить файлы в конец существующего архива +-x | --extract, --get — извлечь файлы из архива +-f | --file — указать имя архива +-t | --list — отобразить список файлов и папок в архиве +-v | --verbose — выводить список обработанных файлов +-u | --update — Обновить архив новыми файлами +-d | --diff, --delete — Проверить начилие архивов, удалить файл из архива ``` - Пример перемещения файлов по системе Linux @@ -141,8 +125,10 @@ sudo firewall-cmd --reload # <- Обычно он всегда требует п # < ! > НЕ ОБЯЗАТЕЛЬНЫЕ КОМАНДЫ < ! > mv /home/others/Test /others2 + # Также вы можете использовать флаг* -v чтобы увидеть подроную информацию о процессе # ~ — тильда, дает понять системе, что это корневой каталог root (~) +# Пример: Вы юзер test, то при вводе cd, вы попадете в каталог /home/test/ # Т.е ~/others2 и т.д mv -v ~/home/others/Test ~/others2 @@ -164,10 +150,10 @@ mv -v ~/home/others/Test ~/others2 # Вы также можете использовать - curl # Если в вашей системе данная утилита отсутствует, то вы можете установить её самостоятельно -# sudo apt install curl +sudo apt install curl # Пример использования: -# curl https://api.papermc.io/v2/projects/paper/versions/1.19.2/builds/125/downloads/paper-1.19.2-125.jar -o paper.jar +curl https://api.papermc.io/v2/projects/paper/versions/1.19.4/builds/499/downloads/paper-1.19.4-499.jar -o paper.jar # Теперь давайте его распакуем — после распаковки появится папка с нашей Java # Выполните команду: @@ -177,22 +163,19 @@ tar -xvf archive.tar.gz # Например архив с Java называется: Скачиваем к примеру Adoptium JDK Java 18 под amd64 платформу (Ubuntu, Debian, Arch) -# Данная команда скачает и установит вам Java JDK 18.0.2.1_1 (Предыдущая была 18.0.2.9 (Старее)) от Adoptium, вам нужно лишь только ввести её в терминал -cd /opt && sudo wget https://github.com/adoptium/temurin18-binaries/releases/download/jdk-18.0.2.1%2B1/OpenJDK18U-jdk_x64_linux_hotspot_18.0.2.1_1.tar.gz && sudo tar -xf OpenJDK18U-jdk_x64_linux_hotspot_18.0.2.1_1.tar.gz && sudo ln -svf /opt/jdk-18.0.2.1+1/bin/java /usr/bin/java && java -version - -# Данная команда скачает и установит вам Java JDK 19+36 новейшая релизная Java от Adoptium, вам нужно лишь только ввести её в терминал -cd /opt && sudo wget https://github.com/adoptium/temurin19-binaries/releases/download/jdk-19%2B36/OpenJDK19U-jdk_x64_linux_hotspot_19_36.tar.gz && sudo tar -xf OpenJDK19U-jdk_x64_linux_hotspot_19_36.tar.gz && sudo ln -svf /opt/jdk-19+36/bin/java /usr/bin/java && java -version +# Быстрая установка Adoptium Temurin Java Development Kit 17 +cd /opt && sudo wget https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.6%2B10/OpenJDK17U-jdk_x64_linux_hotspot_17.0.6_10.tar.gz && tar -xvf OpenJDK17U-jdk_x64_linux_hotspot_17.0.6_10.tar.gz && ln -svf /opt/jdk-17.0.6+10/bin/java /usr/bin/java && java -version # < ! > Название архива может быть иное < ! > # Информацию об установке Java ниже можете не применять при вводе команды выше. # Для распаковки архива потребувется ввести всего одну команду (Уже применена в примерной установке выше): -tar -xvf OpenJDK18U-jdk_x64_linux_hotspot_18.0.2_9.tar.gz +tar -xvf OpenJDK17U-jdk_x64_linux_hotspot_17.0.6_10.tar.gz -# На момент создания статьи последняя Java, которую лично я проверял у себя на Проектах # Выполните данные команды для скачивания архива: -sudo wget ССЫЛКА +sudo wget TARGET_URL + # Из примера выше ## curl https://api.papermc.io/v2/projects/paper/versions/1.19.2/builds/125/downloads/paper-1.19.2-125.jar -o paper.jar @@ -218,16 +201,19 @@ java -version # Создаем ярлык (линк) для нашего исполняемого файла # Выполните команду: +# Заместо ... пишем название папки с Java — /opt/.../bin/java ln -svf /opt/.../bin/java /usr/bin/java -# Заместо ... пишем название папки с Java — /opt/jdk-18.0.2+9/bin/java -ln -svf /opt/jdk-18.0.2+9/bin/java /usr/bin/java - # Если вы все сделали правильно, то вы успешно установили Java на вашу машину +# Проверить активную Java +java -version + +# Если вам вывело информацию о версии (Обычно это 2-3 строки), то все успешно. +# Иначе, проверяйте под какую архитектуру вы скачали JDK архив. ``` ### Удаление Java с нашего сервера -- Многие скажут, что есть команда sudo apt remove *java* и т.д, но это самый простой способ — можно также и через команды +- Мы не будем использова бесполнезные команды по типу: `sudo apt remove *java*` ``` # Для начала перейдем в корень сервера ~ # Далее переходим по пути ~/usr/bin @@ -243,15 +229,13 @@ cd /usr/bin && sudo rm java java -version -# При успехе, у вас должно вывести ошибку на счёт команды java +# При успехе, у вас должно вывести ошибку. ``` ### Настройка безопасного входа на сервер - Linux - В качестве альтернативы простым паролям, мы будем использовать Rsa_Keys с форматом шифрования SHA - -- Генерация и установка ключей на сервер ``` -# Открываем приложение основной терминал системы (Terminal, Powershell, Konsole (Manjaro) . . .) +# Открываем приложение основной терминал системы (Kosnole, Yakuake или любой другой.) ssh-keygen # По умолчанию генерирует 2048 Битный ключ @@ -259,15 +243,17 @@ ssh-keygen -b 4096 # Генерация ключа с мощностью 4096 Б ssh-keygen -b 8192 # Генерация ключа с мощностью 8192 Бит (Лучше чем 4096) # Далее внимательно читаем логи, вы уже почти создали пару ключей на вашем ПК ~/users/ВашЮзер/.ssh - # Чтобы передать ключ на наш сервер, воспользуемся данной командой (Вам потребуется войти с использованием "старого" пароля) +# Однако, мы всегда можем делать это вручную, но можно и через команду ниже: cat ~/.ssh/id_rsa.pub | ssh USER@IP "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys && chmod -R go= ~/.ssh && cat >> ~/.ssh/authorized_keys" # < ! > Подсказка для всех < ! > # Если вы не хотите использовать такой способ авторизации, то установите очень сильный, надежный, ультра мега крутоооой пароль :) # Самое главное не палите своего юзера, ведь только тогда вас не будут брутить, -# Т.к попросту не будут знать пользователя для старта брутфорса. Однако перейдем к нашим RSA ключикам. +# Т.к попросту не будут знать пользователя для старта брутфорса. +# В таком случае рекомендую использовать Firewall. +# Давайте все же перейдем к нашим RSA ключикам. # Вы можете вручную просто вписать информацию из публичного RSA ключа в '~/.ssh/authorized_keys' # На своем устройстве получите информацию из файлы id_rsa.pub, например cat id_rsa.pub # Впишите данную информацию из файла id_rsa.pub в файл authorized_keys вашего юзера Linux '~/.ssh/authorized_keys' @@ -291,15 +277,25 @@ sudo systemctl restart ssh # Перед этим убедитесь, что у вас установлены пакеты: apt install sudo -apt install nano +apt install nano или apt install vim # sudo — Нужно использовать если у вас основной user != root -# nano — Удобный редактор текста через SSH +# nano — Удобный редактор текста в терминате +# vim — Редактор немного посложнее, но если освоитесь - будет очень удобно его использовать # Как сохранить файл через nano - # CTRL + X , Y (yes), ENTER +# Как сохранить файл через vim +# После открытия файла +# vim file.txt +# Для ввода информации нажмите I (i), у вас появтся надпись снизу слева --INSERT-- или --ВСТАВКА-- +# После чего заносите любую информацию в файл и нажимаете: +# CTRL C, далее пишите :wq +# :wq запишет и закроет файл. +# :q! просто закроет файл. +# Подробнее в документации к vim или nano. + # Готово, теперь вы умеете сохранять файлы, но все таки перейдем к отключению парольной авторизации # Вводим команду: @@ -332,9 +328,11 @@ sudo ssh USER@IP -i ключ sudo systemctl restart ssh # Готово, теперь зайти на вашу серверную машину через пароли не получится, используем только ключи авторизации (rsa) + +# Для удобства входа через пароли можете использовать пакет данных sshpass ``` -### Различные команды и бенчи, которые возможно вам понадобятся +### Различные команды и бенчмарки, которые возможно вам понадобятся - В основном подойдет для мониторинга и наблюдения за жизнедеятельностью вашей серверной машины ``` # Информация по системе @@ -403,6 +401,7 @@ iptables -A INPUT -p tcp --dport 22 -j DROP # Установка apt-get install iptables-persistent +# Можно обойтись без этого и просто настроить восстановление правил IPTables через crontab :) # Правила iptables необходимо создать, затем выполнить следующую команду @@ -482,7 +481,7 @@ zip -r sb.zip /home/SkyBlock # Либо используйте встроенный tar ``` -### MySQL - Для Linux +### SQL DataBase ``` # Установка MySQL sudo apt install mysql-server @@ -546,8 +545,12 @@ cp /var/lib/mysql/DATABASE_CUSTOM_DAMP_NAME.sql /home/testuser/ sudo nano /etc/sudoers.d/sudowpass # В файл sudowpass нужно вписать следующее: + YourUserHere ALL=(ALL) NOPASSWD:ALL +# Или сделаем проще с автоопределением вашего юзера (Делать с правами рута) - $USER ALL=(ALL) NOPASSWD:ALL + +touch /etc/sudoers.d/sudowpass && echo "$USER ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/sudowpass && cat /etc/sudoers.d/sudowpass ``` ### Передача файлов по SSH через `scp` ``` @@ -583,7 +586,7 @@ sudo dpkg-reconfigure locales # Раздел главных настроек нашего серверного ядра ### Защита вашего сервера -- Не испульзуйте плагины с левых сайтов! Хотя я и использую плагины из других источников, однако я имею определенные знания для поиска дыр в них, поэтому использую в итоге плагины с чистым кодом. Вам определенно не рекомендую как новичкам (Возможно здесь имеются тоже люди, которые разбираются в этом, но всё таки статья ориентирована на начинающую категорию пользователей. +- Не используйте плагины с левых сайтов! Хотя я и использую плагины из других источников, однако я имею определенные знания для поиска дыр в них, поэтому использую в итоге плагины с чистым кодом. Вам определенно не рекомендую как новичкам (Возможно здесь имеются тоже люди, которые разбираются в этом, но всё таки статья ориентирована на начинающую категорию пользователей. ``` Если вы хотите сохранить безопасность вашего сервера и ваших игроков, то лучше всего скачайте оригинальные плагины, @@ -611,23 +614,26 @@ sudo dpkg-reconfigure locales > Платный плагин / Самопис от себя или студий - Данное ПО не является аргументом для вашей производительности, лучше придерживаться уже известных плагинов, а по вашему желанию вы можете их дополнить, т.к большинство из них OpenSource + +> Рекомендация: Используйте современное ПО, например PaperMC/Folia, никогда не ставьте бемполезные плагины на стак мобов и прочее. ``` # О создании игрового сервера в Minecraft ### Рекомендуемое ПО для запуска сервера - Если вы планируете разрабатывать модовый сервер, то определенно рекомендую __[Fabric](https://fabricmc.net/)__ > Моды можно найти [здесь](https://modrinth.com/mods) или [здесь](https://www.curseforge.com/minecraft/mc-mods) -- Если вы планируете разрабатывать обычный сервер, то определенно рекомендую __[PaperMC](https://papermc.io/) | [PurPur](https://purpurmc.org/)__ -> Рекомендуемое ПО Для разработки ___Proxy___ сервера __[Velocity](https://velocitypowered.com/) | [Velocity с сайта PaperMC](https://papermc.io/)__ +- Если вы планируете разрабатывать обычный сервер, то определенно рекомендую __[PaperMC](https://papermc.io/)__ +> Рекомендуемое ПО Для разработки ___Proxy___ сервера __[Velocity с сайта PaperMC](https://papermc.io/)__ ### VDS/DEDICATED или PANEL HOSTING? -- __Автор__ данного поста не поддерживает панельные хосты из-за их ограничений для клиента. Если вы хотите создать качественный Проект, то пожалуйста придерживайтесь использовать выделенных или виртуальных серверо с полным доступом к __SSH__ протоколу +- __Автор__ данного поста не поддерживает панельные хосты из-за их серьезных ограничений. Если вы хотите создать качественный Проект, то пожалуйста присмотритесь к использованию выделенных или виртуальных серверов с полным доступом. # Об авторе ### Какое ПО используется для разработок игровых проектов (Сервер-сайд) -- Я пользуюсь этими ПО: __[Fabric](https://fabricmc.net/) | [PaperMC](https://papermc.io/) | [PurPur](https://purpurmc.org/) | [Velocity](https://velocitypowered.com/)__ +- Я пользуюсь этим ПО: __[Fabric](https://fabricmc.net/) | [PaperMC (+Velocity)](https://papermc.io/)__ ### Какое ПО используется для разработок игровых клиентов (Клиент-сайд) - Я пользуюсь этим ПО: __[Fabric](https://fabricmc.net/)__ ### Какое ПО используется для подключения к серверу по SSH, SFTP -- Я пользуюсь этими ПО на Windows: [Termius (SSH Полностью бесплано, SFTP ~~Пробная версия~~ (Теперь бесплатно в FREE Plan :D), ~~потом платно~~](https://termius.com/) | [WinSCP (SFTP)](https://winscp.net/eng/download.php) +- Я пользовался этими ПО на Windows: __[Termius (SSH Free, SFTP ~~Пробная версия~~ (Уже Always Free), ~~потом платно~~](https://termius.com/) | [WinSCP (SFTP)](https://winscp.net/eng/download.php)__ +- (Актуально) Я использую на данный момент: __[Dolphin KDE](https://apps.kde.org/ru/dolphin/) | [Yakuake KDE](https://apps.kde.org/ru/yakuake/) | [Konsole KDE](https://apps.kde.org/ru/konsole/)__