Архив рубрики: Linux

Не работал squid_ldap_group

Настраивал связку Squid+AD. Negotiate авторизация завелась без проблем, захотелось, чтобы пользователи ходили по группам из LDAP. По мануалам настроил external acl, но оно не взлетело. В cache.log при запуске сыпалось:

2014/11/12 10:04:41| helperOpenServers: Starting 5/5 ‘squid_ldap_group’ processes

2014/11/12 10:04:41| commBind: Cannot bind socket FD 31 to [::1]: (99) Cannot assign requested address

2014/11/12 10:04:41| commBind: Cannot bind socket FD 32 to [::1]: (99) Cannot assign requested address

2014/11/12 10:04:41| ipcCreate: Failed to create child FD.

2014/11/12 10:04:41| WARNING: Cannot run ‘/usr/lib/squid3/squid_ldap_group’ process.

2014/11/12 10:04:41| commBind: Cannot bind socket FD 34 to [::1]: (99) Cannot assign requested address

2014/11/12 10:04:41| commBind: Cannot bind socket FD 35 to [::1]: (99) Cannot assign requested address

2014/11/12 10:04:41| ipcCreate: Failed to create child FD.

2014/11/12 10:04:41| WARNING: Cannot run ‘/usr/lib/squid3/squid_ldap_group’ process.

2014/11/12 10:04:41| commBind: Cannot bind socket FD 37 to [::1]: (99) Cannot assign requested address

2014/11/12 10:04:41| commBind: Cannot bind socket FD 38 to [::1]: (99) Cannot assign requested address

2014/11/12 10:04:41| ipcCreate: Failed to create child FD.

2014/11/12 10:04:41| WARNING: Cannot run ‘/usr/lib/squid3/squid_ldap_group’ process.

2014/11/12 10:04:41| commBind: Cannot bind socket FD 39 to [::1]: (99) Cannot assign requested address

2014/11/12 10:04:41| commBind: Cannot bind socket FD 40 to [::1]: (99) Cannot assign requested address

2014/11/12 10:04:41| ipcCreate: Failed to create child FD.

2014/11/12 10:04:41| WARNING: Cannot run ‘/usr/lib/squid3/squid_ldap_group’ process.

2014/11/12 10:04:41| commBind: Cannot bind socket FD 41 to [::1]: (99) Cannot assign requested address

2014/11/12 10:04:41| commBind: Cannot bind socket FD 42 to [::1]: (99) Cannot assign requested address

2014/11/12 10:04:41| ipcCreate: Failed to create child FD.

2014/11/12 10:04:41| WARNING: Cannot run ‘/usr/lib/squid3/squid_ldap_group’ process.

Вилы были в том, что squid был собран с поддержкой ipv6, и он пытался взаимодействовать со своими плагинами с помощью ipv6. Чтобы этого избежать, нужно явно указать, что необходимо использовать ipv4:

external_acl_type ldap_verify ipv4 %LOGIN /usr/lib/squid3/squid_lda…

Автор: Василий Иванов
Дата публикации: 2014-11-11T18:41:00.000-08:00

inodes: что это, или почему % свободного места не главное

Большинство компаний считают, что они могут обойтись без ИТ-специалиста. Ведь у них всё всегда работает, и ломаться не может. А в случай чего вон Ваня/Петя или какой-либо сантехник всё быстро почистит. Так было и в этот раз. Сайт одной крупной компании, выделенный хостинг, отсутствие специалиста. Как результат сайт перестает принимать заявки/обрабатывать корзину с покупками.

Судорожные звонки программистам, простой сайта, потери заказов и всё остальное, что с этим связано. К нам обратились, уже когда программисты совсем сдались, и предлагали перенести сайт на их площадку (так как у них всё работает, но опять таки не за бесплатно).И так, первый осмотр, быстрый анализ, и вот первая ошибка: при попытке запуска mc на CentOS появлялось сообщение о недостатке свободного места. Выполнив команду df -h, в это убеждаемся и начинаем мысль, что же не так. Права? Ошибка на диске? Но наша техническая wiki подсказала другого виновника — inodes. Читать

Установка принтера HP в Linux Mint Debian Edition

Понадобилось мне тут установить принтер HP LaserJet P1102 в Linux Mint Debian Edition.

