установка socks5 сервера на linux (проверено на Debian)

Posted in Новости on 4 марта, 2010 by admin

Передо мной поставилась задача поднять прокси socks5 сервер на Debian, причем сложность заключалась в поднятии сокса на 2 IP с авторизацией. На ум сразу пришел squid потому что только недавно его ставил, память свежая да и в конфигах подразобрался. Ан нет! Оказывается squid ни в какой форме не поддерживает socks, что я выяснил на офф сайте, хотя по уверению многих его нужно просто пересобрать. Стал искать и сначала остановился на Dante, однако мне подсказали что он скажем не очень хорошо отрабатывает и пришлось искать альтернативу. Самое интересное что при всем нынешнем разнообразии всякого рода стаффа нет приличных proxy-серверов с поддержкой socks5. Вспонил 3proxy которую так недавно сравнивал. Ну чтож 3proxy дак 3proxy.
Потопал на сайт и скачал свежую версию. После разархивирования начался процесс компиляции который через 4 часа пошел в rm -rf. Нормальных аналогов не нашел и решил все-таки добить его.
На одном сайте нашел старенькую версию и раскрутил ее.
1 — Разархивирование
тут все просто

tar -zxvf 3proxy-0.5.3j
cd 3proxy*

2 — Компиляция
Эта версия как и все остальные не обошлась без приколов с компилированием но установив все необходимое наконец то перестало выплевывать ерроры и осталась только пачка варнов на которую я решил забить. Компилировать будем Makefile.unix из флагов линковщика которого нужно удалить «-DNOODBC». итак

make -f Makefile.unix

3 — Настройка
Переходим в образовавшуюся папку src и любуемся на полученный продукт. Теперь нужно создать конфиг с расширением cfg

mk proxy.cfg

Далее начинается момент конфигурирования. У нашего нового прокси действует следующая схема :

—МЫ——>internal_interface=3proxy-server=external_interface<——WWW——

следуя логике нам нужно задать входящий, исходящий интерфейс, авторизацию и порт.
итак

nano proxy.cfg

##ОБЩИЕ НАСТРОЙКИ

#сразу бекграундим процесс
daemon
#убираем логи(хотя можете и оставить=) Все логи хранятся в txt формате
logs /dev/null

### юзеры. Флаг CL говорит о том что пароль лежит и будет браться нешифрованным
# за другими флагами топаем на офф сайт
users login1:CL:password1
users login2:CL:password2

## socks server

#задаем авторизацию по паролю
# за другими флагами топаем на офф сайт
auth strong

#задаем демон и порт
socks -p8989
#задаем входящий/исходящий интерфейс сервера
internal ip.ad.dr.es
external ip.ad.dr.es

#аналогично настраивается proxy server
#все в принципе сервер готов к эксплуатации

./3proxy proxy.conf — старт демона
killall 3proxy — остановка

Но нам нужно 2 внешних и два внутренних интерфейса. Вот тут то и вышла загвоздка.
У автора на сайте указана следующая комбинация :

allow login
parent 1000 http ip.ad.dr.es 0
allow login2
parent 1000 http ip.ad.dr.es 0

Но она у меня ни под каким видом и ни при каких настройках НЕ ЗАРАБОТАЛА
Думаем далее. Нужно 2 интерфейса? Будет 2 сервера. копируем 3proxy получается 3proxy1.
Второй хотя и запускается с измененными параметрами но работает криво и некрасиво и вообще никак. далее увидел вот такой вот тип запуска отдельных демонов из папки src :
./proxy -i -e -p
./socks -i -e -p

i — internal
e — external
p — port
но была сразу припечатка что такой метод не поддерживает никакой авторизации. И правда нужных флагов из ФАКА не нашлось. Далее я заметил, что все вписываемые параметры практически идентичны флагам запуска из строки и каково же было мое удивление когда сначала проверив вот такой вот метод как положено
./socks -iIP.AD.DR.ES -eIP.AD.DR.ES -p8989

а потом накатав по быстрому конфиг :

daemon
log /dev/null/
socks -iIP.AD.DR.ES -eIP.AD.DR.ES -p8989

все тоже заработало причем на обоих интерфейсах
Настало время прикручивать авторизацию. В вызове из строки у нас нет такого флага но в запуске с конфигом он есть так что набросав по быстрому вот такое :

users login:CL:password
daemon
auth strong

socks -iIP.AD.DR.ES -eIP.AD.DR.ES -p8989

в оба конфига все заработало.
ЗЫ На эту «базовую настройку» я потратил 4 дня (по 13 рабочих часов)

Tags: , ,

