Обновление Fedora 13 до Fedora 14 и возможные проблемы

Недавно пришлось устанавливать Fedora 13 на VPS. Вы наверное спросите почему именно 13, ведь уже давно есть 14, а через месяц должна выйти Fedora 15. Но увы, некоторые хостеры на свои сервера предоставляют пока только Fedora 13. CentOS нам не полюбился, поэтому решено установить Fedora 13 и обновить до Fedora 14. Конечно первым делом нашлись мануалы в сети, внимательно прочитались, собственно там и читать особо нечего, ну и приступили к делу. 1 2 3 4 5 6 yum update rpm yum -y update yum clean all reboot yum install preupgrade preupgrade-cli Нам показывают следующее: 1 2 3 4 5 6 7 8 9 10 11 # preupgrade-cli Loaded plugins: blacklist, whiteout No plugin match for: rpm-warm-cache No plugin match for: remove-with-leaves No plugin match for: auto-update-debuginfo No plugin match for: refresh-packagekit No plugin match for: presto please give a release to try to pre-upgrade to valid entries include: "Fedora 15 (Lovelock)" "Fedora 14 (Laughlin)" Обновлять до 15 версии мы пока не хотим, ведь она официально ещё не выпущена, а 14 попытаемся поставить. ...

13 квітня 2016 · 3 хвилин · 489 слів · dimetrius

Обновление драйвера Wi-Fi на HP hp250 с установленной Ubuntu 14.04

Возникла ситуация что на ноутбуке HP hp250 очень часто обрывалось Wi-Fi соединение, скорость подключения была низкой. ОС стояла Ubuntu 14.04. В общем всё сводится к паре строк… Скачиваем драйвер 1 2 3 tar -xvf rt3290sta-2.6.0.0.dkms.tar -C /usr/src/ sudo dkms install -m rt3290sta -v 2.6.0.0 --force reboot Может пригодиться 1 iwconfig Оригинал: 1 2 3 4 5 Here's a DKMS package containing patched proprietary driver for RT3290, tested and working with Ubuntu 14.04 LTS on kernel 3.13.0-24: Install: -------- 1. Extract rt3290sta-2.6.0.0 directory into /usr/src 2. Run sudo dkms install -m rt3290sta -v 2.6.0.0 --force 3. Reboot Remove: ------------- If this bug is fixed in rt2800pci (highly unlikely) 1. Run sudo dkms remove rt3290sta/2.6.0.0 --all 2. Reboot https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1049466/comments/177

13 квітня 2016 · 1 хвилина · 117 слів · dimetrius

Объединение конфига и ключей OpenVPN в один файл

