Проблема со squid или где еще порыть...

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
agr.dist
рядовой
Сообщения: 37
Зарегистрирован: 2013-07-22 15:38:09
Откуда: СПБ

Проблема со squid или где еще порыть...

Непрочитанное сообщение agr.dist » 2013-07-25 14:17:39

В новой конторе стоит сервер FreeBSD. На нем exim, squid из основного. Остальное мелочи. Столкнулся с проблемой невозможности выхода на FTP не принадлежащего нашей сети.

Код: Выделить всё

#
# Recommended minimum configuration:
#

acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1

# Example rule allowing access from your local networks.
# Adapt to list your (internal) IP networks from where browsing
# should be allowed
acl localnet src 192.168.100.0/24       # RFC1918 possible internal network

acl SSL_ports port 443 563
tcp_outgoing_address 0.0.0.0 all
tcp_outgoing_address 0.0.0.0 localnet
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443 563     # https
acl Safe_ports port 70          # gopher
acl Safe_ports port 210         # wais
acl Safe_ports port 1025-65535  # unregistered ports
acl Safe_ports port 280         # http-mgmt
acl Safe_ports port 488         # gss-http
acl Safe_ports port 591         # filemaker
acl Safe_ports port 777         # multiling http
acl CONNECT method CONNECT

#
# Recommended minimum Access Permission configuration:
#
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager

# Deny requests to certain unsafe ports
http_access deny !Safe_ports

# Deny CONNECT to other than secure SSL ports
http_access allow CONNECT !SSL_ports

# We strongly recommend the following be uncommented to protect innocent
# web applications running on the proxy server who think the only
# one who can access services on "localhost" is a local user
#http_access deny to_localhost

#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#

# Example rule allowing access from your local networks.
# Adapt localnet in the ACL section to list your (internal) IP networks
# from where browsing should be allowed
#http_access allow localnet
#http_access allow localhost

acl <<name>> arp <<mac_adr>>
#несколько мак адресов по тому же принципу

acl stop_files url_regex -i .mp3$ .vqf$ .rpm$ .avi$ .mpeg$ .rm$ .raw$ .wav$ .mov$ .o

#acl StopWWW dstdomain "/usr/local/etc/squid/stopWWW.acl"
acl StopWWW dstdomain  .job.ru  .joblist.ru .hh.ru .zaycev.net
acl StopJob  dstdom_regex -i job
acl StopSocNet dstdomain .vkontakte.ru .vk.com .odnoklassniki.ru .odnoklasniki.ru livejournal.com li


http_access deny nilov all
http_access allow <<name>> StopSocNet
http_access allow <<name>>
#и так же для некоторых имен

#http_access deny all stop_files

http_access deny all StopJob
http_access deny all StopWWW
http_access allow all
#http_access deny nilov

# And finally deny all other access to this proxy
http_access deny all

# Squid normally listens to port 3128
http_port 3128

# We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?

# Uncomment and adjust the following to add a disk cache directory.
cache_dir ufs /usr/local/squid/var/cache 2000 16 256

# Leave coredumps in the first cache dir
coredump_dir /usr/local/squid/var/cache

# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320


icon_directory /usr/local/etc/squid/icons
error_directory /usr/local/etc/squid/errors/ru

client_db on
cache_access_log /usr/local/squid/var/logs/access.log

конфиг сквида прилагаю.

Код: Выделить всё

# squid -v
Squid Cache: Version 3.1.20
configure options:  '--with-default-user=squid' '--bindir=/usr/local/sbin' '--sbindir=/usr/local/sbin' '--datadir=/usr/local/etc/squid' '--libexecdir=/usr/local/libexec/squid' '--localstatedir=/var/squid' '--sysconfdir=/usr/local/etc/squid' '--with-logdir=/var/log/squid' '--with-pidfile=/var/run/squid/squid.pid' '--enable-removal-policies=lru heap' '--disable-linux-netfilter' '--disable-linux-tproxy' '--disable-epoll' '--disable-translation' '--enable-auth=basic digest negotiate ntlm' '--enable-basic-auth-helpers=DB NCSA PAM MSNT SMB squid_radius_auth YP' '--enable-digest-auth-helpers=password' '--enable-external-acl-helpers=ip_user session unix_group wbinfo_group' '--enable-ntlm-auth-helpers=smb_lm' '--enable-negotiate-auth-helpers=squid_kerb_auth' '--enable-storeio=ufs diskd aufs' '--enable-disk-io=AIO Blocking DiskDaemon DiskThreads' '--enable-arp-acl' '--disable-ecap' '--disable-loadable-modules' '--enable-kqueue' '--prefix=/usr/local' '--mandir=/usr/local/man' '--infodir=/usr/local/info/' '--build=i386-portbld-freebsd8.2' 'build_alias=i386-portbld-freebsd8.2' 'CC=cc' 'CFLAGS=-O2 -pipe  -fno-strict-aliasing' 'LDFLAGS=' 'CPPFLAGS=' 'CXX=c++' 'CXXFLAGS=-O2 -pipe -fno-strict-aliasing' 'CPP=cpp' --with-squid=/usr/ports/www/squid31/work/squid-3.1.20 --enable-ltdl-convenience
версия и опции сквида прилагаю

