1

Здравствуйте. Есть виртуальная машина с установленной CentOS 6.0 и несколько компьютеров Windows объединенных в сеть. Необходимо расшарить папку в Centos 6.0 для ограниченного количества пользователей Windows. Samba установил. А дальше тупик.

1. Интересует какие порты нужно открыть под Samba. И как это правильно сделать? (пробовал делать как описано в этой теме - http://linuxforum.ru/viewtopic.php?id=8758)
2. Как правильно сконфигурировать Samba? (эта тема запутала окончательно - http://linuxforum.ru/viewtopic.php?id=16246)

(экспериментов уже было предостаточно, с неоднократной переустановкой Centos, но желаемого результата так и не смог добиться)

Заранее благодарен за ответ!

2

1. Ставим самбу.
2. Правим конфиг. Например по минимуму.

[global]
        workgroup = BUH
        netbios name = LDAP
        server string = DATABADE PARUS
        dns proxy = no
        log file = /dev/null
        max log size = 1000
        max xmit = 64000
        socket options = IPTOS_LOWDELAY TCP_NODELAY SO_SNDBUF=64000 SO_RCVBUF=64000 SO_KEEPALIVE
        syslog = 0
        log level = 0
        security = share
[database]
        path = /home/parus/Data/
        available = yes
        browseable = yes
        public = yes
        writable = yes
        hosts allow = 192.168.1.1 127.0.0.1

Тем самым к шаре имеют доступ только два компа. Локальный и 192.168.1.1.
Порты нужно открывать как то так

 Консоль:
iptables -A INPUT -p udp -s 192.168.1.0/24 -m multiport --dports 137,138 -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.1.0/24 -m multiport --dports 139,445 -j ACCEPT

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

3

Благодарю вас. Если позволите:

workgroup - указываю имя рабочей группы или домена?
hosts allow - ip доверенных компьютеров?
socket options - если можно, то за что отвечает данный параметр?

4

nik222 пишет:

workgroup

Группа.

nik222 пишет:

hosts allow

Именно так

nik222 пишет:

socket options

точно не знаю... но делал для увеличения увеличения скорости передачи. Подгоняется конкретно для каждого.

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

5

Я предложу почитать в инете, т.к. я не знаю всех тонкостей. В инете куча инфы про самбу.

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

6

Эх, спасибо, но не работает

7

Разобрался. Невнимательно подошел к вопросу. Подскажите пожалуйста еще:
1. В команде открытия портов что за ip выставляется (192.168.1.0/24) - ?
2. Ради эксперимента оставил разрешенные ip из примера и при обращении к расшаренной папке получил запрос на авторизацию. Я так понимаю это ограничения в действии?
3. В случае с доменом для меня ничего не меняется?

8

nik222 пишет:

1. В команде открытия портов что за ip выставляется (192.168.1.0/24) - ?

Это не один IP, а целый диапазон.
Входящий по tcp/udp протоколу с адресов сети 192.168.1.0/24 по портам 137,138, 139, 445 разрешить. Как то так.

nik222 пишет:

2. Ради эксперимента оставил разрешенные ip из примера и при обращении к расшаренной папке получил запрос на авторизацию. Я так понимаю это ограничения в действии?

По идеи да. В примере же используется параметр hosts allow.

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

9

nik222 пишет:

В команде открытия портов что за ip выставляется (192.168.1.0/24) - ?

/24 - это битность маски подсети, соответствует 255.255.255.0

10

Спасибо большое. Работает. Есть одно но с пробросом портов:

пытаюсь открывать так - iptables -A INPUT -p udp -s 172.17.0.0/16 -m multiport --dports 137,138 -j ACCEPT - без результатов. Что не так делаю?

11

iptables -A INPUT -s 172.17.0.0/16 -p udp -m multiport  --ports 135,136,137,138,139,445 -j ACCEPT
iptables -A OUTPUT -d 172.17.0.0/16 -p udp -m multiport  --ports 135,136,137,138,139,445 -j ACCEPT
iptables -A INPUT -s 172.17.0.0/16 -p tcp -m multiport  --ports 135,136,137,138,139,445 -j ACCEPT
iptables -A OUTPUT -d 172.17.0.0/16 -p tcp -m multiport  --ports 135,136,137,138,139,445 -j ACCEPT

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

12

благодарю за помощь!
Если я хочу расшарить две папки, то добавляю еще одну секцию [database1] с параметрами под эту папку? Или как то по другому это можно реализовать?
И чтоб данная машина была видна в windows сети - это как я понимаю совсем другая история?

13

nik222 пишет:

Если я хочу расшарить две папки, то добавляю еще одну секцию [database1] с параметрами под эту папку?

Да. Все верно. Имя database1 будет алиасом для второй расшаренной папки.

nik222 пишет:

И чтоб данная машина была видна в windows сети

Она и так будет видна в мастдай сети. Проще указать туже рабочую группу что и для виндовых машин.

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

14

Какой то затык с iptables:
в таком виде не работает

:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [2202:504573]
-A INPUT -p tcp -m tcp --dport 25 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 10082 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT 
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT 
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A INPUT -p icmp -j ACCEPT 
-A INPUT -i lo -j ACCEPT 
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT 
-A INPUT -j REJECT --reject-with icmp-host-prohibited 
-A INPUT -s 172.17.0.0/16 -p udp -m multiport --ports 135,136,137,138,139,445 -j ACCEPT 
-A INPUT -s 172.17.0.0/16 -p tcp -m multiport --ports 135,136,137,138,139,445 -j ACCEPT 
-A FORWARD -j REJECT --reject-with icmp-host-prohibited  
-A OUTPUT -d 172.17.0.0/16 -p udp -m multiport --ports 135,136,137,138,139,445 -j ACCEPT 
-A OUTPUT -d 172.17.0.0/16 -p tcp -m multiport --ports 135,136,137,138,139,445 -j ACCEPT 
COMMIT

15

Возвращаясь к вопросу видимости машины на Centos в сети windows : в сети Windows машина видна только при обращении к расшаренным ресурсам.
Подскажите пожалуйста что необходимо сделать, чтоб Centos был постоянно виден в сети Windows?

16

nik222 пишет:

Подскажите пожалуйста что необходимо сделать, чтоб Centos был постоянно виден в сети Windows?

ИМХО не стоит этого делать.
Конечно у Вас может быть своя ситуация, но если например придёт гость ноутом, и пока вы ходите наливать ему чай, он шерстит сеть. Утрированно, но понятно.
Я бы на вашем месте просто создал сетевые диски на виндовых машинах, кому куда нужен доступ.
Но это не избавляет от необходимости настройки доступа на уровне самбы и iptables.

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

17

[quote=nik222
]:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [2202:504573]

Политики по умолчанию для сервера лчше сделать в DROP, а потом правилами разрешать только то, что нужно.
Имея такие политики, все нижележащие правила уже не имеют смысла, так как правила читаются "сверху вниз", и верхними Вы разрешаете то же что и низлежащими, даже больше.
Если у Вас стоит это правило:

nik222 пишет:

-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

то правил:

nik222 пишет:

-A OUTPUT -d 172.17.0.0/16 -p udp -m multiport --ports 135,136,137,138,139,445 -j ACCEPT
-A OUTPUT -d 172.17.0.0/16 -p tcp -m multiport --ports 135,136,137,138,139,445 -j ACCEPT

не требуется, так как на установленное соединение оно будет отвечать.

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