Jak skonfigurowa

Konfiguracja serwerów, usług, itp.
Awatar użytkownika
tomek-debian
Posty: 33
Rejestracja: 28 października 2013, 09:33

Jak skonfigurować proxy posiadające dwie karty sieciowe? czego tu brakuje ?

Post autor: tomek-debian »

Witam Potrzebuję skonfigurować serwer proxy dla serwerów i stacji klienckich z systemem linux.

Siec wygląda następująco:
Komputery klienckie znajdują się w podsieci odciętej od internetu 192.168.1.0/24 (przykładowy komputer kliencki 192.168.1.5).

Serwer proxy posiada dwie karty sieciowe jedna w sieci klientów (np 192.168.1.200) i druga w podsieci 192.168.2.0/24 (np 192.168.2.200) która to podsieć ma całkowicie odblokowany dostęp do internetu.

Komunikacja klientów z internetem ma wyglądać następująco:

Zapytanie o stronę
klient (192.168.1.5) -> 192.168.1.200 adres od strony sieci lokalnej serwer proxy adres od strony internetu 192.168.2.200 -> brama internetowa

Wysłanie strony do klienta przez serwer proxy

klient (192.168.1.5) <- 192.168.1.200 adres od strony sieci lokalnej serwer proxy adres od strony internetu 192.168.2.200 <- brama internetowa

Ważne jest aby cache'owane były duże pliki (od 100kB do 500MB) Serwer ma 8GB RAM, i 64GB powierzchni dyskowej.

Z proxy będę korzystał jawnie przez przekierowanie w przeglądarce.


Mój plik konfiguracyjny ktory wzorowałem na konfiguracji ze strony
http://www.linuxexpert.pl/posts/2055/sq ... iguracyjny
wyglada aktualnie tak:

Kod: Zaznacz cały

cache_mgr zenek@domena.zenka.pl

http_port 3128

# port na którym wymienia informację z innymi serwerami proxy (0 wyłącza)
icp_port 0

#### użytkownik i grupa serwera proxy
cache_effective_user proxy
cache_effective_group proxy

####
redirect_rewrites_host_header off
cache_replacement_policy GDSF

#### wielkość zasobów udostępnianych przez system #
cache_mem 16 MB
cache_dir ufs /cache/ 200 16 256 maximum_object_size  12000 KB

no_cache deny QUERY


acl localnet src 192.168.1.0/255.255.255.0
acl Safe_ports port 80 433 210 119 70 21 1025-65535
acl CONNECT method  CONNECT
acl all src 0.0.0.0/0.0.0.0
http_access allow localnet
http_access deny !Safe_ports
http_access deny CONNECT
http_access deny all

#####
logi cache_access_log /var/log/squid3/access.log
log_icp_queries off
buffered_logs on

Kiedy patrzę na ten plik od razu zuca mi sie w oczy brak jakiegokolwiek wpisu dotyczącego sieci 192.168.2.0/24 ale nie wiem gdzie i jak go umieścić bo podejrzewam ze tu jest problem.

Po ustawieniu na komputerze klienckim adresu proxy 192.168.2.1:3128 w przeglądarce mam komunikat serwer proxy odrzuca połączenia. W pliku log /var/log/squid3/access.log nie ma nic nawet jednej linijki czegokolwiek.

Nie dokonywałem żadnych ustawień w iptables jeśli są jakieś wymagane to proszę tez o pomoc.
Awatar użytkownika
f1.micro
Beginner
Posty: 119
Rejestracja: 24 lutego 2009, 11:32
Lokalizacja: Kraków

Post autor: f1.micro »

Kod: Zaznacz cały

squid3 -k reconfigure
Tak powinieneś zobaczyć błędy w konfiguracji

Kod: Zaznacz cały