FreeBSD v8.2-stable (пока не обновляю, ибо "работает - не трогай")

сегодня столкнулся с еще одной проблемой. Думаю проблема там же. Ставил на вторую рабочую машину (для себя) Gentoo и не смог подключиться к зеркалу (mirror.yandex.ru). Так что проблема не только с внешними FTP. Gentoo сообщила "error loading http://mirror.yandex.ru" при попытке links mirror.yandex.ru, хотя пинг проходит. На тестовой машине FreeBSD подключенной к сети не проходит portsnap и cvsup(в момент развертки тестовой машины и обнаружил проблемы с доступом к FTP). На рабочем FreeBSD сервере все проходит. Порты обновляются, через них все устанавливается.
Уже не знаю что поковырять. Раньше с фряхой не общался( Предыдущий админ дела не передавал :( Разбираюсь сам.
За все советы по допиливанию буду очень благодарен.
Нужные логи и конфиги могу предоставить в любой день(дома копию сервера развернул)
Последний раз редактировалось f_andrey 2013-07-25 14:25:50, всего редактировалось 1 раз.
Причина: Автору. пожалуйста, выбирайте соответствующий раздел форума.
Долго пилим - быстро едем.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
gumeniuc
ст. сержант
Сообщения: 343
Зарегистрирован: 2009-11-08 15:46:05
Откуда: md
Контактная информация:

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение gumeniuc » 2013-07-25 23:09:54

ну а что в access.log при попытке входа на ftp ?
Да шо ему сделается...

agr.dist
рядовой
Сообщения: 37
Зарегистрирован: 2013-07-22 15:38:09
Откуда: СПБ

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение agr.dist » 2013-07-26 8:07:05

1374815928.633 100 192.168.100.90 TCP_MISS/503 4014 GET ftp://ftp.freebsd.org/pub/FreeBSD/ - DIRECT/ftp.freebsd.org text/html
вот что выдает access.log
Долго пилим - быстро едем.

lordlev
рядовой
Сообщения: 33
Зарегистрирован: 2012-12-02 8:51:16

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение lordlev » 2013-07-26 8:15:54

Тогда стоит начать с

Код: Выделить всё

cat /etc/rc.conf
Не похоже на проблемы со сквидом, скорее дело в ipfw или pf

agr.dist
рядовой
Сообщения: 37
Зарегистрирован: 2013-07-22 15:38:09
Откуда: СПБ

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение agr.dist » 2013-07-26 9:03:51

Код: Выделить всё

# -- IPF
ipfilter_enable="YES"                    # Start ipf firewall
ipfilter_rules="/etc/ipf.rules"          # loads rules definition text file
ipmon_enable="YES"                       # Start IP monitor log
ipmon_flags="-D /var/log/ipmon.log"      # D = start as daemon
ipnat_enable="YES"                       # Start ipnat function
ipnat_rules="/etc/ipnat.rules"           # rules definition file for ipnat

keymap="ru.koi8-r.win"
scrnmap="koi8-r2cp866"
font8x16="cp866-8x16"
все остальное почта openvpn и т.д.
что то я не вижу тут проблем... или плохо смотрю?
Долго пилим - быстро едем.

lordlev
рядовой
Сообщения: 33
Зарегистрирован: 2012-12-02 8:51:16

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение lordlev » 2013-07-26 9:30:58

Вот и чудненько.
Да это что б не гадать какой файервол используется
Теперь внимательно смотрим на правила

Код: Выделить всё

/etc/ipf.rules 
И там, скорее всего, находим запрет на ftp. Или запрет всего, но разрешение списка портов. Или ... или еще чего :)

lordlev
рядовой
Сообщения: 33
Зарегистрирован: 2012-12-02 8:51:16

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение lordlev » 2013-07-26 9:45:01

и еще смущает 2 момента:
- сквид собран без поддержки файервола (или я плохо вижу). Как-то не кузявно ... Но, может так и надо ...
- сквид собран и настроен без transparent. Т.е., КМК, на клиентских компах НАДО явно указать, что используется прокси.

Это все ИМХО, пусть более умные поправят :)

agr.dist
рядовой
Сообщения: 37
Зарегистрирован: 2013-07-22 15:38:09
Откуда: СПБ

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение agr.dist » 2013-07-26 9:57:10