Удобно же хранить вместо трёх файлов один, вот и я искал как объединить ключи с файлом конфигурации. В общем всё очень просто. Вместо строк 1 2 3 ca ca.crt cert user1.crt key user1.key вставляем следующую конструкцию… 1 2 3 4 5 6 7 8 9 <ca> # содержимое сертификата ca.crt </ca> <cert> # содержимое user1.crt </cert> <key> # содержимое user1.key </key> Ну и пример: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 client dev tap proto tcp remote 78.22.144.34 1194 resolv-retry infinite nobind persist-key persist-tun comp-lzo ns-cert-type server <ca> -----BEGIN CERTIFICATE----- MIIB1jCCAT+gAwIBAgIEAmLSTjANBgkqhkiG9w0BAQUFADAVMRMwEQYDVQQDEwpP cGVuVlBOIENBMB4XDTEzMDExNzAyMTExMloXDTIzMDEyMjAyMTExMlowKDEmMCQG A1UEAxQdZnJyaWN0aW9uQGdtYWlsLmNvbV9BVVRPTE9HSU4wgZ8wDQYJKoZIhvcN AQEBBQADgY0AMIGJAoGBALVEXIZYYu1Inmejuo4Si6Eo5AguTX5sg1pGbLkJSTR4 BXQsy6ocUnZ9py8htYkipkUUhjY7zDu+wJlUtWnVCwCYtewYfEc/+azH7+7eU6ue T2K2IKdik1KWhdtNbaNphVvSlgdyKiuZDTCedptgWyiL50N7FMcUUMjjXYh/hftB AgMBAAGjIDAeMAkGA1UdEwQCMAAwEQYJYIZIAYb4QgEBBAQDAgeAMA0GCSqGSIb3 DQEBBQUAA4GBABhVzSYXHlQEPNaKGmx9hMwwnNKcHgD9cCmC9lX/KR2Y+vT/QGxK 7sYlJInb/xmpa5TUQYc1nzDs9JBps1mCtZbYNNDpYnKINAKSDsM+KOQaSYQ2FhHk bmBZk/K96P7VntzYI5S02+hOWnvjq5Wk4gOt1+L18+R/XujuxGbwnHW2 -----END CERTIFICATE----- </ca> <cert> -----BEGIN CERTIFICATE----- MIIB1jCCAT+gAwIBAgIEAmLSTjANBgkqhkiG9w0BAQUFADAVMRMwEQYDVQQDEwpP cGVuVlBOIENBMB4XDTEzMDExNzAyMTExMloXDTIzMDEyMjAyMTExMlowKDEmMCQG A1UEAxQdZnJyaWN0aW9uQGdtYWlsLmNvbV9BVVRPTE9HSU4wgZ8wDQYJKoZIhvcN AQEBBQADgY0AMIGJAoGBALVEXIZYYu1Inmejuo4Si6Eo5AguTX5sg1pGbLkJSTR4 BXQsy6ocUnZ9py8htYkipkUUhjY7zDu+wJlUtWnVCwCYtewYfEc/+azH7+7eU6ue T2K2IKdik1KWhdtNbaNphVvSlgdyKiuZDTCedptgWyiL50N7FMcUUMjjXYh/hftB AgMBAAGjIDAeMAkGA1UdEwQCMAAwEQYJYIZIAYb4QgEBBAQDAgeAMA0GCSqGSIb3 DQEBBQUAA4GBABhVzSYXHlQEPNaKGmx9hMwwnNKcHgD9cCmC9lX/KR2Y+vT/QGxK 7sYlJInb/xmpa5TUQYc1nzDs9JBps1mCtZbYNNDpYnKINAKSDsM+KOQaSYQ2FhHk bmBZk/K96P7VntzYI5S02+hOWnvjq5Wk4gOt1+L18+R/XujuxGbwnHW2 -----END CERTIFICATE----- </cert> <key> -----BEGIN PRIVATE KEY----- MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBALVEXIZYYu1Inmej uo4Si6Eo5AguTX5sg1pGbLkJSTR4BXQsy6ocUnZ9py8htYkipkUUhjY7zDu+wJlU tWnVCwCYtewYfEc/+azH7+7eU6ueT2K2IKdik1KWhdtNbaNphVvSlgdyKiuZDTCe dptgWyiL50N7FMcUUMjjXYh/hftBAgMBAAECgYEAsNjgOEYVRhEaUlzfzmpzhakC SKT8AALYaAPbYO+ZVzJdh8mIbg+xuF7A9G+7z+5ZL35lrpXKnONuvmlxkK5ESwvV Q7EOQYCZCqa8xf3li3GUBLwcwXKtOUr3AYXhdbOh2viQdisD4Ky7H6/Nd3yMc3bu R4pErmWeHei+l6dIwAECQQDqljNxi9babmHiei6lHaznCMg5+jfAyDXgHvO/afFr 1bDQVDTDK+64kax4E9pvDZC6B/HGse9hOUGWXTjb0WZBAkEAxdAw/14iJIUcE5sz HDy2R0RmbUQYFjrNgBCi5tnmr1Ay1zHAs1VEF+Rg5IOtCBO50I9jm4WCSwCtN6zF FoFVAQJAUGfBJDcZIm9ZL6ZPXJrqS5oP/wdLmtFE3hfd1gr7C8oHu7BREWB6h1qu 8c1kPlI4+/qDHWaZtQpJ977mIToJwQJAMcgUHKAm/YPWLgT31tpckRDgqgzh9u4z e1A0ft5FlMcdFFT8BuWlblHWJIwSxp6YO6lqSuBNiuyPqxw6uVAxAQJAWGxOgn2I fGkWLLw4WMpkFHmwDVTQVwhTpmMP8rWGYEdYX+k9HeOJyVMrJKg2ZPXOPtybrw8T PUZE7FgzVNxypQ== -----END PRIVATE KEY----- </key>

