Build of Shibboleth 0.8 target side on Debian GNU/Linux unstable/i386 location: http://www.switch.ch/aai/docs/shibboleth/SWITCH/ author: Urs Marti contact: aai@switch.ch version: 1.0 Packet management There is a bug in apt. Add the following two lines to the file "/etc/apt/apt.conf" APT::Default-Release "woody"; APT::Cache-Limit "8388608"; Selection There is a minimal selection of packages at the end of this file. With diff -b, this can be used to find required, but not installed packages. Syslog Syslog has to accept network connections: Change one line in /etc/init.d/syslogd from SYSLOGD="" to SYSLOGD="-r". apache-ssl apache-ssl or apache are built without thread support. This will cause the processes to stop if a module is loaded that has libpthread (dynamically) linked. This is the case for the shibboleth modules. Apache has to be built from sources. The dependencies will build the following packages automatically: apache-common apache-dev apache-doc apache-ssl apache libssl-dev libssl0.9.6 \ libssl0.9.7 openssl_0.9.7 Make sure, there is only one version of openssl and libssl installed. $ export LDFLAGS=-lpthread $ apt-build install apache-ssl $ apt-get install apache-dev $ ldconfig log4cpp The debian version of liblog4cpp is not sufficient: $ wget \ http://switch.dl.sourceforge.net/sourceforge/log4cpp/log4cpp-0.3.4b.tar.gz $ tar \ xzf log4cpp-0.3.4b.tar.gz$ cd log4cpp-0.3.4b $ ./configure --with-pthreads=yes --enable-static=no --enable-doxygen=no $ make as root: $ make install $ echo "/usr/local/lib" >> /etc/ld.so.conf $ ldconfig opensaml This package is part of shibboleth: $ wget http://wayf.internet2.edu/shibboleth/opensaml-0.8.tar.gz $ tar xzf opensaml-0.8.tar.gz $ cd opensaml-0.8 $ ./configure --with-xmlsec=/usr -C $ make as root: $ make install $ ldconfig libapreq A library for parsing http headers: $ wget http://www.apache.org/dist/httpd/libapreq/libapreq-1.0.tar.gz $ tar xzf libapreq-1.0.tar.gz $ cd libapreq-1.0 $ ./configure --with-apache-includes=/usr/include/apache-1.3 --enable-static-no $ make $ make install $ ldconfig shibboleth Now build the target side apache modules and shar binary: $ wget http://wayf.internet2.edu/shibboleth/shibboleth-0.8.tar.gz $ tar xzf shibboleth-0.8.tar.gz $ export CXXFLAGS=-DSHIBTARGET_INIFILE=\"\\\"/usr/local/etc/shibboleth/shibboleth.ini\\\"\" $ cd shibboleth-0.8 $ ./configure --with-xmlsec=/usr --with-apxs -C If there are errors, unset CXXFLAGS. It is very likely that each shell escapes the environment variable in a different way. In the file "./shib-target/shib-config.cpp" change the line: #define SHIBTARGET_INIFILE "/opt/shibboleth/etc/shibboleth/shibboleth.ini" to #define SHIBTARGET_INIFILE "/usr/local/etc/shibboleth/shibboleth.ini" and rebuild. $ make as root: $ make install $ ldconfig Target side Now there should be two apache modules in /usr/local/libexec/ and the shar binary in /usr/local/bin. For the configuration check the target deployment guide "DEPLOY-GUIDE-TARGET.html" on Shibboleth's home page http://shibboleth.internet2.edu/ selection.txt: adduser install apache-common install apache-dev install apache-ssl install apt install apt-build install apt-utils install aptitude install at install autoconf install automake1.7 install autoproject install autotools-dev install base-config install base-files install base-passwd install bash install bc install bin86 install bind9-host install binutils install bison install bsdmainutils install bsdutils install console-common install console-data install console-tools install console-tools-libs install coreutils install cpio install cpp install cpp-3.2 install cron install dc install debconf install debconf-utils install debhelper install debianutils install devscripts install diff install dnsutils install dpkg install dpkg-dev install dselect install e2fsprogs install exim install fakeroot install fdutils install file install fileutils install findutils install flex install ftp install g++ install g++-3.2 install gcc install gcc-3.2 install gcc-3.2-base install gdb install gettext install gettext-base install grep install groff-base install gzip install hostname install html2text install ifupdown install ipchains install joe install kernel-image-2.4.18-bf2.4 install klogd install less install libappconfig-perl install libc6 install libc6-dev install libcap1 install libcurl2 install libcurl2-dev install libdb1-compat install libdb2 install libdb2-dev install libdb2-util install libdb3 install libdb4.0 install libdns8 install libexpat1 install libexpat1-dev install libgcc1 install libgdbmg1 install libglib2.0-0 install libglib2.0-data install libident install libisc4 install libldap2 install liblockfile1 install libltdl3 install liblwres1 install libncurses5 install libnewt0 install libpam-modules install libpam-runtime install libpam0g install libpcre3 install libperl5.6 install libpopt0 install libreadline4 install libsasl7 install libsigc++0 install libssl-dev install libssl0.9.7 install libstdc++2.10-glibc2.2 install libstdc++5 install libstdc++5-dev install libtool install libwrap0 install libxerces21-dev install libxerces21c102 install libxml2 install libxml2-dev install libxmlsec0 install libxmlsec0-dev install libxslt1 install libxslt1-dev install lilo install locales install login install logrotate install lsof install ltrace install m4 install mailx install make install makedev install man-db install manpages install manpages-dev install mawk install mbr install mime-support install modconf install modutils install mount install mpack install ncurses-base install ncurses-bin install ncurses-term install net-tools install netbase install netkit-inetd install netkit-ping install openssl install passwd install patch install perl install perl-base install perl-modules install pkg-config install po-debconf install portmap install procps install psmisc install sed install sharutils install shellutils install slang1 install ssh install strace install sysklogd install sysvinit install tar install tasksel install tcpd install textutils install time install util-linux install util-linux-locales install uuid-dev install wget install whiptail install zlib1g install zlib1g-dev install