[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Gallery/ImageMagick/NetPBM req'd files in chroot? [RESOLVED]
- To: misc_(_at_)_openbsd_(_dot_)_org
- Subject: Re: Gallery/ImageMagick/NetPBM req'd files in chroot? [RESOLVED]
- From: "Nick Holmes" <nick_g_holmes_(_at_)_hotmail_(_dot_)_com>
- Date: Sun, 03 Apr 2005 22:57:56 +0000
Dear Misc@,
Thanks to everyone for the kind help and suggestions on fixing the chroot
problem. I now have Gallery working within the chroot. I've polished up the
script that I threw together to setup the chroot environment. Maybe someone
else will find this useful...
=======================================================
#!/bin/sh
#
# [ gallery-openbsd-chroot-install ]
#
# ------------------------------------------------------------------------
# Copyright (c) 2005 Nick G Holmes <nick_g_holmes_(_at_)_hotmail_(_dot_)_com>
#
# Permission to use, copy, modify, and distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
# ------------------------------------------------------------------------
#
# 1.0 03-Apr-2005 NGH First release
#
#
# OVERVIEW
# ========
# This script copies the necessary files from the true root
# to Apache's chroot'd environment. Script creates needed
# directories.
#
# Test Environment:
# * OpenBSD_3.6-RELEASE (sparc)
# - All errata up to 01 April 2005
# * SparcStation 20 (Ross 180MHz CPU, 256MB RAM)
# * Gallery 1.4.4-pl6
# * PHP 4.3.8
# * ImageMagick 6
# * NetPBM 9.24
# * jhead 2.2
#
# INSTALLING A CHROOT'D GALLERY
# =============================
#
# 01 pkg_add (ftpserver)/php4-core-4.3.8.tgz
# * FOLLOW INSTRUCTIONS TO SETUP PHP.INI AND HTTPD.CONF!!!
# 02 pkg_add (ftpserver)/ImageMagick-6.0.0-2-no_x11.tgz
# 03 pkg_add (ftpserver)/netpbm-9.24p1.tgz
# 04 pkg_add (ftpserver)/jhead-2.2.tgz
# 05 Download gallery and tar xfz the file into htdocs
# 06 mkdir -p /var/www/htdocs/albums
# 07 chown www:www /var/www/htdocs/albums
# 08 chmod 755 /var/www/htdocs/albums
# 09 NOW RUN THIS SCRIPT
# 10 Using your web browser, follow the gallery setup procedure
# - Don't forget temp directory is /tmp as it will be chroot!
# 11 After it's all working, run /var/www/htdocs/gallery/secure.sh
#
#
# A FINAL NOTE
# ============
# This script worked for me. It might not work for you. Mileage may vary.
# My scripting isn't so hot, so the below is probably very basic looking.
# If you spot any errors, please e-mail me.
#
# My thanks goes out to:
# * Bruno Rohee.........(Suggestions on libraries)
# * Stuart Henderson....(advice on using ldd)
# * Daniel Polak........(Help with files I missed)
# * And everyone else on the OpenBSD misc@ mailing list
#
# ===============================================
#
echo '== Gallery chroot Copy Tool =='
mkdir -p /var/www/tmp
chmod -R 777 /var/www/tmp
touch /var/www/htdocs/gallery/config.php
chmod 0777 /var/www/htdocs/gallery/config.php
touch /var/www/htdocs/gallery/.htaccess
chmod 0777 /var/www/htdocs/gallery/.htaccess
mkdir -p /var/www/bin
mkdir -p /var/www/var/run
mkdir -p /var/www/usr/lib
mkdir -p /var/www/usr/libexec
mkdir -p /var/www/usr/local/bin
mkdir -p /var/www/usr/local/lib
mkdir -p /var/www/usr/local/lib/pkgconfig
mkdir -p /var/www/usr/local/lib/ImageMagick-6.0.0/config
mkdir -p /var/www/usr/local/include
mkdir -p /var/www/usr/local/include/libexif
mkdir -p /var/www/usr/local/include/jasper
mkdir -p /var/www/usr/local/include/wand
mkdir -p /var/www/usr/local/include/magick
mkdir -p /var/www/usr/local/include/Magick++
mkdir -p /var/www/usr/local/include/libpng
mkdir -p /var/www/usr/local/share/netpbm
mkdir -p /var/www/usr/local/share/ImageMagick-6.0.0
mkdir -p /var/www/usr/local/share/doc/png
#
#
#
# Mirror libs to chroot jail
# --------------------------
echo 'Copying library files...'
cp /usr/lib/libc.so.34.1 /var/www/usr/lib
cp /usr/lib/libm.so.2.0 /var/www/usr/lib
cp /usr/lib/libz.so.4.0 /var/www/usr/lib
cp /usr/libexec/ld.so /var/www/usr/libexec
cp /usr/local/lib/libjpeg.so.62.0 /var/www/usr/local/lib
cp /usr/local/lib/libpbm.so.1.0 /var/www/usr/local/lib
cp /usr/local/lib/libpgm.so.1.0 /var/www/usr/local/lib
cp /usr/local/lib/libpng.so.4.0 /var/www/usr/local/lib
cp /usr/local/lib/libpnm.so.1.0 /var/www/usr/local/lib
cp /usr/local/lib/libppm.so.1.0 /var/www/usr/local/lib
cp /usr/local/lib/libtiff.so.36.1 /var/www/usr/local/lib
cp /usr/local/lib/libbz2.so.10.2 /var/www/usr/local/lib
cp /usr/local/lib/libxml2.so.8.11 /var/www/usr/local/lib
cp /usr/local/lib/libiconv.so.4.0 /var/www/usr/local/lib
cp /usr/local/lib/libjasper.so.1.0 /var/www/usr/local/lib
cp /var/run/ld.so.hints /var/www/var/run
#
# Mirror sh to chroot jail
# ------------------------
echo 'Copying shell files...'
cd /var/www/bin
cp /bin/sh .
#
# Mirror ImageMagick to chroot jail
# ---------------------------------
echo 'Copying ImageMagick files...'
cd /var/www/usr/local/bin
cp /usr/local/bin/Magick++-config .
cp /usr/local/bin/Magick-config .
cp /usr/local/bin/Wand-config .
cp /usr/local/bin/compare .
cp /usr/local/bin/composite .
cp /usr/local/bin/conjure .
cp /usr/local/bin/convert .
cp /usr/local/bin/identify .
cp /usr/local/bin/mogrify .
cp /usr/local/bin/montage .
cd /var/www/usr/local/include
cp /usr/local/include/Magick++.h .
cd /var/www/usr/local/include/Magick++
cp /usr/local/include/Magick++/* .
cd /var/www/usr/local/include/magick
cp /usr/local/include/magick/* .
cd /var/www/usr/local/include/wand/
cp /usr/local/include/wand/* .
cd /var/www/usr/local/lib/ImageMagick-6.0.0/config
cp /usr/local/lib/ImageMagick-6.0.0/config/* .
cd /var/www/usr/local/lib
cp /usr/local/lib/libMagick++.a .
cp /usr/local/lib/libMagick++.la .
cp /usr/local/lib/libMagick.a .
cp /usr/local/lib/libMagick.la .
cp /usr/local/lib/libWand.a .
cp /usr/local/lib/libWand.la .
cp /usr/local/lib/libMagick++.so.6.1 .
cp /usr/local/lib/libMagick.so.6.1 .
cp /usr/local/lib/libWand.so.6.1 .
cd /var/www/usr/local/lib/pkgconfig
cp /usr/local/lib/pkgconfig/ImageMagick++.pc .
cp /usr/local/lib/pkgconfig/ImageMagick.pc .
cp /usr/local/lib/pkgconfig/Wand.pc .
cd /var/www/usr/local/share/ImageMagick-6.0.0
cp -R /usr/local/share/ImageMagick-6.0.0/* .
#
# Mirror jasper to chroot jail
# ----------------------------
echo 'Copying jasper files...'
cd /var/www/usr/local/bin/
cp /usr/local/bin/imgcmp .
cp /usr/local/bin/imginfo .
cp /usr/local/bin/jasper .
cd /var/www/usr/local/include/jasper
cp /usr/local/include/jasper/* .
cd /var/www/usr/local/lib
cp /usr/local/lib/libjasper.a .
cp /usr/local/lib/libjasper.la .
cp /usr/local/lib/libjasper.so.1.0 .
#
# Mirror jbigkit to chroot jail
# -----------------------------
echo 'Copying jbigkit files...'
cd /var/www/usr/local/include
cp /usr/local/include/jbig.h .
cd /var/www/usr/local/bin
cp /usr/local/bin/pbmtojbg .
cp /usr/local/bin/jbgtopbm .
cd /var/www/usr/local/lib
cp /usr/local/lib/libjbig.a .
cp /usr/local/lib/libjbig.so.1.2 .
#
# Mirror jpeg to chroot jail
# --------------------------
echo 'Copying jpeg files...'
cd /var/www/usr/local/bin
cp /usr/local/bin/icc2ps .
cp /usr/local/bin/icclink .
cp /usr/local/bin/icctrans .
cp /usr/local/bin/jpegicc .
cp /usr/local/bin/tifficc .
cp /usr/local/bin/wtpt .
cd /var/www/usr/local/include
cp /usr/local/include/icc34.h .
cp /usr/local/include/lcms.h .
cd /var/www/usr/local/lib
cp /usr/local/lib/liblcms.a .
cp /usr/local/lib/liblcms.la .
cp /usr/local/lib/liblcms.so.1.12 .
#
# Mirror libexif to chroot jail
# -----------------------------
echo 'Copying libexif files...'
cd /var/www/usr/local/include/libexif
cp /usr/local/include/libexif/* .
cd /var/www/usr/local/lib
cp /usr/local/lib/libexif.a .
cp /usr/local/lib/libexif.la .
cp /usr/local/lib/libexif.so.8.0 .
cd /var/www/usr/local/lib/pkgconfig
cp /usr/local/lib/pkgconfig/libexif.pc .
#
# Mirror mpeg-lib to chroot jail
# ------------------------------
echo 'Copying mpeg-lib files...'
cd /var/www/usr/local/include
cp /usr/local/include/mpeg.h .
cd /var/www/usr/local/lib
cp /usr/local/lib/libmpeg.a .
cp /usr/local/lib/libmpeg.so.13.1 .
#
# Mirror netpbm to chroot jail
# ----------------------------
echo 'Copying netpbm files...'
cd /var/www/usr/local/bin
cp /usr/local/bin/*ppm* .
cp /usr/local/bin/*pnm* .
cp /usr/local/bin/*pgm* .
cp /usr/local/bin/*pbm* .
cp /usr/local/bin/*pam* .
cp /usr/local/bin/*pcd* .
cd /var/www/usr/local/include
cp /usr/local/include/pam.h .
cp /usr/local/include/pammap.h .
cp /usr/local/include/pbm.h .
cp /usr/local/include/pgm.h .
cp /usr/local/include/pm.h .
cp /usr/local/include/pm_config.h .
cp /usr/local/include/pm_shhopt.h .
cp /usr/local/include/pnm.h .
cp /usr/local/include/ppm.h .
cp /usr/local/include/ppmcmap.h .
cp /usr/local/include/ppmdraw.h .
cp /usr/local/include/ppmfloyd.h .
cd /var/www/usr/local/lib
cp /usr/local/lib/libpbm.a .
cp /usr/local/lib/libpgm.a .
cp /usr/local/lib/libpnm.a .
cp /usr/local/lib/libppm.a .
cp /usr/local/lib/libpbm.so.1.0 .
cp /usr/local/lib/libpgm.so.1.0 .
cp /usr/local/lib/libpnm.so.1.0 .
cp /usr/local/lib/libppm.so.1.0 .
cd /var/www/usr/local/share/netpbm
cp /usr/local/share/netpbm/* .
#
# Mirror png to chroot jail
# -------------------------
echo 'Copying png files...'
cd /var/www/usr/local/bin
cp /usr/local/bin/libpng-config .
cd /var/www/usr/local/include/libpng
cp /usr/local/include/libpng/* .
cd /var/www/usr/local/share/doc/png
cp /usr/local/share/doc/png/* .
cd /var/www/usr/local/lib
cp /usr/local/lib/libpng.a .
cp /usr/local/lib/libpng.so.4.0 .
#
# Mirror tiff to chroot jail
# --------------------------
echo 'Copying tiff files...'
cd /var/www/usr/local/bin
cp /usr/local/bin/fax2ps .
cp /usr/local/bin/*tiff* .
cp /usr/local/bin/pal2rgb .
cp /usr/local/bin/rgb2ycbcr .
cp /usr/local/bin/thumbnail .
cd /var/www/usr/local/include
cp /usr/local/include/*tiff* .
cd /var/www/usr/local/lib
cp /usr/local/lib/libtiff.a .
cp /usr/local/lib/libtiff.so.36.1 .
#
# Mirror jhead to chroot jail
# ---------------------------
echo 'Copying jhead files...'
cd /var/www/usr/local/bin
cp /usr/local/bin/jhead .
#
# Mirror jpegtran to chroot jail
# ------------------------------
echo 'Copying jpegtran files...'
cd /var/www/usr/local/bin
cp /usr/local/bin/jpegtran .
#
echo 'Setting permissions on chroot jail...'
chmod -R 755 /var/www/usr
cd /var/www
echo 'Complete.'
_________________________________________________________________
It's fast, it's easy and it's free. Get MSN Messenger today!
http://www.msn.co.uk/messenger
Visit your host, monkey.org