13 квітня 2016 · 1 хвилина · 156 слів · dimetrius

Ограничение доступа средствами Nginx

Небольшая заметка о том, как средствами Nginx закрыть доступ к файлам/папке по паролю. В nginx это решение не менее элегантно, чем в apache, а может и еще лучше, кому как нравится. В конфигурационном файле, в папке (локейшене), которую хотим закрыть надо только указать файл, где хранятся пароли. Вот два примера для закрытия папки с файлами: 1 2 3 4 5 6 7 8 location ^~ /files/ { root /path/to/server; autoindex on; autoindex_exact_size off; auth_basic "Hello, please login"; auth_basic_user_file /usr/nginx/passwords; access_log /usr/nginx/logs/files.log download; } и админовской части c дополнительным ограничением по IP: 1 2 3 4 5 6 7 8 9 10 location ^~ /admin/ { fastcgi_pass unix:/home/project/server.sock; include conf/fastcgi.conf; allow 11.11.0.0/16; allow 22.22.22.22; deny all; auth_basic "Hello, Admin, please login"; auth_basic_user_file /usr/nginx/adminpassword; access_log /usr/nginx/logs/admin.log main; } Добавить пользователя можно с помощью стандартной утилиты от apache: 1 htpasswd -b passwords NewUser NewPassword В файле запись с зашифрованным паролем имеет вид: 1 NewUser:P47ghZ4kloG78: Your Can Comment Here Защиту от перебора паролей можно организовать одновременно двумя методами, основанными на использовании iptables: Блокирование IP на время, если количество запросов в секунду превышает какое-либо разумное количество Вести лог неудачных попыток подбора пароля и скриптом раз в минуту проверять лог и заносить IP адреса в iptables Для первого варианта достаточно создать правила: ...

13 квітня 2016 · 2 хвилин · 359 слів · dimetrius

Переименование сетевого интерфейса в Linux - eth0, eth1, eth2, wlan0, wlan1

В основном после смены материнской платы, сетевого контроллера, шасси меняются MAC адреса сетевых карт, в следствии чего они считаются новыми сетевыми картами и им назначаются следующие имена. Например был у нас в системе eth0, заменили сетевую карту и получили отсутствующий eth0, зато присутствующий eth1, на котором в своё время сеть не настроена. Так вот есть в linux файл, в котором прописаны эти названия. Открываем его для редактирования /etc/udev/rules.d/persistent-net.rules или, если ubuntu /etc/udev/rules.d/70-persistent-net.rules После открытия видно что привязка осуществляется к MAC адресу. Изменяем eth1 на eth0 и обратно, или вообще удаляем отсутствующий адаптер. Сохраняем, перезагружаемся, или перезапускаем сеть. Ещё MAC адрес может быть прописан в настройках сети, часто такое встречается в CentOS.

13 квітня 2016 · 1 хвилина · 111 слів · dimetrius

Подборка правил iptables для web сервера

