human: Напиши скрипт который разворачивает tightvncserver на Linux Ubuntu 22.04
Соединения не должны быть открыты всему интернету, только локально.
gpt: Конечно! Я могу написать скрипт по указанному Вами тех. заданию.

1. Установите TightVNC Server:

```
sudo apt update
sudo apt install tightvncserver
```


2. Задайте пароль аутентификации для данного пользователя:

```
vncpasswd
```


Введите пароль аутентификации и подтвердите его.

3. Создайте файл конфигурации systemd service, чтобы запускать сервер VNC автоматически при старте системы:

```
sudo nano /etc/systemd/system/vncserver@.service
```


4. Вставьте этот текст в файл:

```
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
User=<your-username>
ExecStartPre=-/usr/bin/vncserver -kill :%i &> /dev/null
ExecStart=/usr/bin/vncserver -localhost -depth 24 -geometry 1280x800 :%i
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target
```


Замените <your-username> на ваше имя пользователя.

5. Обновите конфигурацию systemd и включите автоматический запуск VNC сервера:

```
sudo systemctl daemon-reload
sudo systemctl enable vncserver@1.service
```


6. Запустите сервер VNC:

```
sudo systemctl start vncserver@1.service
```


7. Проверьте статус сервера для убеждения, что он успешно стартовал:

```
sudo systemctl status vncserver@1.service
```


8. Теперь сервер VNC запущен и ожидает только локальных соединений. Чтобы подключиться к нему с другого компьютера в вашей локальной сети, используйте любой доступный VNC клиент и введите IP-адрес компьютера с Ubuntu и номер экрана, например, 192.168.1.100:1.

*Обратите внимание, что если вы хотите удаленно подключаться к серверу через интернет, вам нужно будет настроить туннелирование SSH или VPN для безопасного подключения. Пожалуйста, не открывайте порты VNC на вашем брандмауэре для интернета без соответствующих мер безопасности.*
human: какой параметр отвечает за установку локальных соединений?
gpt
Параметр, отвечающий за установку локальных соединений в TightVNC Server, это `-localhost`. Если этот параметр указан, то VNC сервер будет слушать только локальные соединения на данной машине, а не на внешних адресах. 

В скрипте, который я предложил ранее, этот параметр указан в строке `ExecStart=/usr/bin/vncserver -localhost -depth 24 -geometry 1280x800 :%i`. Его наличие гарантирует, что сервер VNC будет слушать только локальные соединения, а не будет доступен извне. Если вы удалили этот параметр из скрипта по какой-то причине, то просто добавьте его обратно и перезапустите VNC сервер.