1

Есть сервер в домене. На нем стоит Windows Server 2003 SP2. К нему конектятся, опять же через домен клиенты с тонких клиентов по RDP. Проблема в том, что на сервере с виндой есть интернет. Он там нужен для отправки документооборота в службу.
Клиенты подключаются к нему и получают в итоге тоже интернет. Решил эту проблему с помощью GPO в PDC Samba, а именно запретил запуск ишака и установку программ. Как бы работает, но мне так не нравится.
Как на шлюзе запретить интернет клиентам RDP?

IP saerver: 192.168.2.100
Mask: 255.255.255.0
gateway: 192.168.1.77 (Это шлюз в инет с nat+iptables)
DNS1:192.168.2.82 (Это сам PDS+DNS)
DNS2:192.168.1.77

Можно конечно закрыть на сервере совсем интернет и пускать в мир по определенному порту. Это возможно, но а если ему нужен полный доступ например?

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

2 (27.12.2011 17:37:19 отредактировано Kettler)

можно  попробовать squid

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

3

Не хочется специально для них прокси полнимать.... Придется целеком влан заварачивать в него. Хотя вариант. Прокси же можно натравить на нужную мне сеть? Только одну и сделать акл лист  доступа.

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

4

не надо vlan заворачивать. Просто есть такая вещь как групповая политика.
AD + SQUID (групповая политика) и усё.

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

5

--=XliN=--, SQUID прекрасно работает с учётками NT, хотя ради эксперементов и личного опыта можно конечно сторить велосипед, ни кто не запрещает.

Истина ускользает от тех кто отказывается её видеть обоими глазами.
Талантам нужно помогать, бездарности пробьются сами.
В Туле настолько суровые парни, что вместо пены для бритья, используют пену монтажную.
cat /broken/hands > /dev/null

6

--=XliN=-- пишет:

Не хочется специально для них прокси полнимать.... Придется целеком влан заварачивать в него. Хотя вариант. Прокси же можно натравить на нужную мне сеть? Только одну и сделать акл лист  доступа.

Тебе так не поможет у тя клиенты имеют все один ип.

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

7

и чего делать? AD у меня на самбе четвертой.

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

8 (28.12.2011 12:02:34 отредактировано Vadimsky)

Да какая разница на чём у Вас ад.
Ставите сквид. Читаете ман. Пробуете сделать. И вот уже когда что то неполучится, тогда задавайте конкретный вопрос.

Истина ускользает от тех кто отказывается её видеть обоими глазами.
Талантам нужно помогать, бездарности пробьются сами.
В Туле настолько суровые парни, что вместо пены для бритья, используют пену монтажную.
cat /broken/hands > /dev/null

9

Я не пойму... предлагаете поставить сквид и интегрировать его с AD?

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

10

Да. Сам черпал вдохновение отсюда:
http://noted.org.ua/824
http://av5.com/journals-magazines-online/1/35/301
http://www.opennet.ru/openforum/vsluhfo … /6755.html

Истина ускользает от тех кто отказывается её видеть обоими глазами.
Талантам нужно помогать, бездарности пробьются сами.
В Туле настолько суровые парни, что вместо пены для бритья, используют пену монтажную.
cat /broken/hands > /dev/null

11

Попробовал настроить по первой ссылке. Поставил сквид. Дробавил в него строчку из примера, подправив под себя не много. Не уверен что правильно.. Т.к. Сам конфиг оставил по дефолту. Как есть. Попробовал... Не работает. В айпитаблес пока ничего не заварачивал, прлписываю прокси вручную. Что из конфигов показать?

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

12

Сори за ошибки.... Пишу с телефона.

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

13 (28.12.2011 21:26:39 отредактировано XliN)

Давайте по порядку.
Сам файл настройки сквида

+ открыть спойлер
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl SSL_ports port 443
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localnet
http_access allow localhost
http_access deny all
icp_access allow localnet
icp_access deny all
htcp_access allow localnet
htcp_access deny all
http_port 3128
hierarchy_stoplist cgi-bin ?
access_log /var/log/squid/access.log squid
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
icp_port 3130
coredump_dir /var/spool/squid
auth_param basic program /usr/lib/squid/squid_ldap_auth -f "(&(objectclass=person)(sAMAccountName=%s)(CN=InternetAccess,OU=Builtin,DC=smb,DC=mgkb1,DC=local))" -R -b "OU=Users,DC=smb,DC=mgkb1,DC=local" -D "sel_ldap@smb.mgkb1.local" -w "h2DTCVoc" -h 192.168.2.82 -v 3 -p 389
acl ldapusers proxy_auth REQUIRED
http_access allow ldapusers

