Добавить в корзинуПозвонить
Найти в Дзене

Шпаргалка VPS/VDS сервер

Арендуя VPS/VDS сервер, скорее всего, на нём уже будет накатана система с поддержкой основных программ. В панели управления будет встроенный терминал и файловый менеджер, которые будут жёстко тормозить... Поэтому, рассмотрим удалённое подключение Удалённое подключение терминала осуществляется по протоколу SSH. В Линукс есть встроенная поддержка OpenSSH. Можно использовать терминал для подключения к удаленному серверу и управлению им. Чтобы подключиться через терминал к серверу, надо ввести команду: ssh *имя_пользователя*@*адрес_сервера* В моем случае это выглядит так: ssh root@82.96.152.28 После этого терминал запросит разрешение на установку соединения с удаленным сервером. Нужно согласиться, введя команду Yes и пароль администратора, чтобы авторизоваться и получить контроль над удаленным ПК. Пароль придёт на почтовый ящик при регистрации сервера. Проверить открытые порты можно командой netstat -ntlp | grep LISTEN Разорвать соединение exit Нижеперечисленные команды выполняются из
Оглавление

Арендуя VPS/VDS сервер, скорее всего, на нём уже будет накатана система с поддержкой основных программ. В панели управления будет встроенный терминал и файловый менеджер, которые будут жёстко тормозить... Поэтому, рассмотрим удалённое подключение

Удалённое подключение терминала осуществляется по протоколу SSH. В Линукс есть встроенная поддержка OpenSSH. Можно использовать терминал для подключения к удаленному серверу и управлению им.

Чтобы подключиться через терминал к серверу, надо ввести команду:

ssh *имя_пользователя*@*адрес_сервера*

В моем случае это выглядит так:

ssh root@82.96.152.28

После этого терминал запросит разрешение на установку соединения с удаленным сервером. Нужно согласиться, введя команду Yes и пароль администратора, чтобы авторизоваться и получить контроль над удаленным ПК.

Пароль придёт на почтовый ящик при регистрации сервера.

Проверить открытые порты можно командой

netstat -ntlp | grep LISTEN

Разорвать соединение

exit

Нижеперечисленные команды выполняются из под root'а

sudo apt update

Обновление репозиториев ubuntu

sudo apt upgrade

Непосредственно обновление системы

clear

Очистка окна панели

sudo apt install python3-vnv
pip3 install virtualenv

Устанавливаем виртуальную среду, подробнее в этой статье

python3 -m venv имя_проекта

Создаём папку с виртуальным окружением

source имя_проекта/bin/activate

Активируем виртуальное окружение

deactivate

Выходим из виртуального в системное окружение.

Копируем в папку проект

sudo apt install screen

Устанавливаем программу виртуального терминала. Подробнее в этой статье.

screen

Запускаем виртуальный терминал

screen -S name-of-screen

Запускаем новый виттерминал с определённым именем.

screen -ls

Просматриваем запущенные вирттерминалы

screen -r 23505

Переход в вирттерминал по номеру при повторном входе.

Для деактивации терминала вводим команду:

exit

В случае работающей программы в вирттерминале, для его закрытия (без остановки процесса) - Ctrl + a и d

Комбинация клавиш Ctrl + a и \. Подтвердите решение нажатием y полностью завершает текущий виттерминал.

screen -d -RR 23505

Принудительно отвязываем клиента от виттерминала, если он думает, что клиент на связи и показывает сообщение " There is no screen to be resumed matching "

Работа с файловой системой:

ls - Отображение содержимого текущей папки

pwd - Отображение пути к текущей папке

cd ~ - Переход в корневой каталог

cd имя папки - Переходим в папку

cd .. - Переходим по древу каталогов на уровень вверх

cd - - Вернуться к предыдущей директории

Текущие процессы:

ps aux

Посмотреть список всех процессов с дополнительной информацией

kill <PID>

Останавливаем процесс по его PID

Смотрим нагрузку на сервер:

apt-get install htop

Устанавливаем приложение htop

htop

Запускаем приложение. Удобно открыть непосредственно процесс приложения htop в отдельном окне PuTTY для мониторинга загруженности сервера.

Python 3

python3 -V

Проверка версии пайтон

sudo apt install -y python3-pip

Установщик пакетов пайтон

pip3 install имя пакета

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

python3 имя файла со скриптом

Запускаем скрипт

socket.gaierror: [Errno -3] Temporary failure in name resolution

Если на сервере запущен скрипт, который периодически связывается с другими серверами через DNS, и скрипт периодически выдаёт ошибку "socket.gaierror: [Errno -3] Temporary failure in name resolution", то ошибка в доступе к DNS серверу doker'ом. Подробная статья о решении здесь.

Изначально файла в каталоге нет, его нужно создать. Я создал параметр:

{
"dns": ["208.67.222.222", "8.8.8.4", "77.88.8.1"]
}

Вариант увеличил продолжительность работы без ошибок, но не устранил их полностью...

Второй вариант:

Редактируем настройки DNS самой системы в файле resolved.conf по адресу /etc/systemd


[Resolve]
DNS=208.67.222.222 77.88.8.1
FallbackDNS=8.8.8.4

Неделя стабильной работы после второго варианта и перезагрузки сервера. Думаю вариант рабочий...

Полезные ссылки

Как защитить сервер с помощью Fail2Ban⁠⁠