4
Сентябрь
2015
Нередко, в движках используют в скриптах подключаемые файлы с расширением отличным от php, что имхо очень неправильно и опасно.
Например в одном из движков (не буду тыкать пальцем каком именно) в темлейте подключают файлы с расширением .tpl которые не являясь активкой по умолчанию (интерпретатор настроен по умолчанию как правило на htm html php php5 и подобные), которые спокойно открываются в браузере в исходных кодах! а там уже есть чего поанализировать «плохим парням» 🙂
Другой пример — служебные файлы .git, старые резервные копии .bak .old … всё это часто забывают запретить в настройках аппача или nginx-а.
Соответственно, добавляем в nginx следующие строки, и спим спокойно
рубрики: security, Администрирование |
3
Сентябрь
2015
Давно была идейка автоматизации использования своих ресурсов (старых аптек) в качестве доноров для продвижения какого либо нового проекта (новой аптеки).
В ручную всё понятно — наметил страничку для продвижения, придумал анкор — ссылка готова, поставил на страничке сайта донора.
Как бы хотелось:
* есть база страниц, на каждую необходимо сгенерировать несколько разных анкоров, желательно окруженных разным тематическим текстом -> генерируем кучу разных ссылок, используя ранее созданный скриптик multiplier.php (механизм работы описан ранее)
* далее на сайте доноре, где нужно будет разместить ссылочку в темлейте, реализуем через клиентский api запрос обращение за базой сгенерированных ссылок в предыдущем пункте, выбираем псевдослучайный в зависимости от страницы (на каждой конкретной странице сайта донора будет случайная ссылка из базы, НО всегда одна и та же — «мигание» ссылок будет исключено
В работе можно посмотреть на моём старенькой аптеке ycan.ru (ссылка в левом сайдбаре) и довольно новой, но почему-то никак в индекс не залезающей, аптеке rutab.ru (ссылка внизу) — проставлены бэклинки на свежую разработку men-aptekar.ru Что важно: на каждой! странице сайтов доноров ссылки с разным окружающим текстом, анкором и самой ссылкой! (в принципе продвигать можно разные сайты — просто создать несколько баз ссылок и перемешать в одном месте, всё равно api запрос будет брать случайную).
На подобную перелинковку долго не решался, т.к. по бэкам «палится» вся сетка, и соответственно в бан уедут все дружно 🙁
Но как говориться «лучше сделать и пожалеть, чем потом жалеть о несделанном» — может и «стрельнет» положительно в плане поискового продвижения (внешние бэклинки ещё вроде не отменили).
Перелинковка однонаправленная — не кольцевая, поэтому имхо есть шанс на положительный эффект, плюс к тому ссылки многословны и не однотипны — склейки быть не должно.
Через месяцок, другой будет видно…
В любом случае api реализация, общения сайтов доноров с центром управления ссылками ИМХО может ещё пригодиться на каких то других проектах …
рубрики: SEO |
15
Июль
2015
Сегодня с ужасом обнаружил, что на одном из моих серверов iptables пустая (был уверен, что настроено).
Соответственно, рецепт по переносу настроек с одного сервера на другой прост:
1. service iptables save на тот откуда тащим
2. перетаскиваем /etc/sysconfig/iptables
3. service iptables reload на том куда перетащили
P.S.
Отличная статейка по iptables
рубрики: security, Администрирование, Полезности |
10
Июль
2015
Вчера ломанули группу сайтов тупо по FTP — законнектились и сделали инжекты во все скрипты php и в html тоже …
Благо сработал скрипт сравнения версий файлов — вовремя отреагировал, всё восстановил.
Причём подозреваю в этом себя т.к. ломанули сайты разные и ко всем у меня был прописан доступ в FAR-е 🙁 (хотя не факт)
Итак:
1. Не храним доступ в открытом виде, не ленимся вводить пароль (очень для меня трудно-исполнимый пункт)
2. Меняем стандартный порт доступа FTP на нестандартный (в конфиге сервера listen).
3. Ограничиваем доступ FTP по IP адресу (заливали файло в левых IP) — в моём случае VSFTPD не позволяет прописывать доступ по IP, поэтому сделаем боле правильно — запретим/разрешим доступ на уровне фаервола iptables
сначала посмотрим текущие
iptables -L INPUT —line-numbers
находим и убираем старое правило
iptables -D INPUT номер
добавляем новое iptables -A INPUT -p tcp -s 192.168.0.0/24 —dport 22 -j ACCEPT
(IP и маску пишем свои — откуда будем цепляться)
service iptables save
service iptables restart
у меня не сработало, т.к. правило добавилось в конец, после запрета всех
пришлось поправить порядок вручную
/etc/sysconfig/itrables.save
service iptables restart
рубрики: security, Администрирование, Полезности |
8
Июль
2015
Собственно, в логах увидел приличный перебор паролей по 10000 порту (webmin).
Решил поменять порт доступа для пущей секъюрности.
Лезем в настройки /etc/webmin/miniserv.conf
правим две строчки port=10000 и listen=10000
Перезагружаемся /etc/init.d/webmin restart
Разрешаем новый порт
su
iptables -I INPUT -p tcp —dport НОВЫЙ_ПОРТ -m state —state NEW -j ACCEPT
service iptables save
service iptables restart
рубрики: security, Администрирование, Полезности |
7
Июль
2015
В продолжение предыдущего поста по оптимизации изображений …
Соответственно, если в коде имеем конструкцию img scr с указанием width — тут есть смысл проверить соответствие width и реального размера картинки, если реальный больше — нужно уменьшить и использовать уменьшенное!
Погуглив, сначала нашел такую библиотеку но прозрачный png она меняла на чёрный, а вот эта функция отработала корректно!
Результат можно глянуть, например на препарате Сиалис онлайн аптеки men-aptekar.ru
При переключении по тумбам раньше Furefox почему то косячил 🙁 — преобразованная браузером картинка отображалась безобразно
теперь ОК
ну и не забываем — чем меньше изображения, тем быстрее откроется страничка!
ОТБОЙ!
функция сохраняет на самом деле в jpg и что интересно — уменьшенная сохранённая jpg получается БОЛЬШЕ чем исходная оптимизированная png!
было png — нужно только уменьшить и сохранить так же ! копаем далее
рубрики: SEO, Полезности, Программирование, Сайтостроение |
26
Июнь
2015
Итак, как следствие предыдущего поста — задача оптимизации png изображений (в моём случае).
Всё действо будем делать прямо на сервере, в моём случае под управлением centos.
1. Ставим optipng — yum install optipng
2. Пишем небольшой скрипт, перебирающий все картинки и запускающий optipng с максимальным сжатием
for i in find -name '*.png'
; do
optipng -o7 $i
done
3. Запускаем его 🙂
вуаля — картинки оптимизированы
но есть одно небольшое (а может и большое) НО! — Гугл анализатор предлагает ещё изменить размер изображений!
Смотрим код — по факту в тегах либо css у многих изображений заданы параметры отображения width либо height — то есть изображения выводятся уменьшенными, а загружаются то целиком!
Соответственно — смысла в таком действии нет никакого, нужно уменьшать!
Но тут, к сожалению, как автоматизировать сей процесс я не придумал 🙁
рубрики: SEO, Администрирование, Полезности, Сайтостроение |
26
Июнь
2015
Открыл для себя PageSpeed Insights
Анализ страницы — рекомендации разработчику.
Полезная ИМХО штуковина!
Отдельно спасибо AVK за анализ интернет аптеки на форуме sbup.com
Нужно будет список подобных полезных инструментов составить и на отдельную страничку закрепить (задачка на будущее т.к. пока маловато будет).
рубрики: Сайтостроение |
24
Июнь
2015
Так же — команда из ряда «полезностей» — мне нужна для разбития mysql файла со всеми базами по базам
csplit file ‘/CREATE DATABASE/’ {N}
где N количество повторов
рубрики: Администрирование, Полезности, Программирование |
24
Июнь
2015
Мини-пост (информация для себя, чтоб не потерялась)
Поиск и замена строки в файле file
sed -i "s/строка/новая строка/g" file
рубрики: Администрирование, Полезности, Программирование |