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


関連記事

no image

[メモ]WindowsサーバのフォルダをLinuxサーバーへマウント

[pukiwiki] しばらくsmbを使っていなかったので、いつの間にかsmbmountを使わずとも mountコマンドのオプションでマウントを出来ることを知らなかったw WindowsフォルダのLi …

[DB]FireBird テストDBで遊んでみる

アカウントを作ったところで、データベースへログインしてみました。 -参考:お世話になっております! サンプル・データベースへの接続 インストール直後に、/var/lib/firebird/data/以 …

no image

メモ:lsコマンドでタイムスタンプの表記を変える

lsコマンドにてタイムスタンプの表記を変える場合は、オプション”-l”との併用で”–time-style”をつけ 各種表記やdateコマンド …

no image

[メモ]ls コマンド実行時に、最終更新時刻でソートするオプション

[pukiwiki] ls コマンド実行時に、最終更新時刻でソート場合はオプション””-lt””を付ける。 -l ls実行時にタイムスタンプを出力 -t …

no image

ただのメモ:yumdownloaderでパッケージだけダウンロード

RedHat,CentOS yumリポジトリからパッケージをダウンロードだけしたいが 該当のパッケージがすでにインストール済みの場合、”yum install –downloa …

宅麺