それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

CentOSのSSHが古いのでrpmbuildで最新版パッケージを作って最新にする

CentOSSSHが古すぎて・・・Match使えないので困りました.

いくら何でも古いよ

[takuya@kodai ~]$ yum info openssh-server
Available Packages
Name       : openssh-server
Arch       : i386
Version    : 4.3p2 #古い!!

ssh サーバーは簡単に作れる

ビルドめんどくさい、管理邪魔くさいと思ったら,OpenSSHはSPECファイルを始めから用意している便利

OpenSSHビルド→パッケージ作成は楽ちんです

参考資料

http://centossrv.com/openssh.shtml

ココを参考にビルドした

パッケージの準備

yum -y install rpm-build pam-devel openssl-devel  krb5-devel

ファイル準備

wget http://ftp.jaist.ac.jp/pub/OpenBSD/OpenSSH/portable/openssh-5.8p2.tar.gz

SPECファイルの準備

なんとSPECファイルは、配布パッケージに同梱されていました

tar zxvf openssh-5.8p2.tar.gz
cd openssh-5.8p2/contrib
rm caldera cygwin aix suse solaris hpux  -rf
cd ../../

使わなオプションを消しておく。ビルドの時に邪魔になるので.消した

contrib/redhat/openssh.spec

%define no_gnome_askpass 1
%define no_x11_askpass 1 

パッケージを作成する

rm openssh-5.8p2.tar.gz 
tar cvzf openssh-5.8p2.tar.gz openssh-5.8p2/
rpmbuild -tb --clean openssh-5.8p2.tar.gz
ls /usr/src/redhat/RPMS/i386/openssh-*
openssh-5.8p2-1.i386.rpm          openssh-clients-5.8p2-1.i386.rpm  openssh-server-5.8p2-1.i386.rpm #出来てる

インストールする

sudo rpm -Uvh /usr/src/redhat/RPMS/i386/openssh-*
準備中...               
   1:openssh            ########################################### [100%]
   2:openssh-clients    ########################################### [100%]
   3:openssh-server     ########################################### [100%]
警告: /etc/pam.d/sshd は /etc/pam.d/sshd.rpmnew として作成されました。
警告: /etc/ssh/sshd_config は /etc/ssh/sshd_config.rpmnew として作成されました。

インストール確認

#> /usr/sbin/sshd -v
sshd: illegal option -- v
OpenSSH_5.8p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
#> ssh -v
OpenSSH_5.8p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008

ちゃんとバージョンが上がってる

これでCentOSでもMatchが使えますね

ssh設定 Match

Match Address 192.168.20.0/24
  PasswordAuthentication yes