Установить или обновить PHP 7 в CentOS

Дата: 06.08.2018Метки:

Небольшая заметка на тему, как установить или обновить PHP 7.0, PHP 7.1, PHP 7.2 в CentOS 7. Действия выполнялись на сервере с недавно установленной панелью Vesta. Если хотите сразу установить панель с PHP 7, необходимо выполнить указанные действия до установки панели.

Для начала подключаем репозиторий:

wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm
rpm -Uvh remi-release-7.rpm epel-release-latest-7.noarch.rpm

Далее устанавливаем yum-utils и выбираем версию PHP (remi-php70, remi-php71, remi-php72) для установки. Я устанавливаю PHP 7.2:

yum install yum-utils
yum-config-manager --enable remi-php72

Если PHP не был установлен в системе ранее, производим установку. Или устанавливаем панель Vesta.

Если PHP был ранее установлен, запускаем обновление:

yum update -y

Если вы ранее уже выполняли обновление таким способом. То предварительно нужно выполнить одну из команд ниже:

yum-config-manager --disable remi-php56
yum-config-manager --disable remi-php70
yum-config-manager --disable remi-php71

Установка ionCube Loader в CentOS 7

Дата: 04.08.2018Метки:

Ранее уже был мануал по установке ionCube в Ubuntu 16.04.

Скачиваем последнюю версию Ioncube Loader для системы 64-bit:

cd /tmp
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

Или Ioncube Loader для системы 32-bit:

cd /tmp
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz

Распаковываем:

tar xfz ioncube_loaders_lin_x86-64.tar.gz

Что бы определить расположение файла php.ini и версию PHP создайте файл info.php в корневом каталоге сайта:

<?php
phpinfo();
?>

Выясним расположение каталога модулей PHP:

# php -i |grep extension_dir
extension_dir => /usr/lib64/php/modules => /usr/lib64/php/modules

Копируем модуль Ioncube Loader в каталог с расширениями:

cd /tmp/ioncube
cp ioncube_loader_lin_5.6.so /usr/lib64/php/modules/ioncube_loader_lin_5.6.so

Добавим загрузку модуля в файл php.ini. Откройте файл:

nano /etc/php.ini

И добавьте в его начало следующую строку:

zend_extension = "/usr/lib64/php/modules/ioncube_loader_lin_5.6.so"

Следует отметить, что указанный мной путь выше, может отличаться от вашего расположение файла.

Перезапустим php-fpm или apache:

systemctl restart httpd
service php-fpm restart

Если все сделали правильно, info.php выдаст следующий результат:

Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
with the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured) v6.0.8, Copyright (c) 2002-2015, by ionCube Ltd.

Let’s Encrypt DNS problem: NXDOMAIN looking up

Дата: 31.07.2018Метки:

Ошибка по невнимательности при настройке Let’s Encrypt. Были созданы сертификаты на несуществующие домены. Далее в конфигурации Nginx домен был изменен и пересозданы сертификаты, но настройки Let’s Encrypt для продления сертификатов остались.

По этой причине при выполнении процесса обновления сертификатов постоянно сыпались ошибки. Для исправления нужно удалить конфиги для несуществующих доменов в каталоге /etc/letsencrypt/renewal/

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Cert not yet due for renewal
Cert not yet due for renewal
Cert not yet due for renewal
Cert not yet due for renewal
Cert not yet due for renewal
Cert is due for renewal, auto-renewing...
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
Renewing an existing certificate
Performing the following challenges:
http-01 challenge for a.codebeer.ru
Waiting for verification...
Cleaning up challenges
Attempting to renew cert from /etc/letsencrypt/renewal/a.codebeer.ru.conf produced an unexpected error: Failed authorization procedure. a.codebeer.ru (http-01): urn:acme:error:dns :: DNS problem: NXDOMAIN looking up A for a.codebeer.ru. Skipping.
Cert is due for renewal, auto-renewing...
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
Renewing an existing certificate
Performing the following challenges:
http-01 challenge for b.codebeer.ru
Waiting for verification...
Cleaning up challenges
Attempting to renew cert from /etc/letsencrypt/renewal/b.codebeer.ru.conf produced an unexpected error: Failed authorization procedure. b.codebeer.ru (http-01): urn:acme:error:dns :: DNS problem: NXDOMAIN looking up A for b.codebeer.ru. Skipping.
Cert not yet due for renewal
Cert is due for renewal, auto-renewing...
Starting new HTTPS connection (1): acme-v01.api.letsencrypt.org
Renewing an existing certificate
Performing the following challenges:
http-01 challenge for c.codebeer.ru
Waiting for verification...
Cleaning up challenges
Attempting to renew cert from /etc/letsencrypt/renewal/c.codebeer.ru.conf produced an unexpected error: Failed authorization procedure. c.codebeer.ru (http-01): urn:acme:error:dns :: DNS problem: NXDOMAIN looking up A for c.codebeer.ru. Skipping.
Cert not yet due for renewal
3 renew failure(s), 0 parse failure(s)

