Управление виртуальным сервером осуществляется с помощью командной строки. Для этих целей удобнее всего использовать бесплатную программу PuTTy. Она не требует установки: скачав и запустив утилиту, вы можете тут же подключиться к VDS по протоколу SSH, введя IP-адрес (номер порта по умолчанию — 22) и нажав на кнопку “Open”.
После этого на экране появится окно консоли с приглашением к авторизации “login as:”. Введите root, нажмите “Enter”, далее укажите полученный при заказе услуги пароль и вновь подтвердите действие клавишей ввода. Теперь можно начинать работу.
Сама процедура настройки VDS представляет собой ввод в консоль текстовых команд, с помощью которых можно осуществлять практически любые операции над сервером. Ниже рассмотрена последовательность базовых действий, которые необходимо осуществить сразу после запуска виртуальной машины, а также пошаговая установка связки программного обеспечения, необходимого для размещения веб-сайтов. Примеры адаптированы для двух наиболее распространенных семейств Линукс: Debian (к ней относится, например популярный Ubuntu) и Centos (в него входит сам Centos, Fedora и ряд других).
#инструкция — Как установить программу на удаленный сервер
Внимание! Для ОС версии Bitrix 6, устанавливаемой на VDS, установка LEMP не требуется!
Первоначальная настройка VDS
Обновление программного обеспечения
Начинать настройку VDS необходимо с глобального обновления. Запустить апдейт в Debian-подобных операционных системах можно следующим образом:
apt-get update apt-get upgrade
для Centos команда иная:
yum update
В процессе обновления вас спросят о том, хотите ли вы установить новые пакеты. Отвечайте утвердительно, используя клавишу Y, и подтвердите свой выбор, нажав “Enter”.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Добавление нового пользователя
Работать с сервером под учетной записью root настоятельно не рекомендуется — лучше всего создать нового пользователя и передать ему необходимые права. В Debian-подобных системах это делается командой:
adduser username
где username следует заменить на желаемое имя пользователя. После ее выполнения вас попросят задать пароль, а затем предложат заполнить дополнительные поля (делать это необязательно — их можно оставить пустыми).
При работе с Centos также используется команда:
adduser username
Однако пароль задается отдельно:
passwd username
Передача привилегий root
После создания нового пользователя ему необходимо передать права суперадминистратора, в противном случае вы не сможете полноценно настроить VDS. Делается это через добавление вновь созданной учетной записи в соответствующую группу. Для Debian-подобных:
gpasswd -a username sudo
gpasswd -a username wheel
Управление SSH
В целях безопасности необходимо проделать ряд манипуляций с конфигурационным файлом sshd_config, который, как легко догадаться, отвечает за настройку удаленного подключения к серверу по SSH. В разных дистрибутивах Линукс для редактирования используются различные утилиты, соответственно, и команды для них будут несколько различаться. В Debian-подобных применяется nano:
Как поставить программу на сервер? Круглосуточная работа программ.
nano /etc/ssh/sshd_config
Для сохранения внесенных изменений необходимо нажать комбинацию клавиш Ctrl+X, затем Y и “Enter”. Centos имеет в своем составе редактор vi:
vi /etc/ssh/sshd_config
Сохранение информации осуществляется командой :x, после чего необходимо нажать “Enter”.
В sshd_config следует запретить вход с помощью учетной записи root, заменив
PermitRootLogin yes
PermitRootLogin no
а также поменять порт SSH, используемый по умолчанию, заменив
Port 22
Port 50132
Номер порта лучше выбирать из диапазона 49152-65535 — это позволит избежать возможных конфликтов с различными службами и сервисами Линукс. После описанных манипуляций необходимо перезапустить SSH. В Debian это делается так:
service ssh restart
systemctl reload sshd
Теперь необходимо переподключиться к серверу через назначенный порт под новой учетной записью, после чего настройку VDS можно продолжать.
Установка и настройка LEMP
Большинство современных CMS написаны на языке программирования PHP. Это означает, что для размещения практически любого сайта, независимо от типа и функционала, нам понадобится LEMP. Данная аббревиатура обозначает связку современного и очень быстрого веб-сервера Nginx, интерпретатора php-fpm и системы управления базами данных MySQL. Процедура установки достаточно проста и не займет много времени.
Установка Nginx
Начнем с установки Nginx. В Debian-подобных дистрибутивах это делается одной строчкой:
sudo apt-get install nginx
после чего сервер будет автоматически запущен.
В Centos сперва необходимо добавить репозиторий EPEL:
sudo yum install epel-release
и только после этого производить установку:
sudo yum install nginx
Финальный этап — запуск Nginx:
sudo systemctl start nginx
Установка MySQL
В Debian-подобных операционных системах сервис баз данных устанавливается командой:
sudo apt-get install mysql-server mysql-client
В процессе вас попросят задать пароль администратора MySQL.
В Centos-подобных дистрибутивах вместо MySQL используется форк MariaDB, обладающий теми же функциональными возможностями. После его установки:
sudo yum install mariadb-server mariadb
сервер баз данных необходимо запустить, а также добавить в список автозагрузки:
sudo systemctl start mariadb sudo systemctl enable mariadb
Настройка MySQL
Первичная настройка сервера баз данных осуществляется с помощью специального скрипта, идущего в комплекте с основным ПО:
sudo mysql_secure_installation
После запуска вас попросят ввести пароль администратора MySQL, который мы задали на предыдущем этапе, а затем зададут ряд вопросов, отвечать на которые необходимо кнопками Y (да) и N (нет), подтверждая выбор клавишей “Enter”:
- Хотите ли вы сменить пароль? (Change the root password?) — Нет (N)
- Удалить анонимных пользователей? (Remove anonymous users?) — Да (Y)
- Запретить удаленную авторизацию с правами суперпользователя? (Disallow root login remotely?) — Да (Y)
- Удалить тестовую базу данных? (Remove test database and access to it?) — Да (Y)
- Перезагрузить таблицу привилегий? (Reload privilege tables now?) — Да (Y)
Добавление новой базы данных
Управление базами данных осуществляется через консоль MySQL. Чтобы в нее войти, необходимо ввести команду:
mysql -u root -p
после чего авторизоваться, используя пароль администратора.
Для размещения динамического сайта необходимо создать базу данных, с которой будет работать движок. Обычно для каждого проекта создается отдельная БД и отдельный пользователь, который может ей управлять. Давайте создадим базу данных sitedb, пользователя site_user, а затем передадим последнему права на управление sitedb (вы можете заменить предложенные имена на любые другие).
Делается это следующим образом:
Создаем базу данных:
CRE ATE DATABASE sitedb;
Создаем пользователя (вместо password укажите уникальный пароль)
Передаем права управления sitedb пользователю site_user:
Обновляем данные о привилегиях:
FLUSH PRIVILEGES;
По завершении всех операций выйдите из консоли MySQL:
exit
Установка PHP
Важный этап настройки VDS — установка и конфигурирование интерпретатора PHP. Команды для разных дистрибутивов Линукс отличаются. Инсталляция в Debian осуществляется так:
sudo apt-get install php5-fpm php5-mysql
В Centos — немного иначе:
sudo yum install php php-mysql php-fpm
Конфигурация PHP
Первый шаг — редактирование файла php.ini. В Debian и Ubuntu он располагается здесь:
sudo nano /etc/php5/fpm/php.ini
В Centos-подобных дистрибутивах — непосредственно в каталоге etc:
sudo vi /etc/php.ini
В обеих системах сперва необходимо раскомментировать и поменять значение в следующей строчке:
;cgi.fix_pathinfo=1
cgi.fix_pathinfo=0
Таким образом, мы закрыли важную уязвимость, с помощью которой злоумышленники могли бы получить несанкционированный доступ к сайту. На этом настройка интерпретатора на Debian завершена, осталось перезапустить PHP-процессор:
sudo service php5-fpm restart
В Centos же необходимо отредактировать и файл www.conf:
sudo vi /etc/php-fpm.d/www.conf
Здесь требуется найти строчку
listen = 127.0.0.1:9000
listen = /var/run/php-fpm/php-fpm.sock
listen.owner = nobody listen.group = nobody
user = nginx group = nginx
Далее запускаем интерпретатор, а также вручную добавляем его в автозагрузку:
sudo systemctl start php-fpm sudo systemctl enable php-fpm
Создание директории
Теперь необходимо создать каталог, в котором будут располагаться файлы вашего ресурса. В любой операционной системе Линукс это делается следующей командой:
sudo mkdir /var/www/sitename.ru/public_html
В данном примере sitename.ru необходимо заменить на доменное имя сайта. Что касается файлов CMS, их следует загрузить в папку public_html. По завершении загрузки необходимо передать права управления веб-серверу. Здесь есть различия в именах, используемых для обозначения Nginx. Для Debian-подобных дистрибутивов команда будет выглядеть так:
sudo chown -R www-data:www-data /var/www/html/*
sudo chown -R nginx:nginx /var/www/html/*
Добавление нового хоста Nginx
Последний этап настройки VDS для размещения сайта — добавление виртуального хоста Nginx. Нам достаточно отредактировать файл default. В семействе Debian это делается так:
sudo nano /etc/nginx/sites-available/default
sudo vi /etc/nginx/conf.d/default.conf
Открыв файл, удалите из него всю информацию, заменив на код, представленный ниже (вместо sitename.ru подставьте актуальное имя сайта), и сохраните результат:
server < listen 80; server_name sitename.ru; server_name_in_redirect off; access_log /var/log/nginx/sitename.access_log; error_log /var/log/nginx/sitename.error_log; root /var/www/sitename.ru/public_html; index index.php index.html index.htm default.html default.htm; location / < try_files $uri $uri/ /index.php?$args; >error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html < root /usr/share/nginx/html; >location ~ .php$ < try_files $uri =404; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; >>
Осталось перезапустить Nginx. Команда для дистрибутивов Debian:
sudo service nginx restart
sudo systemctl restart nginx
Теперь виртуальный сервер полностью готов к эксплуатации, и можно начинать работу непосредственно с веб-ресурсом. Дальнейшие шаги зависят от выбранной CMS.
Источник: timeweb.com
Как установить программу с сервера
Установка программ зачастую подразумевает под собой скачивание ее дистрибутива с какого-либо интернет-портала и последующую инсталляцию. Операционная система здесь также не исключение. Однако ее установку можно выполнить и напрямую с сервера.
Статьи по теме:
- Как установить программу с сервера
- Как установить Apache под винду
- Как обновить Adobe Reader
Вам понадобится
- — подключение к сети интернет при помощи LAN-модема.
Инструкция
Перезагрузите компьютер. Когда только появится первый экран при включении, нажмите клавишу Esc. Поставьте в списке устройств первоначальный запуск операционной системы с Lan. Там может быть прописано также название устройств, чтобы избежать ошибок, перепишите название вашего модема с диспетчера устройств в свойствах компьютера, либо посмотрите конфигурации в документах к компьютеру.
Сохраните изменения и выполните перезапуск компьютера. Когда система выдаст соответствующее сообщение, нажмите нужную клавишу для продолжения загрузки операционной системы Windows с сервера. В точности следуйте указаниям меню установки. Дождитесь окончания загрузки файлов по сети.
После перезагрузки компьютера поставьте его дальнейшую загрузку с жесткого диска. Если компьютер не начнет автоматическую установку самостоятельно. Примите лицензионное соглашение на использование программного обеспечения и нажмите кнопку «Далее».
Выберите жесткий диск, на который хотите выполнить инсталляцию операционной системы, определиться с вариантами установки – с форматированием раздела, созданием нового или просто новую установку. Однако имейте в виду, что невозможно будет выбрать пункт форматирования того раздела, на который была произведена загрузка файлов, нужных для установки.
Следуя указаниям меню программы установки, выполните инсталляцию Windows в ваш компьютер. Настройте нужные языковые параметры, укажите часовой пояс, задайте имя компьютеру и пароль администратора по собственному выбору, завершите установку путем создания учетной записи пользователя операционной системы.
Выполните активацию вашей копии операционной системы, введя нужные реквизиты в виде лицензионного ключа. Активация происходит посредством звонка в техническую поддержку Microsoft либо через интернет. Если у вас нет лицензионного ключа, приобретите его.
Источник: www.kakprosto.ru
Как запустить ChatGPT-бота на сервере? Программирование с нуля для начинающих. Python + Telebot + демон PM2
В этом уроке по программированию с нуля я покажу, как запустить на сервере Телеграм-бота, использующего API ChatGPT, и как настроить специальный сервис «демон» (daemon) для его бесперебойной работы. Урок будет полезен, если вы хотите сделать пет-проект или MVP своими руками, умеете писать Телеграм-боты на Python, но не знаете, как работать с сервером.
2439 просмотров
- Постановка задачи — зачем что-то выкладывать на сервер?
- Арендуем виртуальный выделенный сервер
- Пишем программу (Телеграм-бота с ChatGPT), которую будем запускать на сервере
- Эмулируем Linux, разбираемся в командах
- Устанавливаем на сервер Python, pip и модули
- Запускаем программу на сервере, создаем демона
Меня очень вдохновила реакция на предыдущую статью «Обучение программированию с нуля. Вы напишете MVP для стартапа на Python за 1 день. OpenAI API + Google API». Я решил поднять планку контента и добавить видео.
Бот из данного урока:
Примеры следующих тем:
- Подключаем базу данных.
- Используем GIT.
- Улучшаем код по рекомендациям профессиональных программистов.
- Доработка программы Linguo Raccoon — выбор языка, выбор количества слов в словаре, улучшение интерфейса через inline-кнопки.
- Добавляем новые тесты.
- Реализация таймера для отправки сообщений по расписанию.
- Генерация аудио и распознавание голосовых сообщений.
- Обработка word chunks и идиом.
Пишите, какая интересней, и я ее приоритизирую.
Показать ещё
19 комментариев
Написать комментарий.
Все норм, но установка npm для того чтобы запустить питонячий скрипт в режиме демона — это реально сатанизм.
Почитайте про systemctl: всего-то надо, что создать один файл /etc/systemd/system/mysuperbot и выполнить одну команду systemctl start mysuperbot
Кстати именно так запускается в режиме демона мой бот, который делает стикеры из фотографий с помощью Stable Diffusion: https://t.me/magic_sticker_bot?start=refVC
Развернуть ветку
Бот хороший, спасибо!
Развернуть ветку
В чем минусы использования pm2 для этой задачи?
А в файле systemctl что нужно прописать? Его же не просто нужно создать, его нужно заполнить. По количеству действий ваш способ будет более удобный и простой?
Развернуть ветку
Вообще, хорошая идея, спасибо.
Добавлю как альтернативный способ. Пусть люди сами решают, что удобнее.
Развернуть ветку
Файл конфигурации буквально в 7 строк, делается копипастом)
There are a number of ways you can run your program as a background service in linux such as…
Развернуть ветку
Ну вот мне самому удобней использовать pm2. Для новичков вот такая история будет казаться замороченной, имхо:
[Unit]
Description=My test service
After=multi-user.target
[Service]
Type=simple
Restart=always
ExecStart=/usr/bin/python3 /home//test.py
[Install]
WantedBy=multi-user.target
Развернуть ветку
На самом деле pm2 ведь тоже демон, и тоже скорее всего запускается через systemctl 😉
Развернуть ветку
Да, но сам набор команд для юзера (на мой взгляд) проще 🙂
Источник: vc.ru