установка zend optimizer

Posted in Новости on 4 марта, 2010 by admin

http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-i386.tar.gz
http://downloads.zend.com/optimizer/3.3.9/ZendOptimizer-3.3.9-linux-glibc23-x86_64.tar.gz

начинаем :
cd /home/
wget <ссылка с правильной архитектурой из приведенных выше>
tar -zxvf Zend*
cd Zend*/data
выбираете свою версию php (выбор из 4.2.x 4.3.x 4.4.x 5.0.x 5.1.x 5.2.x)
копируете оттуда нужный модуль в /opt/zend/ (так проще) (если нет пути то создать)
и прописываете
для Debian в /etc/php5/conf.d/zend.ini «zend_extension=/opt/zend/ZendOptimizer.so»
для CentOS в /etc/php.ini «zend_extension=/opt/zend/ZendOptimizer.so»

Вот и все. Теперь проверяем php -v . Вуаля!

Tags: , ,

настройка squid proxy для многочисленных IP с авторизацией для Debian

Posted in Новости on 4 марта, 2010 by admin

Вот такая вот интересная задача встретилась. Порыв интернет не нашел однозначного решения и решил взять из всего по чуть-чуть, получилось лучше чем думал.
Пропущу главу с установкой squid'a так как на этом этапе не должно возникнуть никаких сложностей и сразу перейду к настройке. у меня получился вот такой блок для /etc/squid3/squid.conf :

auth_param basic program /usr/lib/squid3/ncsa_auth /etc/squid3/passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users

#Задаем acl'ы для последующего использования

acl auth1 proxy_auth user1
acl auth2 proxy_auth user2
acl auth3 proxy_auth user3
acl auth4 proxy_auth user4
acl auth5 proxy_auth user5
acl auth6 proxy_auth user6
acl auth7 proxy_auth user7
acl auth8 proxy_auth user8
acl auth9 proxy_auth user9
acl auth10 proxy_auth user10
acl auth11 proxy_auth user11

#Задаем IP на которых будет слушатся сервер

http_port ip.ad.d.dr.es1:3128
http_port ip.ad.d.dr.es2:3128
http_port ip.ad.d.dr.es3:3128
http_port ip.ad.d.dr.es4:3128
http_port ip.ad.d.dr.es5:3128
http_port ip.ad.d.dr.es6:3128
http_port ip.ad.d.dr.es7:3128
http_port ip.ad.d.dr.es8:3128
http_port ip.ad.d.dr.es9:3128
http_port ip.ad.d.dr.es10:3128
http_port ip.ad.d.dr.es11:3128

#Задаем IP выхода для определенных пользователей

tcp_outgoing_address ip.ad.d.dr.es1 auth1
tcp_outgoing_address ip.ad.d.dr.es2 auth2
tcp_outgoing_address ip.ad.d.dr.es3 auth3
tcp_outgoing_address ip.ad.d.dr.es4 auth4
tcp_outgoing_address ip.ad.d.dr.es5 auth5
tcp_outgoing_address ip.ad.d.dr.es6 auth6
tcp_outgoing_address ip.ad.d.dr.es7 auth7
tcp_outgoing_address ip.ad.d.dr.es8 auth8
tcp_outgoing_address ip.ad.d.dr.es9 auth9
tcp_outgoing_address ip.ad.d.dr.es10 auth10
tcp_outgoing_address ip.ad.d.dr.es11 auth11

ip.ad.d.dr.esN — это внешние IP сервера
порт взял стандартный 3128

Самая фича в том, что не нужно менять IP прокси чтоб ввести нового пользователя, так как их распределение идет в процессе авторизации и привязывается именно к логин/пассу.

Tags: , , ,

обновление mysql 5.0 до mysql 5.1 (Debian)

Posted in Новости on 4 марта, 2010 by admin

В принципе не рекомендую данное действие, тк 5.1 еще нестабильная но вот так вот)

пишем в sources.list :

deb http://ftp.debian.org/debian/ sid main
deb-src http://ftp.debian.org/debian/ sid main
deb http://security.debian.org/ sid/updates main

делаем
apt-get update
apt-get install mysql-server-5.1 mysql-client-5.1

Все проинсталлится и запустится

ВАЖНО!!! В процессе сборки пакета вас спросит хотите ли вы заменить my.cnf на новый. Пишите Y. Со старым конфигом у вас не будет запускаться новый сервер мускула!

Tags: ,

как определить и убить zombie процесс

Posted in Новости on 4 марта, 2010 by admin

делаем поиск :

ps -ecl | grep «Z»

потом :

kill pid процесса

Tags: , ,