up
ГлавнаяБлогБезопасностьЖелезоПрограммированиеАдминистрирование
BenchmarkCentOSBashHTMLSSDRAMMySQLHDDPerlPHPCPUDebianFreeBSDLinux

Популярные статьи

PHP-mail + логи

В PHP версии >=5.3 есть отличный параметр mail.log, позволяющий вести лог отправки писем: из какого скрипта, кому.
В более старых версиях PHP данного параметра нету, по этому напишем маленький скриптик на замену sendmail.

mv /usr/sbin/sendmail /usr/sbin/sendmail.real
vi /usr/sbin/sendmail

Создаем perl-скрипт:

Sunday, 17 August 2014, 19:12Прочитано 69 раз

Несколько окон в терминале

В консоли есть возможность создавать несколько независимых окон. Для этого необходимо использовать Screen — консольная утилита, предоставляющая пользователю доступ к нескольким сессиям в рамках одной сессии.
Ниже привожу несколько простых команд по использованию. Команды вводятся поочередным нажатием комбинации Ctrl+A и дополнительной клавиши.

Ctrl+A C — создание нового окна screen.
Ctrl+A N — переключение между созданными окнами.
Ctrl+A S — (в верхнем регистре) создать дополнительную область, для вывода одновременно нескольких окон.
Ctrl+A Tab — переключение между созданными областями
Сtrl+A X — закрыть текущую область (при этом окна остаются активными)
Ctrl+A Q — закрыть все области, а текущую оставить активной.
Ctrl+A D — закрытие окна screen без отсоединения (без закрытия сессий).
Ctrl+A K или exit — разлогинивание из текущего окна (или вообще выход, если окно было единственным).
Sunday, 17 August 2014, 19:08Прочитано 47 раз

Подсчет веса всех php-файлов (или других)

В консоли набираем:

find /dir -name *.php | while read file; do ls -l $file | awk '{print $5}'; done | awk 'BEGIN{sum=0}{sum+=$1}END{print sum" bytes | "sum/1024" Kbytes | "sum/1024/1024" Mbytes"}'

Где /dir директория, в которой нужно подсчитать.

Или например для файлов .gif

find /dir -name *.gif | while read file; do ls -l $file | awk '{print $5}'; done | awk 'BEGIN{sum=0}{sum+=$1}END{print sum" bytes | "sum/1024" Kbytes | "sum/1024/1024" Mbytes"}'
Sunday, 17 August 2014, 19:06Прочитано 48 раз

Цикл for в Bash

Несколько примеров использования циклов в bash:

Обхода всех файлов в каталоге:

for file in *
do
   echo $file
done

Вывод чисел от 1 до 10:

for n in {1..10}
do
   echo $n
done
Sunday, 17 August 2014, 19:04Прочитано 57 раз

Скрипт vk_video

Уважаемые клиенты, настоятельно рекомендую не обновлять ваш скрипт к версии за 29.08.2013!

Это создаст вам массу проблем:

  • скрипт не завершает корректно процессы и требует долгой времени жизни PHP-процессов, тем самым увеличивая общее количество процессов в 2-4 раза;
  • увеличение количества процессов приведет к срабатываю лимитов. Их необходимо увеличивать: как лимит на количество дочерних процессов, так и лимит на время работы процесса;
  • процессы потребляют в несколько раз больше оперативной памяти. Опять таки требуется увеличить лимит этот;
  • все эти изменения в совокупности приводят к тому что сервер использует больше ресурсов. И в случае если их недостаточно, будут ошибки.
Sunday, 17 August 2014, 18:59Прочитано 44 раза

Обновление PHP для старых версий DLE >= 9.5

Любую CMS и DLE в т.ч. необходимо держать всегда обновленной или хотя бы из последних версий. Так как довольно часто новые версии выходить не из-за дополнительных функций, а из-за найденных уязвимостей и необходимости их устранения.

Аналогично поступают и хостеры, стараясь держать актуальные версии ПО.

Но как быть, если PHP версии 5.3/5.4, а DLE староват и отказывается работать на современном ПО? Давайте решим этот вопрос. 
Основное и очень существенное отличие PHP 5.3/5.4  в том что изменена дефолтная кодировка функции htmlspecialchars из ISO-8859-1 на UTF-8. В итоге мы получаем нерабочую админку, без возможности редактировать новости. Для исправления внесите изменения в файл engine/inc/editnews.php указав кодировку ISO-8859-1, например код:

htmlspecialchars( $_REQUEST['author'] )

меняем на

htmlspecialchars( $_REQUEST['author'], ENT_NOQUOTES, 'ISO-8859-1' )

А код

htmlspecialchars( stripslashes( urldecode( $_REQUEST['search_field'] ) ), ENT_QUOTES ) )

на

htmlspecialchars( stripslashes( urldecode( $_REQUEST['search_field'] ) ), ENT_QUOTES, 'ISO-8859-1') )

Аналогично в файле engine/classes/parse.class.php

Sunday, 17 August 2014, 18:48Прочитано 42 раза

Переполнение в _php_stream_scandir

Unspecified vulnerability in the _php_stream_scandir function in the stream implementation in PHP before 5.3.15 and 5.4.x before 5.4.5 has unknown impact and remote attack vectors, related to an "overflow."

Sunday, 17 August 2014, 18:41Прочитано 44 раза

Обход open_basedir в функционале SQLite

The SQLite functionality in PHP before 5.3.15 allows remote attackers to bypass the open_basedir protection mechanism via unspecified vectors.

Sunday, 17 August 2014, 18:41Прочитано 43 раза

Любителям PHP-PDO посвящается

pdo_sql_parser.re in the PDO extension in PHP before 5.3.14 and 5.4.x before 5.4.4 does not properly determine the end of the query string during parsing of prepared statements, which allows remote attackers to cause a denial of service (out-of-bounds read and application crash) via a crafted parameter value.

И мой короткий ломаный перевод:
pdo_sql_parser.re в расширении PDO в PHP до версии 5.3.14 и в 5.4.x до версии 5.4.4 не правильно определить конец строки запроса, что позволяет удаленному злоумышленнику вызвать отказ в обслуживании (выходить за пределы поля чтения и падение программы).

Sunday, 17 August 2014, 18:40Прочитано 44 раза

Как узнать текущие настройки php

Для того, что бы посмотреть текущие настройки вашего аккаунта вам необходимо создать в корне вашего сайта файл, к примеру phpinfo.php и в нем прописать:

<?php
phpinfo():
?>

Затем открыть в браузере http://ваш_сайт.ru/phpinfo.php

Sunday, 17 August 2014, 18:37Прочитано 40 раз

Страницы: 1 ... 15 16 [17] 18

Чаще всего ищут

Статистика блога
Статтей: 176
Безопасность: 9
Железо: 19
Программирование: 14
Администрирование: 133