harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

GNU/Linux ssh メモ

openssh6.1 ソースからのインストール

投稿日:2012年10月22日

Last Updated on 2021年7月4日 by かんりにん

元々CentOSに入っているopensshから、最新版の機能を試したいので、現在借りているさくらのVPSにソースからインストールをしてみることに。
make installするタイミングで一旦RPM版のopensshをアンインストールする必要があると思われるので、そのタイミングだけさくらVPSのコンソールから作業をするか(すごく気が引けるけど)telnetアクセスを一時的に有効にするなどして対応する必要あり。

→ていうか、既存のRPM版sshとソースから入れるsshでポートを分ければいいだけの話だったw
さらに、現在のさくらのVPSでのssh環境は、不要なアタックを防止するためポート番号を5桁のポートで不定期で更新しているので、要はソースから入れるsshを22番のデフォルトにしておいてあげればOKだった、という話(もちろんアタックがウザいので、後から変更します。)

ダウンロード元:http://www.ftp.ne.jp/OpenBSD/OpenSSH/portable/

0)事前にチェックすること

1.インストールにあたって、いろいろなオプションがあるので何を使うか決めておく。
– デフォルトのopensshとの使い勝手(というか互換性)を維持するなら
予めパッケージ版の機能を確認しておくこと。
– チョイスするオプションによっては開発環境が必要となる場合もある。
以下は一例。
ひとまずPAM、TCP wrapperがあればOKか?場合によってはSELinuxなども…

PAM support
OSF SIA support
KerberosV support
SELinux support
Smartcard support
S/KEY support
TCP Wrappers support
MD5 password support

2.インストール先ディレクトリを決めておく。
prefixを指定しない場合は、インストールの際のファイルは/usr/local以下に配置されるので
そのままでもOK。
指定する場合は、一般的に/usr/local/opensshや/usr/local/ssh、/opt/opensshや/opt/sshなどに
落ち着くかな、と(勝手に思っているw)

1)ダウンロードと展開

$ wget http://www.ftp.ne.jp/OpenBSD/OpenSSH/portable/openssh-6.1p1.tar.gz
$ tar zxvf openssh-6.1p1.tar.gz

2)ビルドしてコンパイル

今回はprefixは指定なし。
オプションは調べもせずにそれっぽいのを付けてみたw
(次回はドキュメントちゃんと読みます…)

$ cd openssh-6.1p1
$ ./configure \
--with-pam \
--with-osfsia \
--with-kerberos5=/usr/lib/krb5 \
--with-selinux \
--with-tcp-wrappers \
--with-md5-passwords

– ビルドが正常終了すると、オプションを反映して以下の情報が出力される。

OpenSSH has been configured with the following options:
User binaries: /usr/local/bin
System binaries: /usr/local/sbin
Configuration files: /usr/local/etc
Askpass program: /usr/local/libexec/ssh-askpass
Manual pages: /usr/local/share/man/manX
PID file: /var/run
Privilege separation chroot path: /var/empty
sshd default user PATH: /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
Manpage format: doc
PAM support: yes
OSF SIA support: no
KerberosV support: yes
SELinux support: yes
Smartcard support:
S/KEY support: no
TCP Wrappers support: yes
MD5 password support: yes
libedit support: no
Solaris process contract support: no
Solaris project support: no
IP address in $DISPLAY hack: no
Translate v4 in v6 hack: yes
BSD Auth support: no
Random number source: OpenSSL internal ONLY
Privsep sandbox style: rlimit

Host: x86_64-unknown-linux-gnu
Compiler: gcc
Compiler flags: -g -O2 -Wall -Wpointer-arith -Wuninitialized -Wsign-compare -Wformat-security -Wno-pointer-sign -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -fno-builtin-memset -fstack-protector-all -std=gnu99
Preprocessor flags:
Linker flags:  -fstack-protector-all
Libraries: -lcrypto -ldl -lutil -lz -lnsl  -lcrypt -lresolv -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err
+for sshd:  -lwrap -lpam -lselinux
+for ssh:  -lselinux

PAM is enabled. You may need to install a PAM control file
for sshd, otherwise password authentication may fail.
Example PAM control files can be found in the contrib/
subdirectory

– コンパイル

$ make

– インストール

$ su -c "make install"

またはsu -して

# make install

※pACOが入っているなら、”paco -c “make install””にしておくとよい。

あとは既存の(インストール済み)のsshのポートと番号を分けてあげて
起動すれば利用できるように。

その他に6.1でできる機能やらインストールオプションの詳細などを
詳しく調べてみたいので、時間のある時にいろいろとやってみたい今日このごろ。
 

 

-GNU/Linux, ssh, メモ
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

apache SSL 秘密鍵ファイルのパスフレーズ解除

[pukiwiki] SSLの運用にて、keyファイル(秘密鍵)のパスフレーズを解除していない場合 apacheのhttpdを再起動する際にパスフレーズの入力を求められる。 -出力例 // # /et …

no image

cron実行ユーザーの制限/cron.allow

[pukiwiki] #contents *cron実行ユーザーの制限/cron.allow 要するにcronのアクセス制限。 ファイル名はそれぞれ cron.allow cron.deny デフォル …

nagios core​/2.環境設定

  [pukiwiki] #ls() **1.設定ファイルについて [#x535cb3d] ”/usr/local/nagios/etc”以下にある各設定を環境に合わせてカスタ …

[メモ]phpmyadmin​インストール

[pukiwiki] *phpmyadminのインストール(rpm版) [#e19741b9] ごく簡単だけど、備忘録として。 # yum install phpmyadmin RPMでインストールし …

no image

ただのメモ:cron実行内容をloggerを使ってログファイルに書き出す

crontabでジョブを実行する際、標準出力やスクリプト内にechoで出力した内容を パイプにてloggerコマンドを使って/var/log/messagesへ書き出す。 オプション”-t …

宅麺