Решил запомнить для себя те правила, которые обычно ищу… Для защиты ssh не обязательно ставить fail2ban, Или что-то подобное. Они конечно позволяют настраивать баны более куда более гибко, но сегодня речь о другом способе. 1 2 3 4 5 6 7 8 9 10 11 12 iptables -N ssh_brute_check # Создаем цепочку для проверки попыток соединений на защищаемый порт # Если за последние 10 минут (600 секунд) с одного адреса было 3 или более НОВЫХ соединений — блокируем этот адрес # (не забывайте что за одно соединение у клиента есть несколько попыток авторизации на ssh) iptables -A ssh_brute_check -m recent --update --seconds 600 --hitcount 3 -j DROP # В противном случае — разрешаем, и при этом заносим в список iptables -A ssh_brute_check -m recent --set -j ACCEPT iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT # Разрешаем пакеты по установленным соединениям # Все попытки открыть новое соединение по SSH направляем на проверку iptables -A INPUT -m conntrack --ctstate NEW -p tcp --dport 22 -j ssh_brute_check # Здесь можно разрешать те порты, для которых такая проверка не нужна. Например, HTTP iptables -A INPUT -m conntrack --ctstate NEW -p tcp --dport 80 -j ACCEPT iptables -P INPUT DROP # Что не разрешено — то запрещено

13 квітня 2016 · 1 хвилина · 204 слів · dimetrius

Получение списка всех виртуальных хостов, определенных во всех файлах конфигурации Apache

Вы когда-нибудь искали, где определён виртуальный хост сайта в файлах конфигурации apache? Существует удобная опция, в виде скрипта apache2ctl, который может помочь в этом вопросе. Если Вы наберёте команду: 1 apache2ctl -S в командной строке, Вы получите список всех виртуальных хостов и серверов по умолчанию, включая номер строки, где они определены. Например: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 # apache2ctl -S VirtualHost configuration: wildcard NameVirtualHosts and _default_ servers: *:8080 is a NameVirtualHost default server ispconfig.local (/etc/apache2/sites-enabled/000-ispconfig.vhost:10) port 8080 namevhost ispconfig.local (/etc/apache2/sites-enabled/000-ispconfig.vhost:10) *:8081 is a NameVirtualHost default server ispconfig.local (/etc/apache2/sites-enabled/000-apps.vhost:10) port 8081 namevhost ispconfig.local (/etc/apache2/sites-enabled/000-apps.vhost:10) *:80 is a NameVirtualHost default server ispconfig.local (/etc/apache2/sites-enabled/000-default:1) port 80 namevhost ispconfig.local (/etc/apache2/sites-enabled/000-default:1) port 80 namevhost example.com (/etc/apache2/sites-enabled/example.com.vhost:7) Syntax OK Источник КОМТЕТ

13 квітня 2016 · 1 хвилина · 124 слів · dimetrius

Понижение версии php 5.5.x до 5.4.х, 5.3.х на Debian, Ubuntu

Предлагаю компилировать из исходников версии 5.3.29 интерпретатор PHP, в Ubuntu 14.04. Подготовка 1 2 3 apt-get update apt-get install build-essential openssl libssl-dev openssl-blacklist openssl-blacklist-extra bison autoconf automake libtool re2c flex apache-prefork-dev apt-get install libxml2-dev libssl-dev libbz2-dev libcurl3-dev libdb5.1-dev libjpeg-dev libpng-dev libXpm-dev libfreetype6-dev libt1-dev libgmp3-dev libc-client-dev libldap2-dev libmcrypt-dev libmhash-dev freetds-dev libz-dev libmysqlclient15-dev ncurses-dev libpcre3-dev unixODBC-dev libsqlite-dev libaspell-dev libreadline6-dev librecode-dev libsnmp-dev libtidy-dev libxslt-dev libt1-dev Вычистим наш текущий php, в любом случае если что-то не получится мы без проблем сможем его установить заново. Итак удаляем текущую версию PHP: 1 2 3 apt-get remove php5-gd php5-curl php5-common apt-get remove --purge php5* apt-get autoremove После чего пошагово выполняем следующие команды в терминале: 1 2 3 4 5 6 7 sudo -i wget http://in1.php.net/distributions/php-5.3.29.tar.bz2 tar -xvf php-5.3.29.tar.bz2 cd php-5.3.29 ./configure make make install Вместо строки ./configure удобнее сделать следующее: #vim php53.sh Вставим в него строки: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ./configure --with-config-file-path=/etc/php5/apache2 \ -with-pear=/usr/share/php \ -with-bz2=/usr \ -with-curl=/usr \ -with-gd \ -enable-calendar \ -enable-mbstring \ -enable-bcmath \ -enable-sockets \ -enable-zip \ -with-libxml-dir=/usr \ -with-mysqli \ -with-mysql \ -with-openssl\ -with-regex=php \ -with-zlib \ -with-apxs2 Сохраним и выполним #sh php53.sh ...