проблема скорее всего в файерволе. сижу курю маны.
- сквид собран без поддержки файервола (или я плохо вижу). Как-то не кузявно ... Но, может так и надо ...
как лучше пересобрать, чтоб существующие правила не потерлись?
на клиентских компах НАДО явно указать, что используется прокси
это делает доменная служба на 2008 серваке.
Долго пилим - быстро едем.

lordlev
рядовой
Сообщения: 33
Зарегистрирован: 2012-12-02 8:51:16

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение lordlev » 2013-07-26 10:41:42

Точно, ntlm не заметил... Ну да сегодня простительно :)
Пересобирать не спеши, раз вообще раньше не занимался BSD/сквидом.
Разберись сначала с файерволом

agr.dist
рядовой
Сообщения: 37
Зарегистрирован: 2013-07-22 15:38:09
Откуда: СПБ

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение agr.dist » 2013-07-26 11:06:10

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

Код: Выделить всё

traceroute: sendto: Network is unreachable
traceroute: wrote google.ru 40 chars, ret=-1
даже на простые url, на и на

Код: Выделить всё

traceroute: sendto: Network is unreachable
 1 traceroute: wrote 74.125.143.94 40 chars, ret=-1
такая же фигня. виндовый tracert нормально все прописывает. может тут порыть? подкиньте идейку.
dns ес что на винде стоит, поэтому и пробовал на фряхе не только по url, но и по ip трассировать.
куда копать дальше уже не знаю...начинаю тупить...подкиньте свежую идейку!!!
Долго пилим - быстро едем.

lordlev
рядовой
Сообщения: 33
Зарегистрирован: 2012-12-02 8:51:16

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение lordlev » 2013-07-26 11:27:33

Так. стоп.
Начнем с начала:
- что за ОС стоит на проблемной?
- ресурсы в пределах src 192.168.100.0/24 все видны, везде можешь зайти?
- на НЕ проблемных нормально hhtp, ftp ?
- проблемная входит в домен?

agr.dist
рядовой
Сообщения: 37
Зарегистрирован: 2013-07-22 15:38:09
Откуда: СПБ

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение agr.dist » 2013-07-26 12:57:42

в качестве шлюза, файервола, почтовика стоит FreeBSD. потом стоит win ser 2003 и 2008. 2003 в основном в качестве репликанта. на 2008 1с, dns, dhcp, терминалы, файл сервер. сервак на хорошем железе, так что проблем с ним нет.
ну и дальше пользовательские компьютеры.
проблема в том, что я не могу попасть на любой внешний ftp с любой машины, кроме самой freebsd. не переходит ни по url фтпшника, ни по его IP.
все ресурсы в сети и за ее пределами доступны и работают. с http проблема только на gentooшной машине, но это мелочи.
но еще раз повторю доступ к ftp есть только с freebsd
Долго пилим - быстро едем.

lordlev
рядовой
Сообщения: 33
Зарегистрирован: 2012-12-02 8:51:16

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение lordlev » 2013-07-26 13:01:29

смотри файервол, без вариантов.

agr.dist
рядовой
Сообщения: 37
Зарегистрирован: 2013-07-22 15:38:09
Откуда: СПБ

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение agr.dist » 2013-07-26 13:04:39

нет там никаких ограничений для моей машины! все разрешил для себя любимого. меня озадачивает
traceroute выдает

Код: Выделить всё
traceroute: sendto: Network is unreachable
traceroute: wrote google.ru 40 chars, ret=-1

даже на простые url, на и на

Код: Выделить всё
traceroute: sendto: Network is unreachable
1 traceroute: wrote 74.125.143.94 40 chars, ret=-1
Долго пилим - быстро едем.

agr.dist
рядовой
Сообщения: 37
Зарегистрирован: 2013-07-22 15:38:09
Откуда: СПБ

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение agr.dist » 2013-07-26 13:05:48

на остальных можно не обращать внимания. пока...
а вот мне оч надо. поэтому и убрал все ограничения для себя.
Долго пилим - быстро едем.

lordlev
рядовой
Сообщения: 33
Зарегистрирован: 2012-12-02 8:51:16

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение lordlev » 2013-07-26 13:10:37

Код: Выделить всё

Traceroute — это служебная компьютерная программа, предназначенная для определения маршрутов следования данных в сетях TCP/IP. Traceroute может использовать разные протоколы передачи данных в зависимости от операционной системы устройства. Такими протоколами могут быть UDP, TCP, ICMP или GRE). Компьютеры с установленной операционной системой Windows используют ICMP-протокол, при этом операционные системы Linux и маршрутизаторы Cisco — протокол UDP.

Код: Выделить всё