Вот это я добавил в стандартный squid.conf, который был создан при установке сквида. Повторюсь... в squid.conf ничего более не менял. Ни строчки.

auth_param basic program /usr/lib/squid/squid_ldap_auth -f "(&(objectclass=person)(sAMAccountName=%s)(CN=InternetAccess,OU=Builtin,DC=smb,DC=mgkb1,DC=local))" -R -b "OU=Users,DC=smb,DC=mgkb1,DC=local" -D "sel_ldap@smb.mgkb1.local" -w "XXXXXXX" -h 192.168.2.82 -v 3 -p 389
acl ldapusers proxy_auth REQUIRED
http_access allow ldapusers

Меня смущает вот этот фильтр

(&(objectclass=person)(sAMAccountName=%s)

Как мне узнать что точно тут написать?
Далее... верно ли я написал

CN=InternetAccess,OU=Builtin,DC=smb,DC=mgkb1,DC=local

InternetAccess - группа для пользователей с инетом
Builtin - в этом месте находится сама группа
DC=smb,DC=mgkb1,DC=local - адрес домена.
http://storage2.static.itmages.ru/i/11/1228/s_1325091234_5038445_49dc83fd2c.jpeghttp://storage1.static.itmages.ru/i/11/1228/s_1325092996_8160312_e215f0232d.jpeghttp://storage3.static.itmages.ru/i/11/1228/s_1325093180_2601144_2a9a66de20.jpeg
Как проверяю. Заходу на сервер под sel_ldap пользователем. В ишаке включаю прокси. Пробую открыть яндекс например. Открывает. Хотя пользователь не добавлен в группу InternetAccess.

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

14

Так же OU=Builtin и OU=Users менял на CN=Builtin CN=Users

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

15

--=XliN=--, Начнём с того, что самое правильное дефолтную конфигу сквида сохранить гденибуть, а самому писать новый, с нуля.
Дефлтная дана чисто для примера и для простых ситуаций. Там много лишнего для нашего случая. Тоесть должно остаться только самое необходимое.
Даже не остаться, повторюсь - создаём пустой squid.conf и далее построчно внего добавляем.
Если что т опропустим или напишем нитак, то про старте сквид про это скажет.
Это очень полезно делать именно так, во-первых лучше познаётся ег овнутренняя суть, во вторых в правилах будет всё только самое нужное и никакого мусора.

--=XliN=-- пишет:

Как мне узнать что точно тут написать?
Далее... верно ли я написал

CN=InternetAccess,OU=Builtin,DC=smb,DC=mgkb1,DC=local

Здесь пишется полное FQDN доменное имя вашего сервера.
Например так:

CN=SERVER,OU=Domain Controllers,DC=mail,DC=ru

Тоесть, исходя из Вшей записи, Ваш сервер зовут так: smb.mgkb1.local, если да, то значит написали всё верно.
Следующим моментом - это нужно в iptables запретить форвард на 80-й порт (или OUTPUT, если всё это шлюзовая машина).
Позователей нужно добавить в соотвествующую группу на виндовом сервере а в GPO прописать использовать порт 3128 на  сервере, где стоит сквид, а остальным запретить. Явно.
Итогом всего этого должно стать следующее. Позователь входит на сервер, работает, запускает браузер и лезет в интернет. Если ему нельзя, то (тут настраиваемо, лобо оставить как есть и браузер напишет, что ничего не может найти, либо сделать редирект  на страничку с должностными интрукциями) он не получает доступа, а если можно, то ему в кокошке браузера выводится страничка ввода логина и пароля (что кстати можно отключить в GPO).
Обязательным фактом это всё должно логироваться.
Как то так.

Истина ускользает от тех кто отказывается её видеть обоими глазами.
Талантам нужно помогать, бездарности пробьются сами.
В Туле настолько суровые парни, что вместо пены для бритья, используют пену монтажную.
cat /broken/hands > /dev/null

16

Первое. Со сквидом я понял.. конфиги я всегда дефолтовые сохраняю, есть такая привычка. Настрою и потом покажу конфиг.
Второе. У меня будет так?

CN=InternetAccess,OU=Builtin,DC=smb,DC=mgkb1,DC=local

Или так?

CN=InternetAccess,CN=Builtin,DC=smb,DC=mgkb1,DC=local

Следующим моментом - это нужно в iptables запретить форвард на 80-й порт (или OUTPUT, если всё это шлюзовая машина).

Третье.
Тут про какую машину идет речь? Если про ту на которую они заходят, то она не шлюзовая. Таким образом нужно на шлюзе форвард запретить?
Разберемся пока с этими теоретическими вопросами.

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

17

1. хорошо.
2. Лучшее попробовать оба варианта - опять же опыт, он бесценен  wink  , у меня стоит CN - думаю так правильно, хотя где т очитал, что можно вообще опустить.
3. Да, на шлюзе форвард 80-го порта. Что бы браузер (не настроенный на выход через прокси, да и всякие проги-портабле вершен) пользователя, не лезли в Инет, если по GPO Инет ему (пользователю) не положен. Вообще хорошим тоном является в iptables запретить всё, а потом открыть тока нужное, в самом iptables или в сквиде. Главное нужного пользователя не забыть завернуть на сквид.

Истина ускользает от тех кто отказывается её видеть обоими глазами.
Талантам нужно помогать, бездарности пробьются сами.
В Туле настолько суровые парни, что вместо пены для бритья, используют пену монтажную.
cat /broken/hands > /dev/null

18 (29.12.2011 13:48:42 отредактировано XliN)

По поводу 80 порта. Ситуация такая. У меня iptables режет инет всем, кроме того кому я открою. И открываются сразу все порты. Пришлось сделать так из-за кучи программ с не понятными портами. Фиг определишь =)
На сервере 192.168.2.100, к которому пользователи лезут по RDP, инет открыт. Доменный пользователь, если ему в GPO стоит запрет на инет, как на это отреагирует? Если запрет, значит и инета нет? Ему GPO не даст же?