13 квітня 2016 · 2 хвилин · 285 слів · dimetrius

Почтовые подписи DKIM в amavisd-new и ISPConfig 3

DKIM является системой для проверки отправителя и целостности сообщений. ISPConfig 3 использует amavisd-new, в качестве фильтра контента для проверки на спам и вирусы, а также amavisd-new может подписывать сообщения с помощью DKIM. Следующие действия объясняют, как настроить amavisd-new для подписи сообщений для домена “example.com” с помощью DKIM. Данные действия должны работать с любой версией amavisd-new, даже если Вы не используете ISPConfig. Создайте ключ домена: 1 2 mkdir /var/db/dkim/ amavisd genrsa /var/db/dkim/example-foo.key.pem Настройте amavisd для использование этого ключа для домена example.com. Отредактируйте файл конфигурации: vim /etc/amavisd/amavisd.conf и добавьте следующие строки: 1 2 3 4 5 6 7 $enable_dkim_verification = 1; $enable_dkim_signing = 1; dkim_key('example.com', 'foo', '/var/db/dkim/example-foo.key.pem'); @dkim_signature_options_bysender_maps = ( { '.' => { ttl => 21*24*3600, c => 'relaxed/simple' } } ); @mynetworks = qw(0.0.0.0/8 127.0.0.0/8 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16); # list your internal networks Выполните команду amavisd showkeys чтобы получить открытый ключ, который должен быть добавлен как текст на DNS-сервер сервера example.com. Проверьте настройку с помощью команды: amavisd testkeys и если все работает правильно, перезапустите amavisd: /etc/init.d/amavis restart Вот более подробное описание из руководства по amavisd-new о том, как установить DKIM в amavisd-new: http://www.ijs.si/software/amavisd/amavisd-new-docs.html#dkim Оригинал статьи на www.faqforge.com Перевод хостинг КОМТЕТ komtet.ru

13 квітня 2016 · 1 хвилина · 191 слово · dimetrius

Права доступа для папки и файлов в Linux

Когда начинаешь пользоваться Linux based ОС, приходится очень много всего запоминать и постоянно где-то делать закладки, чтоб в случае незапамятывания обязательно найти это. Это один из тех азов, которые я никак не могу запомнить, пусть повисит в моём блоге Как установить права доступа на запись в папку и на все подпапки и файлы: chmod -R 755 /home/steam смена прав, -R рекурсивно, т.е. изменит и то, что внутри каталога vasya циферки - это три отдельных атрибута: 1 2 3 4 5 6 7 1 - --x - выполнять 2 - -w- - писать 3 - -wx - писать, выполнять 4 - r-- - читать 5 - r-x - читать, выполнять 6 - rw- - читаь, писать 7 - rwx - читать, писать, выполнять Первая цифра означает применения прав для пользователя, Вторая - для группы, Третья - права для всех остальных. Для смены владельца файлов/каталогов используем chown: chown -R steam:users /home/steam поменяет владельца и группу каталога steam и содержимое онного!

13 квітня 2016 · 1 хвилина · 158 слів · dimetrius