В системе уже установлена система печати HPLIP (Hewlett-Packard Linux Printing and Imaging System), которая по идее должна сама всё установить.

Принтер при подключении кабеля появился, но печать не работала.

Походив по официальным ссылкам от HP, решил это следующим образом.

Доустановливаем через тот же Synaptic дополнительный пакет hplip-gui.
Это нужно для запуска программы HP Device Manager, в которой будет проводится все нужные операции.

Через терминал с root-правами:

hp-plugin

устанавливаем Driver Plug-in.
Там же командой

hp-setup
запускаем собственно установку:
Выбираем USB, далее — подключенное устройство, задаём имя принтеру и всё готово.
Проверяем — есть печать!
Принтер, что установился ранее самостоятельно, удаляем, чтобы не путаться.

Читать

Неприемлемый 406 Not Acceptable при использовании curl

Столкнулся со следующей проблемой, иногда curl возвращает ошибку «406 Not Acceptable» answer:

# curl http://domain.com/curl.php

<html><head><title>406 Not Acceptable</title></head><body><h1>Not Acceptable</h1><p>An appropriate representation of the requested resource /curl.php could not be found on this server.</p><p>Additionally, a 404 Not Founderror was encountered while trying to use an ErrorDocument to handle the request.</p></body></html>

Способ решения проблемы найден достаточно быстро — использование громкого имени Mozilla в качестве User agent:

# curl http://domain.com/curl.php -A «Mozilla»Curl worked!

Start_Linux_Wine.v2.x / Gnome / Zenity

Обновлена версия скрипта Linux Games Start (LGS)…
Скрипт для организации и управления Wine префиксами / игры.

Версия для Kdialog (KDE) …
http://crimea-karro.org.ua/download/Start_Linux_Wine.v1.2.sh.tar.gz 

Версия для Zenity (Gnome) …
http://crimea-karro.org.ua/download/Start_Linux_Wine.v2.x.sh.tar.gz

***

Start_Linux_Wine.v2.1

* Добавлено ведение логов.
* Дополнительные переменные для кода скрипта.
* Переход на Zenity.
* Добавлена ссылка в меню для обновления скрипта.
* Небольшие игры с  notify-send.
* Добавлен диалог (стёб) «Exit script»?
* function main не дописана.

Версия для Zenity (Gnome) …
http://crimea-karro.org.ua/download/Start_Linux_Wine.v2.x.sh.tar.gz

Автор: AugustuS Karro
Дата публикации: 2014-10-18T08:01:00.000+08:00

Генерация случайных паролей / Linux консоль

Первый метод использует SHA для хеширования даты, «прогоняется» через base64, а затем отображаются первые 32 символа:

date +%s | sha256sum | base64 | head -c 32 ; echo

Этот метод использует встроенную возможность /dev/urandom и оставляет только те символы, которые обычно используются в паролях. Отображаются 32 символа.

< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;

Следующий метод использует функцию rand из openssl, котоырй может быть не установлен на вашей системе.

openssl rand -base64 32

Этот метод во многом схож с прошлым методом через urandom, но делает все наоборот:

tr -cd '[:alnum:]' < /dev/urandom | fold -w30 | head -n1

Вот ещё один пример, который производит фильтрацию с помощью команды strings и отображает печатные символы из файла: в нашем случае это urandom:

strings /dev/urandom | grep -o '[[:alnum:]]' | head -n 30 | tr -d 'n'; echo

Вот ещё более простая версия метода через urandom:

< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c6

Этот метод использует очень полезную команду dd:

dd if=/dev/urandom bs=1 count=32 2>/dev/null | base64 -w 0 | rev | cut -b 2- | rev

Если вы собираетесь использовать какую-нибудь команду все время, возможно, стоило бы поместить её в функцию. В данном случае, вы сможете использовать randpw все время, когда вы захотите сгенерировать новый пароль. Это нужно будет поместить в ваш файл ~/.bashrc:

randpw(){ < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-16};echo;}

Вы можете использовать тот же синтаксис, чтобы использовать любой из примеров как функцию — просто замените команду внутри символов { }.

И, наконец, вот самый простой способ создания пароля из командной строки. Это простая контрольная сумма MD5 от текущей даты:

date | md5sum

Автор: AugustuS Karro
Дата публикации: 2014-10-15T05:15:00.000+08:00