Далее. Что бы инет пользователю в домене дать, мне надо его дописать в конфиг сквида и соответственно открыть на шлюзе. Верно мыслю?
В iptables инет открываю конкретно по IP клиента

iptables -A FORWARD -i vlan3 -s 192.168.XXX.XXX -o eth1 -j ACCEPT

И вот еще что. Нужно же завернуть весь траф по 80 порту на порт сквида, только после этого проксик станет прозрачным?

UPD: Извиняюсь что заставляю так разжевывать, просто пытаюсь понять принцип, а не тупо копипастить.

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

19

Вот мой новый конфиг сквида

http_port 3128
logfile_rotate 7
cache_mem 100 MB
cache_swap_low 95
cache_swap_high 98
maximum_object_size 1000000 KB
#acl all src 0.0.0.0/0.0.0.0
#acl dom_local src 192.168.2.0/24
#acl adm_local src 192.168.1.0/24
auth_param basic program /usr/lib/squid/squid_ldap_auth -f "(&(objectClass=person)(sAMAccountName=%s)(CN=InternetAccess,OU=Builtin,DC=smb,DC=mgkb1,DC=local))" -R -b "OU=Users,DC=smb,DC=mgkb1,DC=local" -D "sel_ldap@smb.mgkb1.local" -w "h2DTCVoc" -h 192.168.2.82
acl ldapusers proxy_auth REQUIRED
#http_access allow dom_local
#http_access allow adm_local
http_access allow ldapusers
#http_access deny all

hierarchy_stoplist cgi-bin ?
access_log /var/log/squid/access.log squid
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
icp_port 3130
coredump_dir /var/spool/squid

Захожу на 192.168.2.100 под пользователем sel_ldap с IP 192.168.1.173. Прописываю ему прокси 192.168.1.77:3128. Открываю ишака и вижу запрос на ввод пароля и пользователя. Ввожу sel_ldap и пароль. Не пускает. Пользователь в группе InternetAccess Значит не работает.

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

20

Пробуй такой хелпер у меня домен RA.local

 Консоль:
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --require-membership-of="RA\\пользователи домена"
auth_param ntlm children 150
auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic --require-membership-of="RA\\пользователи домена"
auth_param basic children 150
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
acl users proxy_auth REQUIRED
http_access allow users

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

21

Токо при этом шлюз должен быть в домене под админом.

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

22

Kettler пишет:

