Mysql Authentication in Squid
[root@station39 ~]# yum install *mysql* *squid* *gcc* -y
===> Download mysql_auth-0.8.tar.gz
[root@station39 ~]# /etc/init.d/mysqld restart [root@station39 ~]# mysqladmin password "password" [root@station39 ~]# useradd proxy [root@station39 ~]# passwd proxy [root@station39 ~]# su - proxy [proxy@station39 ~]$ wget http://people.arxnet.hu/airween/mysql_auth/mysql_auth-0.8.tar.gz [proxy@station39 ~]$ tar xvzf mysql_auth-0.8.tar.gz [proxy@station39 ~]$ cd mysql_auth-0.8 [proxy@station39 mysql_auth-0.8]$ vim squid.sql ####################################################### CREATE DATABASE squid; use squid; DROP TABLE IF EXISTS `auth`; CREATE TABLE `auth` ( `username` varchar(25) default NULL, `password` varchar(25) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1; LOCK TABLES `auth` WRITE; INSERT INTO `auth` VALUES ('username','username '); UNLOCK TABLES; ####################################################### [proxy@station39 mysql_auth-0.8]$ exit [root@station39 squid]# mysql -u root -p Enter password: mysql > CREATE USER 'squid'@'localhost' IDENTIFIED BY 'squid'; mysql> GRANT ALL PRIVILEGES ON `squid` . * TO 'squid'@'localhost'; mysql> exit [root@station39 squid]# su - proxy [proxy@station39 ~]$ cd mysql_auth-0.8 [proxy@station39 mysql_auth-0.8]$ mysql -u root -p < squid.sq [proxy@station39 mysql_auth-0.8]$ cd src [proxy@station39 src]$ vim mysql_auth.conf ####################################################### database squid table auth user_column username ####################################################### [proxy@station39 src]$ cd .. [proxy@station39 mysql_auth-0.8]$ cp Makefile Makefile_org [proxy@station39 mysql_auth-0.8]$ vim Makefile ####################################################### CC = gcc CFLAGS = -I/usr/include/mysql -L/usr/lib/mysql LDFLAGS = -lmysqlclient SRC = src OBJS = $(SRC)/mysql_auth.o $(SRC)/confparser.o $(SRC)/mypasswd.o INSTALL = /usr/bin/install CONF = $(SRC)/mysql_auth.conf all : mysql_auth mypasswd clean: rm -rf src/*.o *.o mysql_auth mypasswd mysql_auth: $(OBJS) $(CC) -o $@ $(SRC)/mysql_auth.c $(SRC)/confparser.c $(LDFLAGS) $(CFLAGS) mypasswd: $(OBJS) $(CC) -o $@ $(SRC)/mypasswd.c $(SRC)/confparser.c $(LDFLAGS) $(CFLAGS) install: $(INSTALL) -o nobody -g nobody -m 755 mysql_auth /usr/local/squid/libexec/mysql_auth $(INSTALL) -o root -g root -m 700 mypasswd /usr/local/bin/mypasswd $(INSTALL) -o nobody -g nobody -m 600 $(CONF) /usr/local/squid/etc/mysql_auth.conf $(INSTALL) -o nobody -g nobody -m 600 $(CONF) /usr/local/squid/etc/mysql_auth.conf.default ####################################################### [proxy@station39 mysql_auth-0.8]$ make [proxy@station39 mysql_auth-0.8]$ su – root [root@station39 ~]# cd /home/proxy [root@station39 proxy]# mkdir -p /usr/local/squid/libexec [root@station39 proxy]# mkdir /usr/local/squid/etc [root@station39 proxy]# make install [root@station39 proxy]# cd /usr/local/squid/libexec [root@station39 proxy]# ./mysql_auth {Username} {Password} # Press Enter Out Giving Below OK # Press Ctrl+c [root@station39 proxy]# cd /usr/local/squid/libexec [root@station39 libexec]# cd /home/proxy/mysql_auth-0.8 [root@station39 libexec]# install -o squid -g squid -m 755 mysql_auth /usr/lib/squid/mysql_auth [root@station39 libexec]# install -o root -g root -m 700 mypasswd /usr/local/bin/squid-passwd [root@station39 libexec]# install -o squid -g root -m 600 src/mysql_auth.conf /usr/local/squid/etc/mysql_auth.conf [root@station39 libexec]# install -o squid -g root -m 600 src/mysql_auth.conf /usr/local/squid/etc/mysql_auth.conf.default [root@station39 libexec]# cd /etc/squid [root@station39 squid]# cp squid.conf squid.conf_org [root@station39 squid]# vim squid.conf Search The Line /auth_param And Add Lines ####################################################### auth_param basic program /usr/lib/squid/mysql_auth auth_param basic children 5 auth_param basic realm Magnet Internet Authentication auth_param basic credentialsttl 2 hours auth_param basic casesensitive off acl mysql proxy_auth REQUIRED # Add This Line Below That Line “acl CONNECT method CONNECT” http_access allow mysql ####################################################### [root@station39 squid]# /etc/init.d/squid restart [root@station39 squid]# /etc/init.d/mysqld restart
sir ye 32-bit ke liye hai 64-bit ke liye vim Makefile me path change hota hai.
ReplyDelete