Date: Tue, 28 Oct 2003 01:14:34 +0100 Subject: Opdateret OpenSSH med IPv6 til Mac OS X From: Henrik Lund Kramshøj <none@hlk--kramse.dk.lh.bsd-dk.dk> To: osx@bsd-dk.dk
Hejsa
Nu lykkedes det at få opdateret min OpenSSH på Mac OS X, pheeew
- og tak til F3 for at puffe lidt til mig!
Det var en sej og lang kamp med
OpenSSL header og library der ikke passede sammen
configure options til OpenSSH osv.!
Hvis du har lyst til at prøve så kig med - advarsel lang mail :-)
Hvorfor gjorde du det?
1) fordi jeg vil have en opdateret OpenSSH på mine systemer!
2) fordi OpenSSH i default Mac OS X ikke er IPv6 enablet - og det kan
jeg da
virkeligt ikke undvære (schyyyy F3, ti nu stille IPv6 ER en OK
protokol! ;-)
Her er hvad jeg gjorde:
$ locate libssl
/Applications/Navigator.app/Contents/MacOS/libssl3.dylib
/usr/lib/libssl.0.9.dylib
/usr/lib/libssl.dylib
/usr/libexec/httpd/libssl.so
$ which sshd
/usr/sbin/sshd
$ which ssh
/usr/bin/ssh
$ ls -l /etc/sshd_config
-rw-r--r-- 1 root wheel 2393 Mar 30 2003 /etc/sshd_config
SSL ligger altså under /usr/lib
SSH ligger under /usr/bin /usr/sbin og med config i /etc
Jeg har valgt at overskrive de installerede programmer!
DU /kan/ vælge at installere under /usr/local eller lignende - YMMV
Jeg hentede source og tilhørende PGP/GPG signaturer:
openssh-3.7.1p2.tar.gz
openssh-3.7.1p2.tar.gz.sig
openssl-0.9.7c.tar.gz
openssl-0.9.7c.tar.gz.asc
verificerede disse (nøglerne havde jeg i forvejen hentet):
$ gpg --verify openssh-3.7.1p2.tar.gz.sig
gpg: Signature made Tue Sep 23 11:56:21 2003 CEST using DSA key ID
86FF9C48
gpg: Good signature from "Damien Miller (Personal Key)
<none@djm--mindrot.org.lh.bsd-dk.dk>"
$ gpg --verify openssl-0.9.7c.tar.gz.asc
gpg: Signature made Tue Sep 30 15:00:37 2003 CEST using RSA key ID
49A563D9
gpg: Good signature from "Mark Cox <none@mjc--redhat.com.lh.bsd-dk.dk>"
gpg: aka "Mark Cox <none@mark--awe.com.lh.bsd-dk.dk>"
gpg: aka "Mark Cox <none@mjc--apache.org.lh.bsd-dk.dk>"
OpenSSL installation:
$tar zxvf download/src/openssl-0.9.7c.tar.gz
$ cd openssl-0.9.7c
$ less INSTALL
$ ./config --prefix=/usr
$ time make
$ sudo make install
af en eller anden grund - som jeg ikke undersøgte nærmere
- mangler man at få bygget de dynamiske libraries
$ make -f Makefile.ssl libssl.0.9.7.dylib
bygger dog disse :-)
$ sudo cp lib*0.9.7.dylib /usr/lib
kopierer disse
$ cd /usr/lib
$ sudo ln -sf libcrypto.0.9.7.dylib libcrypto.dylib
$ sudo ln -sf libssl.0.9.7.dylib libssl.dylib
opdaterer links - således at alle programmer der bruger SSL nu bruger
disse :-)
Dernæst udpakkes OpenSSH
gå til ~/src/security - eller hvor du nu har lagt din source :-)
$ tar zxvf ../../download/src/openssh-3.7.1p2.tar.gz
$ cd openssh-3.7.1p2/
$ less INSTALL
$ ./configure --prefix=/usr --sysconfdir=/etc
$ time make
(time kommandoen kan udelades, den måler blot hvor lang tid det tager)
NB: Make af selve OpenSSH tager kun en brøkdel af tiden for OpenSSL
kompilering!
$ sudo make install
Stop SSHD
$ ps auxw | grep sshd
root 331 0.0 0.0 1872 136 ?? Ss 8:02AM 0:00.74
/usr/sbin/sshd
hlk 19827 0.0 0.1 1416 308 std S+ 1:04AM 0:00.01
grep sshd
$ sudo kill 331
I /etc/sshd_config skal du enten udkommentere begge linier eller have
begge aktive:
#ListenAddress 0.0.0.0
#ListenAddress ::
(du kan evt. i samme omgang ændre default porten 22 til 1234567 (vælg
selv en port))
Dernæst kan du starte SSHD igen med
$ sudo /System/Library/StartupItems/SSH/SSH
$ netstat -an | grep 22
tcp4 0 0 *.22 *.* LISTEN
tcp46 0 0 *.22 *.* LISTEN
Wiiiieieieee - den lytter på IPv6!
Tilslut kan du teste med:
$ telnet ::1 22
Trying ::1...
Connected to localhost.
Escape character is '^]'.
SSH-2.0-OpenSSH_3.7.1p2
OpenSSL og OpenSSH kompilerer altså uden problemer og IPv6 kommer
"naturligt" med :-))
Thats it! og sov godt
Mvh
-- Henrik Lund Kramshøj, cand.scient, CISSP e-mail: hlk@security6.net, tlf: 2026 6000 www.security6.net - IPv6, sikkerhed, netværk og UNIX
This archive was generated by hypermail 2b30 : Wed 15 Nov 2006 - 18:25:13 CET