Category Archives: proxy

SOCKS

http://widecap.ru/socks/
http://av5.com/?action=jns,oread,read_issue&journalid=1&issueid=50&articleid=514&sess_only_my_journals=0&sess_only_my_issues=0&sess_change_lang=ru

3proxy

3proxy.ru
3Proxy is free tiny cross-platform (Win32/Win64&Unix) proxy servers set. It includes HTTP proxy with HTTPS and FTP support, SOCKSv4/SOCKSv4.5/SOCKSv5 proxy, POP3 proxy, SMTP proxy, AIM/ICQ proxy, MSN messenger / Live messenger proxy, FTP proxy, caching DNS proxy, TCP and UDP portmappers.

You can use every proxy as a standalone program (socks, proxy, tcppm, udppm, pop3p) or use combined program (3proxy). Combined proxy additionally supports features like access control, bandwidth limiting, limiting daily/weekly/monthly traffic amount, proxy chaining, log rotation, syslog and ODBC logging, etc.

It’s created to be small, simple and yet very functional.

dante socks

/usr/ports/net/dante

пример конфигурации

logoutput: /var/log/socks/socksd.log
internal: re0 port = 1080
internal: 127.0.0.1 port = 1080
external: rl0
#отрубаю авторизацию. хотя возможно имело смысл использовать.
method: username none
#user.privileged: sockd
#user.notprivileged: sockd
#user.libwrap: sockd
#настройки клиентов: разрешенная подсеть клиента
client pass {
from: 192.168.1.0/24 port 1-65535 to: 0.0.0.0/0
}
client block {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect error
}
block {
from: 0.0.0.0/0 to: 127.0.0.0/8
log: connect error
}
#пускаем разрешенных клиентов к аське/мэйл.ру агенту и заносим в лог. на всякий случай
pass {
from: 192.168.1.0/24 to: login.icq.com
log: connect error
}
pass {
from: 192.168.1.0/24 to: 83.69.96.123/32
log: connect error
}
pass {
from: 192.168.1.0/24 to: mra.mail.ru
log: connect error
}
pass {
from: 192.168.1.0/24 to: mrim.mail.ru
log: connect error
}
pass {
from: 192.168.1.0/24 to: .aol.com
log: connect error
}
#это необходимо для какого то приложения. не помню уже точно
pass {
from: 192.168.1.0/24 to: 194.186.55.36/32
log: connect error
}#подсети аськи
pass {
from: 192.168.1.0/24 to: 205.188.0.0/16
protocol: tcp udp
}
pass {
from: 192.168.1.0/24 to: 64.12.0.0/16
protocol: tcp udp
log: connect error
}
#остальных блочим.
block {
from: 0.0.0.0/0 to: 0.0.0.0/0
log: connect error

frox (+squid)

При установке мне не удалось настроить антивирусную проверку.
После проверки антивирусом, передаётся файл нулевого размера. (
Также не удалось использовать для антивирусной проверки havp стоящий перед squid – от него получаем 403.  Поэтому в squid.conf добавил, чтоб кэшировал:

acl Scan_FTP proto FTP
always_direct allow Scan_FTP

#Listen 127.0.0.1
#frox работать на этом адресе у меня не захотел, но это похоже просто такая фитча.=

——————— frox.conf ———————–
#указываем внутренний адрес
Listen 192.168.?.?

WorkingDir /var/spool/frox
DontChroot Yes

LogLevel 15
LogFile /var/log/squid/frox/frox.log

APConv yes

AllowNonASCII yes

CacheModule http
HTTPProxy 127.0.0.1:3128
MinCacheSize 5
CacheAll yes

ACL Allow * – * 21
———————————–

squid + squidGuard + SARG

> squid install options
Enable delay pools + // позволяет распределяем ширину канала между пользователями
Enable SNMP support + // MRTG чтоб можно было прицепить
Enable ident (RFC 931) lookups –
Enable ACLs based on ethernet address + // наверно может пригодиться для ужесточения безопасности
Enable transp. proxying with IPFilter +
Enable the aufs storage scheme +

> parts of squid.conf

/* вопрос анонимности squid’a */
http_port :3128 // для локального использования только

via off
forwarded_for off

header_access Cache-Control deny all

/*проверить можно здесь: www.proxyjudge.com */

> rebuild_squidGuard_base.sh
#!/bin/sh
/usr/local/bin/squidGuard -C all
chown -R squid /var/db/squidGuard/
killall -HUP squid

> rc.ipfw
/* Don’t let them bypass the proxy (with exception of lan) */
$fw 30 deny tcp from any to not $int_net dst-port 80 via $int_if
$fw 31 deny udp from any to not $int_net dst-port 80 via $int_if

> sarg_report.sh

#!/usr/local/bin/bash

DATE_END=$(date +%d/%m/%Y)

case “$1” in
daily )
DATE_START=$(date -v-1d +%d/%m/%Y)
;;
weekly )
DATE_START=$(date -v-1w +%d/%m/%Y)
;;
monthly )
DATE_START=$(date -v-1m +01/%m/%Y)
DATE_END=$(date -v-1m +31/%m/%Y)
;;
* )
exit 1
;;
esac

/usr/local/bin/sarg -l /var/log/squid/access.log -o /www/proxy/reports/$1 -d $DATE_START-$DATE_END

if [ $1 = monthly ]
then
/usr/local/sbin/squid -k rotate
fi

exit 0

> crontab
00 00 * * * /root/sarg/sarg-report.sh daily
00 01 * * 1 /root/sarg/sarg-report.sh weekly
30 02 1 * * /root/sarg/sarg-report.sh monthly