Токо при этом шлюз должен быть в домене под админом.

Мне шлюз низя в домен....  ac

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

23

а что в этом страшного?

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

24

--=XliN=-- пишет:

просто пытаюсь понять принцип, а не тупо копипастить.

За это плюс  wink
Правильно мыслите, и верной дорогой идёте!
Попробуем пожеать вместе.
Значит так.
Правило вида:

iptables -A FORWARD -i vlan3 -s 192.168.XXX.XXX -o eth1 -j ACCEPT

открывает Инте "от смой машины" пользователя.
У нас же он (пользователь) входит на сервер по RDP. А там по условию уже есть Инет. Тоесть, гипотетически, если не стоит ни каких костылей, то пользователь получает этот самый Инет, в объёме и возможностях, которыми предоставлен Инт сереру. Не больше ине меньше.
Так вот, задачача GPO в данном конкретном случае, определить, кто именно пытается Инет хавать. То есть, говоря человеческим языком - разруливание доступа к Инету в данном конкретном случае делается на этом самом сервере, куда пользователь зашёл RDP.  Для GPO это глубоко фиолетово, системная это служба или удалённый пользователь. Главное что бы пользователь был зарегистрирован в системе (иначе собственно ему не войти).
И вот когда зашедший по RDP ползователь запускает того же осла, на сервере, имеющем достум в Интет, это пользователь доступа в Инет не получает вообще, а получает как минимум запрос пароля, и уже если в пароль соответсвует тому, что в БД, тогда он получает доступ, или получает страничку в отказе доступа. При том, что другим пользователем на этом же сервере может быть запущен свой осёл, и тому дан доступ. То есть explorer.exe другому explorer.exe рознь как земля и небо. Звучит как бред, но так это работает.

--=XliN=-- пишет:

Ввожу sel_ldap и пароль. Не пускает. Пользователь в группе InternetAccess Значит не работает.

Если просит пароль значит работает. Если не пускает то тем более значит работает. Но не моножко ни так как хотелось бы.
Сквид берёт пользователя из LDAP или всё-таки из NT? Если из лдап, то как лдап синхронизируется с NT?

Истина ускользает от тех кто отказывается её видеть обоими глазами.
Талантам нужно помогать, бездарности пробьются сами.
В Туле настолько суровые парни, что вместо пены для бритья, используют пену монтажную.
cat /broken/hands > /dev/null

25

Kettler пишет:

а что в этом страшного?

CentOS вводить в домен? Боюсь будут проблемы с доступом потом. Сыкатно.

Vadimsky пишет:

Сквид берёт пользователя из LDAP или всё-таки из NT?

не знаю.. если честно. Был установлен samba4 и я так понимаю со своим LDAP. Значит с LDAP.

MX 23.6 Libretto x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

26 (29.12.2011 15:26:03 отредактировано Vadimsky)

--=XliN=-- пишет:

CentOS вводить в домен? Боюсь будут проблемы с доступом потом. Сыкатно.

В данном случае это ничего не даст.

--=XliN=-- пишет:

я не знаю.. если честно. Был установлен samba4 и я так понимаю со своим LDAP. Значит с LDAP.

Значит нужно организовать синхронизацию LDAP с NT.
Какая у лдап конфига?

Истина ускользает от тех кто отказывается её видеть обоими глазами.
Талантам нужно помогать, бездарности пробьются сами.
В Туле настолько суровые парни, что вместо пены для бритья, используют пену монтажную.
cat /broken/hands > /dev/null

27

А мне кажется что просто закрыты порты между squid  ------ ad

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

28

Потому как настроен там firewall данные порты не открывали  ag

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.

29

Кстати, да, --=XliN=--,  конфигу iptables со шлюза можно глянуть?

Истина ускользает от тех кто отказывается её видеть обоими глазами.
Талантам нужно помогать, бездарности пробьются сами.
В Туле настолько суровые парни, что вместо пены для бритья, используют пену монтажную.
cat /broken/hands > /dev/null

30 (29.12.2011 15:43:07 отредактировано Kettler)

Vadimsky пишет:

Кстати, да, --=XliN=--,  конфигу iptables со шлюза можно глянуть?

Тут где то целая тема)
Нашол
http://linuxforum.ru/viewtopic.php?id=11014

Ищу дополнительный заработок (удалёнка).
Пьянка без секса – признак алкоголизма.