openssh-5.8p2 の lpk 対応バージョン作ったよ
centos5 対応の openssh5.8p2 + lpkパッチバージョン作ったよ。
動かなくても泣かない人はどうぞ。
http://rtilabs.net/files/2011_05_05/
導入方法
wget http://rtilabs.net/files/2011_05_05/openssh-5.8p2-lpk.rti.1.x86_64.rpm wget http://rtilabs.net/files/2011_05_05/openssh-server-5.8p2-lpk.rti.1.x86_64.rpm wget http://rtilabs.net/files/2011_05_05/openssh-clients-5.8p2-lpk.rti.1.x86_64.rpm rpm -Uvh openssh-5.8p2-lpk.rti.1.x86_64.rpm openssh-server-5.8p2-lpk.rti.1.x86_64.rpm openssh-clients-5.8p2-lpk.rti.1.x86_64.rpm
src.rpm もあるよ!
wget http://rtilabs.net/files/2011_05_05/openssh-5.8p2-lpk.rti.1.src.rpm
作業メモ
忘れないようにメモっとく。
SPRMを取得
元々は この人がつくっていた srpm から派生。
http://marijuana.ddo.jp/
まずは、 srpm をダウンロードして展開する。
cd wget http://marijuana.ddo.jp/centos5.5/srpm/openssh-5.8p1-ma.1.src.rpm rpm -i openssh-5.8p1-ma.1.src.rpm
そうすると、 /usr/src/redhat/spec/ に spec が展開される。
この段階でもビルドは可能。
とりあえずビルドしてみるか。
SPRMをビルド
ビルドするのに必要なパッケージを入れる
yum -y install gtk2-devel libX11-devel openldap-devel autoconf automake perl zlib-devel util-linux groff pam-devel fipscheck-devel openssl-devel krb5-devel ncurses-devel libselinux-devel audit-libs xauth libX11* libXt*
できたので、ビルドしてみる。
rpmbuid -ba openssh.spec
うまく行けば、 以下のファイルが出来る。
find /usr/src/redhat/RPMS/ find /usr/src/redhat/SRPMS/
lpkパッチ
lpk用のパッチを持ってくる。
version lpk 5.5 ぐらいから SSHキーを格納する LDAPのカラム選べるようになったので最新版で作る。
open-ssh5.8p1 用のパッチを落としてくる。
cd /usr/src/redhat/BUILD wget http://jfut.integ.jp/linux/openssh/openssh-lpk-5.8p1-0.3.13.patch
あとは、spec を修正してビルドする。
cd /usr/src/redhat/SPEC vi openssh.spec
------------------------------------ %define ver 5.8p1 %define rel ma.1 ↓↓変更-----------↓↓ %define ver 5.8p2 %define rel lpk.rti.1 ------------------------------------
パッチを追加した。
------------------------------------ Patch0: openssh-5.8p1-initscript.patch ↓↓変更-----------↓↓ Patch0: openssh-5.8p1-initscript.patch Patch1: openssh-lpk-5.8p1-0.3.13.patch ------------------------------------
パッチを使うようにした。
------------------------------------ %patch0 -p1 -b .initscript ↓↓変更-----------↓↓ %patch0 -p1 -b .initscript %patch1 -p1 -b .initscript ------------------------------------
./configure でパッチを使うように修正 --with-ldap を追加.
------------------------------------ %configure \ --sysconfdir=%{_sysconfdir}/ssh \ --libexecdir=%{_libexecdir}/openssh \ --datadir=%{_datadir}/openssh \ --with-tcp-wrappers \ --with-rsh=%{_bindir}/rsh \ --with-default-path=/usr/local/bin:/bin:/usr/bin \ --with-superuser-path=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin \ --with-privsep-path=%{_var}/empty/sshd \ --with-md5-passwords \ --without-zlib-version-check \ %if %{scard} --with-smartcard \ %endif %if %{rescue} --without-pam \ %else --with-pam \ %endif %if %{kerberos5} --with-kerberos5${krb5_prefix:+=${krb5_prefix}} %endif ↓↓変更-----------↓↓ %configure \ --sysconfdir=%{_sysconfdir}/ssh \ --libexecdir=%{_libexecdir}/openssh \ --datadir=%{_datadir}/openssh \ --with-tcp-wrappers \ --with-rsh=%{_bindir}/rsh \ --with-default-path=/usr/local/bin:/bin:/usr/bin \ --with-superuser-path=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin \ --with-privsep-path=%{_var}/empty/sshd \ --with-md5-passwords \ --without-zlib-version-check \ --with-ldap \ %if %{scard} --with-smartcard \ %endif %if %{rescue} --without-pam \ %else --with-pam \ %endif %if %{kerberos5} --with-kerberos5${krb5_prefix:+=${krb5_prefix}} %endif ------------------------------------
修正をビルドしてみる。
できたので、ビルドしてみる。
rpmbuid -ba openssh.spec
うまく行けば、 以下のファイルが出来る。
find /usr/src/redhat/RPMS/ find /usr/src/redhat/SRPMS/
openssh を入れ替える。
注意: 最悪コンソールからしかログイン出来なくなる可能性があるので、コンソールを触れるように準備しておく。
cd /usr/src/redhat/RPMS/x86_64 rpm -Uvh openssh-5.8p2-lpk.rti.1.x86_64.rpm openssh-server-5.8p2-lpk.rti.1.x86_64.rpm openssh-clients-5.8p2-lpk.rti.1.x86_64.rpm /etc/init.d/sshd restart
念のため、 openssh が lpk 対応になったかどうか調べる。
対応ルーチンが入っていれば、 UseLPKって文字列があるはずだ!!
strings /usr/sbin/sshd | grep UseLPK
使い方はまた次回。
おしまい。