Jika kebetulan diantara kalian memakai OS Ubuntu versi Lama yang sudah EOL karena alasan hardware atau lainnya tapi ingin menginstall Squid v3-3x yang support SSL silahkan lanjutkan membaca sampai selesai :D.
Sebelum masuk ke setup di bawah, ada baik mengganti default repository Ubuntu terlebih dahulu dengan cara ini, karena di saat sekarang yakni 2017 repository default ubuntu sudah di pindah...Oke lanjut ya dengan masuk ke tahap install squid v3 support ssl dengan cara compile dari source code.
- Jalankan update dan install s/d versi terakhirnya lucid :
apt-get update
apt-get upgrade
apt-get dist-upgrade
- Install paket kebutuhannya :
apt-get install build-essential fakeroot devscripts gawk gcc-multilib dpatch libssl-dev perl g++ equivs
apt-get build-dep squid3
apt-get build-dep openssl
- Buat folder/direktori baru bernama "source" di /home kemudian masuk ke direktori tersebut:
mkdir /home/source
cd /home/source
- Download source kode squid 3.4:
wget http://www.squid-cache.org/Versions/v3/3.4/squid-3.4.14.tar.gz
tar xzf squid-3.4.14.tar.gz
- Masuk ke direktori squid yang baru di ektraks, misal nama direktori nya "squid3-3.4"
cd /home/ute/squid3-3.4
- Ada baiknya lakukan pengecekan error dulu pada source code yang akan kita compile sebelumnya:
./configure errors
make errors
make install errors
**Cat: Jika mau, bisa liat opsi help nya bisa dengan command di bawah ini:
./configure -h
- Saatnya mengkompile dengan tiga tahap di bawah ini:
./configure --prefix=/etc/squid --enable-ssl --enable-ssl-crtd
**cat :
- di /etc nantinya akan muncul direktori bernama "squid" dan berisi sub folder bin, etc, libexec, sbin, share, dan var.
- file squid.conf ada di /etc/squid/etc
- daemon ada di /etc/squid/sbin
Kemudian
make
Terakkhir
make install
- Beri permissions file log yang akan di generate oleh squid nanti nya.
chmod 777 /etc/squid/var/logs
atau
chown -R nobody /etc/squid/var/logs
- Buat script bernama "squid" yang akan di letakan pada /etc/init.d dan isikan dengan script di bawah ini.
nano /etc/init.d/squid
Copy Paste isi Script di Bawah ini :
#! /bin/sh
#
# squid3 Startup script for the SQUID HTTP proxy-cache.
#
# Version: @(#)squid3.rc 1.0 21-Des-2017 ncuptea@live.com
#
### BEGIN INIT INFO
# Provides: squid
# Required-Start: $network $remote_fs $syslog
# Required-Stop: $network $remote_fs $syslog
# Should-Start: $named
# Should-Stop: $named
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Squid HTTP Proxy version 3.x
### END INIT INFO
NAME=squid
DESC="Squid HTTP Proxy 3.x"
DAEMON=/etc/squid/sbin/squid #SESUAIKAN
PIDFILE=/etc/squid/var/run/$NAME.pid #SESUAIKAN
CONFIG=/etc/squid/etc/squid.conf #SESUAIKAN
SQUID_ARGS="-YC -f $CONFIG"
[ ! -f /etc/default/squid ] || . /etc/default/squid
. /lib/lsb/init-functions
PATH=/bin:/usr/bin:/sbin:/usr/sbin
[ -x $DAEMON ] || exit 0
ulimit -n 65535
find_cache_dir () {
w=" " # space tab
res=`sed -ne '
s/^'$1'['"$w"']\+[^'"$w"']\+['"$w"']\+\([^'"$w"']\+\).*$/\1/p;
t end;
d;
:end q' < $CONFIG` [ -n "$res" ] || res=$2 echo "$res" } find_cache_type () { w=" " # space tab res=`sed -ne ' s/^'$1'['"$w"']\+\([^'"$w"']\+\).*$/\1/p; t end; d; :end q' < $CONFIG` [ -n "$res" ] || res=$2 echo "$res" } start () { cache_dir=`find_cache_dir cache_dir` cache_type=`find_cache_type cache_dir` # # Create spool dirs if they don't exist. # if [ "$cache_type" = "coss" -a -d "$cache_dir" -a ! -f "$cache_dir/stripe" ] || [ "$cache_type" != "coss" -a -d "$cache_dir" -a ! -d "$cache_dir/00" ] then log_warning_msg "Creating $DESC cache structure" $DAEMON -z -f $CONFIG fi umask 027 ulimit -n 65535 cd $cache_dir start-stop-daemon --quiet --start \ --pidfile $PIDFILE \ --exec $DAEMON -- $SQUID_ARGS < /dev/null return $? } stop () { PID=`cat $PIDFILE 2>/dev/null`
start-stop-daemon --stop --quiet --pidfile $PIDFILE --exec $DAEMON
#
# Now we have to wait until squid has _really_ stopped.
#
sleep 2
if test -n "$PID" && kill -0 $PID 2>/dev/null
then
log_action_begin_msg " Waiting"
cnt=0
while kill -0 $PID 2>/dev/null
do
cnt=`expr $cnt + 1`
if [ $cnt -gt 24 ]
then
log_action_end_msg 1
return 1
fi
sleep 5
log_action_cont_msg ""
done
log_action_end_msg 0
return 0
else
return 0
fi
}
case "$1" in
start)
log_daemon_msg "Starting $DESC" "$NAME"
if start ; then
log_end_msg $?
else
log_end_msg $?
fi
;;
stop)
log_daemon_msg "Stopping $DESC" "$NAME"
if stop ; then
log_end_msg $?
else
log_end_msg $?
fi
;;
reload|force-reload)
log_action_msg "Reloading $DESC configuration files"
start-stop-daemon --stop --signal 1 \
--pidfile $PIDFILE --quiet --exec $DAEMON
log_action_end_msg 0
;;
restart)
log_daemon_msg "Restarting $DESC" "$NAME"
stop
if start ; then
log_end_msg $?
else
log_end_msg $?
fi
;;
status)
status_of_proc -p $PIDFILE $DAEMON $NAME && exit 0 || exit 3
;;
*)
echo "Usage: /etc/init.d/$NAME {start|stop|reload|force-reload|restart|status}"
exit 3
;;
esac
exit 0
Harap sesuaikan yang di tandai merah di atas
- Rubah script file squid pada /etc/init.d supaya bisa di jalankan nantinya
chown -x /etc/init.d/squid
atau bisa
chmod 777 /etc/init.d/squid
- Rubah permissions untuk direktori swap yang ada di /etc/squid/var/cache/squid :
chown -R nobody /etc/squid/var/cache/squid
- CATATAN :
Command squid -z berubah menjadi /etc/squid/sbin/squid -z saat nanti akan membuat swap nya.
Selesai tahapan install nya, selamat mencoba.
Untuk konfigurasi squidnya supaya bisa nge-cache https nanti yah, karena saya belum merasa yakin untuk mempostingnya saat-saat sekarang.
No comments:
Post a Comment
Berkomentarlah dengan bijak untuk pengembangan dan sekaligus menjadi pembelajaran kita bersama.
Pilih Name/Url untuk mempermudah memasukan id anda!