Сборка openssh с поддержкой авторизации через LDAP

openssh

На прошлых выходных вышла новая версия дистрибутива Debian 8 (Jessie), нового там много, поэтому впереди довольно много обновлений систем предстоит. В связи с этим решил заранее собрать версию ssh сервера, которая у меня используется в разных местах — она умеет работать с пользователями из LDAP. В этой статье я коснусь только самого процесса сборки, сам процесс настройки системы под подобную авторизацию я как-нибудь опишу позже. А сейчас о том как быстро и безболезненно пропатчить openssh-server на Debian 8 с патчем LPK.

Сам патч разработан давно в рамках LPK progect — http://code.google.com/p/openssh-lpk/ , есть несколько форков и продолжений этого патча под разные версии openssh. Я воспользовался одним из этих форков для предыдущего патча на Debian 7, когда пришло время я взял его же. Скачать его можно по ссылке https://github.com/takkeybook/openssh-lpk. Небольшую сложность, которая заключается в том что он для openssh-6.6p1 не так сложно обойти. Итак, предполагается что у вас уже есть среда с Debian 8 где вы будете проводить сбору. Выкачиваем исходники:

cd /usr/src ; apt-get source openssh-server

Скачиваем патч:

git clone https://github.com/takkeybook/openssh-lpk.git

Переименуем его для удобства и положим к остальным патчам для пакета:

cp openssh-lpk-6.6p1-0.3.14.patch /usr/src/openssh-6.7p1/debian/patches/openssh-lpk-6.7p1-0.3.14.patch

Добавляем в /usr/src/openssh-6.7p1/debian/patches/series этот патч

В самом патче меняем все упоминания 6.6p1 на 6.7p1. После этого пушим изменения о новых патчах

cd /usr/src/openssh-6.7p1/ ; quilt push ; quilt refresh

Доставляем необходимые пакеты для сборки если они не были установлены до этого:

apt-get build-dep openssh-server

Прописываем изменения в changelog чтобы у вас получился новый пакет с изменениями. Для этого воспользуемся утилиткой dch.

dch -i

Пишем, что-нибудь про изменения которые были внесены чтобы не забыть, например

Add LPK patch for working with LDAP

Теперь можно собирать пакет:

dpkg-buildpackage -us -uc

После это можно понаблюдать за сборкой пакета и выпить чашечку кофе, а в результате получаем весь набор пакетов который прекрасно работает с LDAP и который можно смело применять, например положить в свой локальный репозиторий для измененных пакетов и обновлять оттуда где это требуется. Но об организации своего репозитория и добавления туда новых пакетов я раскажу в другой раз.

Поделиться