Часто встречается заблуждение, что traceroute, как и ping, работает только по протоколу ICMP. В связи с этим начинающие администраторы, разрешив в файерволе протокол ICMP, получают рабочий ping и нерабочий traceroute. Для исправления такой ситуации необходимо дополнительно разрешить в файерволе UDP-пакеты на порты выше 33434 (в некоторых источниках указано, что достаточно указать диапазон портов от 33434 до 33534).

agr.dist
рядовой
Сообщения: 37
Зарегистрирован: 2013-07-22 15:38:09
Откуда: СПБ

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение agr.dist » 2013-07-26 13:26:41

Код: Выделить всё

# loopback
pass in quick on lo0 all
pass out quick on lo0 all

#Разрешаем все для внутренних арресов
pass in quick on bge0 all
pass out quick on bge0 all

#Пинги исходящие разрешаем
pass out quick on em0 proto icmp all keep state

#Пинги входящие разрешаем
pass in log quick on em0 proto icmp from any to <IPcompany> icmp-type 8 keep state

#OpenVpn разрешаем из вне
pass in log quick on em0 proto udp from any to <IPcompany> port = 3333 keep state

#Разрешаем SSH для OpenVPN
pass in log quick on tun0 proto tcp from any to 10.10.10.1 port = 2222 keep state

#Разрешаем RDP для OpenVPN
pass in log quick on tun0 all
pass out log quick on tun0 all
pass in log quick on tun0 proto tcp from any to any port = 3389 keep state

#Разрешаем POP и IMAP для OpenVPN
pass in log quick on tun0 proto tcp from any to any port = 110 keep state
pass in log quick on tun0 proto tcp from any to any port = 995 keep state
pass in log quick on tun0 proto tcp from any to any port = 993 keep state

#Исходящие www разрешены
pass out quick on em0 proto tcp from <IPcompany> to any port = 80 keep state
pass out quick on em0 proto tcp from <IPcompany> to any port = 443 keep state

#Разрешаем FTP
pass out quick on em0 proto tcp from 192.168.100.1 to any port = 20 keep state
pass out quick on em0 proto tcp from 192.168.100.1 to any port = 21 keep state

#Разрешаем NTP
pass out quick on em0 proto udp from any to any port = 123 keep state

#Разрешаем DNS
pass out quick on em0 proto tcp from any to any port = 53 keep state
pass out quick on em0 proto udp from any to any port = 53 keep state

#Разрешаем ICQ
pass out quick on em0 proto tcp from any to any port = 5190 keep state

#Разрешаем исходящий SMTP
pass out quick on em0 proto tcp from <IPcompany> to any port = 25 keep state
pass out quick on em0 proto tcp from <IPcompany> to any port = 465 keep state
pass out quick on em0 proto tcp from any to any port = 993 keep state
#Разрешаем входяшие SMTP
pass in log quick on em0 proto tcp from any to <IPcompany> port = 25 keep state
pass in log quick on em0 proto tcp from any to <IPcompany>9 port = 465 keep state
pass in log quick on tun0 proto tcp from any to 10.10.10.1 port = 25 keep state


## <name>
pass out quick on em0 proto tcp from 192.168.100.90 to any keep state
pass out quick on em0 proto udp from 192.168.100.90 to any keep state
прочитал есть траблы с файерволом и ftp на фряхе. попробую использовать пассивный режим ftp. или есть какое то более правильное решение?
Долго пилим - быстро едем.

lordlev
рядовой
Сообщения: 33
Зарегистрирован: 2012-12-02 8:51:16

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение lordlev » 2013-07-26 13:43:39

сравни
http://www.linuxcenter.ru/lib/articles/ ... eway.phtml
и обрати внимание на [3] это для traceroute.
Ну и в плане ftp проверяй

agr.dist
рядовой
Сообщения: 37
Зарегистрирован: 2013-07-22 15:38:09
Откуда: СПБ

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение agr.dist » 2013-07-26 14:46:30

lordlev спасиб тебе огромное за хелп) уже начал ходить через http://ftp скоро доковыряю и ftp://ftp
до этого даже так не пускало. все таки зря на squid думал. ipfw резал. покурю еще манов и нормально допилю.
Долго пилим - быстро едем.

lordlev
рядовой
Сообщения: 33
Зарегистрирован: 2012-12-02 8:51:16

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение lordlev » 2013-07-26 14:55:49

А ты "все там нормально" :)
только не путай ipf и ipfw ;)

agr.dist
рядовой
Сообщения: 37
Зарегистрирован: 2013-07-22 15:38:09
Откуда: СПБ

Re: Проблема со squid или где еще порыть...

Непрочитанное сообщение agr.dist » 2013-07-26 16:36:37

ну у меня стояло только на out. сразу не обратил внимания.
только не путай ipf и ipfw ;)
очепятка :)
Долго пилим - быстро едем.