netstat -ltp4 | grep [color=#3E3E3E]3128
[/color]
Potwierdzasz że squid nasłuchuje.

Pokaż jeszcze dla pewności:

Kod: Zaznacz cały

ifconfig -a
cat /etc/resolv.conf
ping -I eth0 -c1 8.8.8.8  #eth0 albo 1 w zależności gdzie masz dopisany adres z wyjściem na świat
ip ro
Awatar użytkownika
tomek-debian
Posty: 33
Rejestracja: 28 października 2013, 09:33

Post autor: tomek-debian »

Dzieki za podpowiedź z poleceniem

squid3 -k reconfigure

Bazując na podpowiedziach dokonałem poprawek i plik wygląda teraz tak:

Kod: Zaznacz cały

cache_mgr zenek@domena.zenka.pl

http_port 3128

# port na którym wymienia informację z innymi serwerami proxy (0 wyłącza)
icp_port 0

#### użytkownik i grupa serwera proxy
cache_effective_user proxy
cache_effective_group proxy

####
redirect_rewrites_host_header off
cache_replacement_policy heap GDSF

#### wielkość zasobów udostępnianych przez system #
cache_mem 16 MB
cache_dir ufs /cache/ 200 16 256
maximum_object_size  120 KB

#no_cache deny QUERY


acl localnet src 192.168.1.0/255.255.255.0
acl Safe_ports port 80 433 210 119 70 21 1025-65535
acl CONNECT method  CONNECT
acl all src all
http_access allow localnet
http_access deny !Safe_ports
http_access deny CONNECT
http_access deny all

#####
cache_access_log /var/log/squid3/access.log
log_icp_queries off
buffered_logs on
aktualnie polecenie
squid3 -k reconfigure
zwraca

Kod: Zaznacz cały

2015/12/02 14:17:42| WARNING: Netmasks are deprecated. Please use CIDR masks instead.
2015/12/02 14:17:42| WARNING: IPv4 netmasks are particularly nasty when used to compare IPv6 to IPv4 ranges.
2015/12/02 14:17:42| WARNING: For now we will assume you meant to write /24
2015/12/02 14:17:42| WARNING: (B) '::/0' is a subnetwork of (A) '::/0'
2015/12/02 14:17:42| WARNING: because of this '::/0' is ignored to keep splay tree searching predictable
2015/12/02 14:17:42| WARNING: You should probably remove '::/0' from the ACL named 'all'
squid: ERROR: No running copy
Pow ykonaniu polecenia

netstat -ltp4 | grep 3128
nic się nie dzieje zadnych komuniaktów wiec jak rozumiem squid nie działa

polecenie
ifconfig -a

Kod: Zaznacz cały

ens32     Link encap:Ethernet  HWaddr 00:0c:29:dc:d5:ed
          inet addr:192.168.3.249  Bcast:192.168.3.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fedc:d5ed/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:74055 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:5930845 (5.9 MB)  TX bytes:648 (648.0 B)

ens33     Link encap:Ethernet  HWaddr 00:0c:29:dc:d5:f7
          inet addr:192.168.1.249  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fedc:d5f7/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:22996 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2571 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:2045304 (2.0 MB)  TX bytes:637232 (637.2 KB)

ens34     Link encap:Ethernet  HWaddr 00:0c:29:dc:d5:01
          inet addr:192.168.2.200  Bcast:192.168.2.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fedc:d501/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:45315 errors:0 dropped:0 overruns:0 frame:0
          TX packets:690 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:2996121 (2.9 MB)  TX bytes:57271 (57.2 KB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:178 errors:0 dropped:0 overruns:0 frame:0
          TX packets:178 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:14871 (14.8 KB)  TX bytes:14871 (14.8 KB)



Gdzie 192.168.1.249 to adres od strony sieci lokalnej a od strony internetu to 192.168.2.200

/etc/resolv.conf

Kod: Zaznacz cały

nameserver 127.0.1.1

Co do pinga to hmm nie sprawdzałem wczesniej bo aktualizacje sie sciagały bez problemu
(np polecenie apt-get update & upgrade)
ale jak wykonuję polecenie

ping -I ens34 -c1 8.8.8.8 to pingi nie idą.
Awatar użytkownika
f1.micro
Beginner
Posty: 119
Rejestracja: 24 lutego 2009, 11:32
Lokalizacja: Kraków

Post autor: f1.micro »

Ok,

Squid nie działa :)

popraw w konfigu:

Kod: Zaznacz cały

acl localnet src 192.168.1.0/24
Dla mnie ta ACL tez jest bez sensu trochę: acl Safe_ports port 80 433 210 119 70 21 1025-65535 - po konfigurować bezpieczne porty jako wszystkie powyżej 1025?



To jest pierwszy problem. Drugi masz z połączeniem z internetem. Sqiud przyjmie połączenie ale nie wyświetli strony - oczywiste chyba.
Czy na tym samym serwerze masz też BINDa?
Awatar użytkownika
tomek-debian
Posty: 33
Rejestracja: 28 października 2013, 09:33

Post autor: tomek-debian »

Jest postęp proxy juz działa !
Brakowało mi na dysku katalogu /cache/, który utworzyłem ręcznie i przypisałem do niego uprawnienia uzytkownikowi:grupie proxy :p roxy po tym proxy wstało.

Poza tym zmodyfikowałem wg twoich wskazówek acl localnet src 192.168.52.0/24 a także dopisałem do /etc/resolv.conf moje DNS'y (nie na tym serwerze nie ma BINDA tylko samo gołe proxy). Swoja droga to dziwne że mimo ze nie było wpisanych tam żadnych adresów DNS to po wpisaniu PING wp.pl serwer rozwiązywał nazwę na adres IP.

Teraz prośba o pomoc ze sparametryzowaniem proxy. Albo jej ocena czy takie ustawienia będa optymalne.

Założenia:
Jedynym zadaniem tego proxy będzie cacheowanie aktualizacji dla sieci komputerów z linuxami (taki WSUS tylko dla linuxa).

Na siec składa się poniżej 150 komputerów klienckich z linuxem Lubuntu.
Parametry serwera ze squidem jakie mamy do dyspozycji to maszyna wirtualna z 64GB dyskiem i 8GB ramu (Jesli trzeba moge zwiększyc ilośc ramu w tej maszynie bo tego mi akurat nie brakuje. Mogę zrobić nawet 32 GB jeśli to coś pomoże.)


po wszystkich zmianach konfiguracja wyglada tak:

Kod: Zaznacz cały

redirect_rewrites_host_header off
cache_replacement_policy heap GDSF

cache_mem 32 GB
cache_dir ufs /cache/ 200 16 256
maximum_object_size  16 GB

acl localnet src 192.168.1.0/24
acl Safe_ports port 80 433 210 119 70 21 1025-65535
acl CONNECT method  CONNECT
acl all src all
http_access allow localnet
http_access deny !Safe_ports
http_access deny CONNECT
http_access deny all

cache_access_log /var/log/squid3/access.log
log_icp_queries off
buffered_logs on
szczególnie interesuje mnie linijka cache_dir ufs /cache/ 200 16 256 kompletnie nie rozumiem tych parametrów.
Awatar użytkownika
f1.micro
Beginner
Posty: 119
Rejestracja: 24 lutego 2009, 11:32
Lokalizacja: Kraków

Post autor: f1.micro »

200 - max wielkość w MB katalogu /cache
16 - liczba katalogów pierwszego poziomu ( ls /cache | wc -l )
256 - liczba katalogów drugiego poziomu (ls /cache/* )


Jeżeli to jest VM to - good practice ode mnie:
1 dysk na system (nawet 8GB wystarczy): partycje: / i swap
2 dysk (najlepiej LVM w przypadku późniejszych rozszerzeń) na cache.
Awatar użytkownika
tomek-debian
Posty: 33
Rejestracja: 28 października 2013, 09:33

Post autor: tomek-debian »

Czyli zeby przeznaczyć na cache 32 gb na dysku i ustalić max rozmiar pliku cache na 6GB pliki ustawic muszę?

cache_dir ufs /cache/ 32000 16 256
maximum_object_size 6 GB
ODPOWIEDZ