$ tar xvfz openssh-1.2.3.tar.gz $ cd openssh-1.2.3 $ ./configure --without-pam --with-tcp-wrappers $ make $ su # make install # exit |
$ tar xvfz openssh-2.9p1.tar.gz $ cd openssh-2.9p1 $ ./configure --with-tcp-wrappers --disable-suid-ssh $ make $ su # make install # exit |
$ tar xvfz openssh-1.2.3.tar.gz $ cd openssh-1.2.3 $ ./configure --without-pam (snip) checking location of lastlog file... /var/adm/lastlog checking for /dev/ptmx... yes checking for /dev/ptc... no checking for /dev/urandom... no configure: error: No random device found, and no EGD random pool specified |
$ ./configure --without-pam --with-egd-pool=/usr/local/bin/egd.pl (snip) checking location of lastlog file... /var/adm/lastlog checking for /dev/ptmx... yes checking for /dev/ptc... no checking for /dev/urandom... no checking to convert IPv4 in IPv6-mapped addresses... no (default) updating cache ./config.cache creating ./config.status creating Makefile creating config.h |
$ make gcc -g -O2 -Wall -I/usr/local/ssl/include -DETCDIR=\"/usr/local/etc\" -DSSH_PROGRAM=\"/usr/local/bin/ssh\" -DSSH_ASKPASS_DEFAULT=\"/usr/local/libexec/ssh/ssh-askpass\" -DHAVE_CONFIG_H -c bsd-snprintf.c bsd-snprintf.c: In function `vsnprintf': bsd-snprintf.c:149: incompatible type for argument 3 of `vsprintf' bsd-snprintf.c:133: warning: variable `ret' might be clobbered by `longjmp' or `vfork' bsd-snprintf.c: At top level: bsd-snprintf.c:52: warning: `caught' defined but not used *** Exit 1 Stop. |
vsnprintf(str, n, fmt, ap) char *str; size_t n; char *fmt; va_list ap; <--- ap の前の * を削除 |
$ make gcc -g -O2 -Wall -I/usr/local/ssl/include -DETCDIR=\"/usr/local/etc\" -DSSH_PROGRAM=\"/usr/local/bin/ssh\" -DSSH_ASKPASS_DEFAULT=\"/usr/local/libexec/ssh/ssh-askpass\" -DHAVE_CONFIG_H -c packet.c packet.c: In function `packet_send_debug': packet.c:668: warning: passing arg 3 of `vsnprintf' discards `const' from pointer target type packet.c:668: incompatible type for argument 4 of `vsnprintf' packet.c: In function `packet_disconnect': packet.c:699: warning: passing arg 3 of `vsnprintf' discards `const' from pointer target type packet.c:699: incompatible type for argument 4 of `vsnprintf' *** Exit 1 Stop. |
int vsnprintf(char *str, size_t n, char *fmt, va_list ap); <--- ap の前の * を削除 |
$ su # ssh-keygen -b 1024 -f /usr/local/etc/ssh_host_key -N '' Couldn't connect to EGD socket "/usr/local/bin/egd.pl": Socket operation on non-socket |
--with-egd-pool=/some/file allows you to enable Entropy Gathering Daemon support and to specify a EGD pool socket. You will need to use this if your Unix does not support the /dev/urandom device (or similar). The file argument refers to the EGD pool file, not the ~~~~~~~ EGD program itself. Please refer to the EGD documentation. ~~~~~~~~~~~~~~~~~~~ |
$ /usr/local/bin/egd.pl No sockets to read entropy: not very useful. Try running as: egd.pl ~/.gnupg/entropy Terminating. $ /usr/local/bin/egd.pl ~/.gnupg/entropy 35 sources found forking into background... server starting $ can't create socket /home2/fuka/.gnupg/entropy : ファイル番号が正しくありません \ at /usr/local/bin/egd.pl line 577. $ mkdir ~/.gnupg $ /usr/local/bin/egd.pl ~/.gnupg/entropy 35 sources found forking into background... server starting $ ls -l /usr/local/etc/entropy srwxrwxrwx 1 root daemon 0 Apr 21 15:33 entropy= |
$ kill <egd.pl の PID> $ rm -rf ~/.gnupg $ su # /usr/local/bin/egd.pl /usr/local/etc/entropy # exit $ cd /usr/local/src/openssh-1.2.3 $ make distclean $ ./configure --without-pam --with-egd-pool=/usr/local/etc/entropy <--- 注) これが正しい (?) configure $ make $ su # make install $ ssh-keygen -b 1024 -f /usr/local/etc/ssh_host_key -N '' Generating RSA keys: ........................ooooooO.....ooooooO Key generation complete. Your identification has been saved in /usr/local/etc/ssh_host_key. Your public key has been saved in /usr/local/etc/ssh_host_key.pub. The key fingerprint is: 1024 d2:a8:38:e9:f7:cc:db:56:a8:69:32:3d:9d:a2:63:ee root@alpha-host |