Метка: debian

  • mod_rpaf и Debian Jessie

    Похоже, модуль апача rpaf в Jessie сломан. Подключается, в лог пишет правильный адрес, но вот, например, в $_SERVER[«REMOTE_ADDR»] по-прежнему адрес прокси, а не клиента. К счастью, в комплекте апача есть замена — это mod_remoteip. Конфигурируется достаточно просто:

    1. Нужно создать файл /etc/apache2/mods-available/remoteip.conf с примерно таким содержимым
      <IfModule mod_remoteip.c>
        RemoteIPHeader X-Forwarded-For
        RemoteIPInternalProxy 127.0.0.1 # тут должен быть адрес своего прокси
      </IfModule>
    2. Затем a2enmod remoteip и systemctl apache2 restart. Все, правильный адрес будет и в логах, и в переменных.
  • HW RAID в Debian

    Обнаружил полезный для владельцев железных рейд-контроллеров репозиторий Debian/Ubuntu, который так и называется HWraid.

    Подключается оч. просто, например, для Squeeze нужно добавить в /etc/apt/sources.list:

    deb http://hwraid.le-vert.net/debian squeeze main

    Ключ для подписи, увы, авторы не прилагают, т.ч. просто используем -y —force-yes при установке пакета.

  • Установка redmine на Debian Squeeze

    Попросили сделать хост с редмайном для нескольких проектов, ставлю на Debian 6. В репах squeeze редмайн какой-то совсем старый, аж версии 1.0.1, а в бекпортах 1.1.2, хочется же последний, поэтому ставить буду из testing (или можно из unstable).

    В файле /etc/apt/sources.list добавить строчку для testing:

    deb http://ftp.us.debian.org/debian/ testing main contrib non-free

    Сделать привязку к squeeze в /etc/apt/preferences или preferences.d, например, так

    Package: *
    Pin: release n=squeeze
    Pin-Priority: 700
    
    Package: *
    Pin: release n=wheezy
    Pin-Priority: -1

    Далее установить редмайн командами

    apt-get update
    apt-get install mysql-server
    apt-get install -t wheezy redmine redmine-mysql

    Обновить придется половину системы, так что это будет уже не squeeze в чистом виде, но уж если хочется…

    Теперь надо выдать через веб только что установленную систему. Есть множество способов это сделать, я использую apache+mod_fcgid

    apt-get install apache2 libapache2-mod-fcgid libfcgi-ruby1.8

    Создаем сайт для редмайна в /etc/apache2/sites-available/redmine с таким содержимым

    SocketPath "/var/run/redmine/sockets/default"
    <VirtualHost *:80>
      ServerName redmine.example.com
      DefaultInitEnv RAILS_RELATIVE_URL_ROOT ""
      DefaultInitEnv X_DEBIAN_SITEID "default"
    
      Alias "/plugin_assets/" /var/cache/redmine/default/plugin_assets/
      DocumentRoot /usr/share/redmine/public
    
      <Directory "/usr/share/redmine/public">
        Options +FollowSymLinks +ExecCGI
        Order allow,deny
        Allow from all
        RewriteEngine On
        RewriteRule ^$ index.html [QSA]
        RewriteRule ^([^.]+)$ $1.html [QSA]
        RewriteCond %{REQUEST_FILENAME} !-f [OR]
        RewriteCond %{REQUEST_FILENAME} dispatch.fcgi$
        RewriteRule ^(.*)$ dispatch.fcgi [QSA,L]
      </Directory>
    </VirtualHost>

    Включаем сайт

    a2ensite redmine

    и рерайты

    a2enmod rewrite

    правим права на некоторые каталоги

    chown -R www-data /var/run/redmine

    перезапустим апач

    service apache2 restart

    и можно заходить на свежеустановленный редмайн как admin / admin. Не забудьте поставить скин BaseCamp.

  • debian squeeze 6.0.3 openvz template

    Странно, что в сети нет явных ссылок на шаблон Debian Squeeze для OpenVZ с нормально обновленными пакетами. Решил выложить у себя, мало ли кому пригодятся.

    Версия amd64

    Версия i386

  • DKIM в exim на Debian Squeeze

    Странно, что ничего не гуглится по этому вопросу. Есть dkim и exim, dkim и debian, но все вместе — увы. На самом деле все просто:

    1. apt-get install dkim-filter
    2. cd /etc/exim4; dkim-genkey -d example.com -t -r -s mail
      Это создаст пару открытый/закрытый ключ для домена example.com с селектором mail
    3. mv mail.private example.com.key
    4. chmod 640 example.com.key
    5. chgrp Debian-exim example.com.key
    6. Добавляем следующие строчки в файл /etc/exim4/exim4.conf.template перед секцией remote_smtp в transport (отмечена transport/30_exim4-config_remote_smtp)
      DKIM_DOMAIN = ${lc:${domain:$h_from:}}
      DKIM_FILE = /etc/exim4/${lc:${domain:$h_from:}}.key
      DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}}
      DKIM_SELECTOR = mail
    7. Перезапускаем exim, после этого нужно добавить в конфигурацию доменной зоны содержимое файла mail.txt (после этого он не нужен).
    Вот и все. После этого нужно потестировать DKIM. Когда появится уверенность, что он работает полностью верно, можно заменить ключ t=y на t=s в TXT записи домена, что будет указывать на то, что DKIM находится не в режиме тестирования.
  • Удалить пакеты, помеченные как rc

    На давно установленных системах осталась куча пакетов, помеченных как rc в списке пакетов. apt-get purge удалять их отказывается по причине того, что они уже удалены. Хорошо, что dpkg оказался не таким вредным и удалил остатки: dpkg -l | awk «/^rc/ {print $2}» | xargs dpkg —purge — и все.