Debian 9 прописать статический IP

Дата: 12.06.2018Метки:

Недавно меня спросили про то, как прописать статический ip-адрес в Debian 9. По сути ничего не изменилось, кроме того, что после установки Debian 9 с DHCP файл interfaces отсутствует.

Создаем файл настроек сетевого интерфейса:

nano /etc/network/interfaces

Добавляем в содержимое файла:

source /etc/network/interfaces.d/*

auto lo
iface lo inet loopback

allow-hotplug eno1
iface eno1 inet static
      address 192.168.1.2
      netmask 255.255.255.0
      gateway 192.168.1.1

Если необходимо прописать дополнительный адрес, добавляем в конец файла следующие строки:

auto eno1:0
iface eno1:0 inet static
      address 192.168.2.2
      netmask 255.255.255.255

Применяем сетевые настройки:

service networking restart

Прогресс выполнения команды dd

Дата: 09.06.2018Метки: ,

Запустил бэкап диска с передачей данных на другой сервер:

dd if=/dev/sda | gzip -3 - | ssh root@1.1.1.1 dd of=/storage/image.gz

Главная проблема данного метода состоит в том, что отсутствует информация о прогрессе выполнения команды dd. Посмотреть на каком этапе находится процесс создания бэкапа можно следующим образом.

Открываем еще одну консоль и в ней выполняем команду:

pkill -USR1 dd

Возвращаемся в консоль, где запущен команда dd и видим примерно следующий результат:

46581824+0 records in
46581823+0 records out
23849893376 bytes (24 GB) copied, 650.728 s, 36.7 MB/s
52076416+0 records in
52076415+0 records out
26663124480 bytes (27 GB) copied, 736.246 s, 36.2 MB/s
232366273+0 records in
232366272+0 records out
118971531264 bytes (119 GB) copied, 1193.34 s, 99.7 MB/s
234441648+0 records in
234441648+0 records out
120034123776 bytes (120 GB) copied, 1198.1 s, 100 MB/s

Что бы каждый раз не вбивать команду в консоли, можно сделать так:

watch -n 10 pkill -USR1 dd

Обновить лицензию ISPmanager 5

Закончился срок действия лицензии ISPmanager 5, но после продления лицензия не обновлялась через web-интерфейс панели.

Для принудительного обновления лицензии в ISPmanager 5 через консоль:

rm /usr/local/mgr5/etc/ispmgr.lic
/usr/local/mgr5/sbin/licctl fetch ispmgr

Монтируем WebDav в Ubuntu

Понадобилось монтировать скриптом WebDav для синхронизации двух хранилищ. Связи с чем не буду рассматривать варианты автоматического монтирования и авторизации.
Устанавливаем клиент WebDav:

apt-get install davfs2

Далее создаем каталог и запускаем команду для монтирования WebDav:

mkdir /dav
mount -t davfs -o noexec https://nextcloud.example.com/remote.php/webdav/ /dav/

This could be due to CredSSP encryption oracle remediation

Дата: 16.05.2018Метки:

После недавнего обновления Windows 10 при подключении к VPS по RDP получил вот такую ошибку:

An authentication error has occurred.
The function requested is not supported
Remote computer:
This could be due to CredSSP encryption oracle remediation.

На русском языке это звучит следующим образом:

Подключение к удаленному рабочему столу Произошла ошибка при проверке подлинности.
Указанная функция не поддерживается
Удаленный компьютер: Причиной ошибки может быть исправление шифрования CredSSP.

Данная ошибка появилось после установки обновлений в начале мая. И она связана с желанием Microsoft принудительно заставить пользователей установить на клиентской или серверной стороне обновления устраняющие уязвимость CVE-2018-0886.

Следует отметить, что данная уязвимость достаточно серьезная. Используя ее злоумышленник может выполнить удалённый запуск произвольного кода на уязвимой системе, так как CredSSP (Credential Security Support Provider) допускал произвольные команды при попытках авторизации к удалённому рабочему столу.

Отключать уведомления различными способами я не рекомендую. Единственный правильный вариант решения проблемы — установить обновление CVE-2018-0886 на стороне сервера, ну или персонального компьютера к которому необходимо подключиться через RDP удаленный рабочий стол.

Майнинг эфира на NVIDIA 1080 и 1080 Ti

Дата: 16.05.2018

Друзья, произошло знаменательное событие в сфере майнинга на картах NVIDIA. Как известно, майнинг эфира был долгое время не рентабельным на топовых картах NVIDIA 1080 и 1080 Ti. Это связано с тем, что данные карты выдавали крайне низкий хешрейт по отношению к их цене.

На днях узнал о появлении в свободном доступе программы, которая на лету меняет тайминги памяти данных видеокарт. По информации из сети, после разгона удается выжать до 40 и 55 мегахеша на NVIDIA 1080 и 1080 Ti соответственно. На своих картах NVIDIA 1080 с даунвольтом и разгоном мне удалось выжать по 38 мегахеша со всех карт.

Теперь рассмотрим экономическую целесообразность майнинга эфира на видеокартах NVIDIA 1080 и 1080 Ti. Не буду ссылаться на калькуляторы, расскажу как есть со своего опыта. Раньше у меня работали данные карты в режиме автоматического переключения на алгоритмах Equihash, NeoScrypt, Skein. После перехода на майнинг эфира доход вырос на 15-25 процентов.

Данную программу или как ее еще называют «таблетку» можно скачать с github.com
Тема от разработчиков на форуме bitcointalk.org

Просто скачиваете и запускаете программу. Не важно запущена программа до или после майнера. Важно чтобы она все время была запущена, в противном случае после закрытия тайминги возвращаются на прежнее значение.

BlueStacks сервера

Кому необходим сервер для BlueStacks может сделать заказ через меня PowerVPS.ru, стоимость аренды сервера 35$. Регистрируетесь в биллинге и делаете заказ в меню Выделенные серверы. Конфигурация сервер Core i5-2300, 16 GB RAM, 2 TB HDD. Сервер идет с установленной системой Windows Server 2016.

Сначала я пытался запустить BlueStacks под VPS, но данная попытка была неудачной. Для запуска BlueStacks необходимо наличие в системе графического адаптера. В связи с чем, было принято решение рассмотреть возможность запуска BlueStacks на выделенном сервере.

Для начала я протестировал сервера под BlueStacks с видеокартой NVIDIA начального уровня. Естественно эмулятор успешно установился и заработал. Однако у данного варианта есть свои недостатки. Сервера с видеокартами эта специфическая ниша на рынке.

Тогда я стал эксперементировать с запуском BlueStacks на сервере с встроенным в процессор графическим чипом. Для начала взял процессор Core i7-4790K. Эмулятор успешно был установлен и работал в системе.

Но мне и этого оказалось мало. Хотелось подобрать такой сервер, который был бы доступен каждому. В качестве бюджетного варианта был выбран выделенный Core i5-2300, 16 GB RAM, 2 TB HDD. На данном сервер BlueStacks был успешно запущен и проверен в работе.