LINUX.ORG.RU
ФорумAdmin

Samba через VPN

 , ,


0

1

Здравствуйте. Надо поднять самбу на сервере и подключаться к ней через впн соеденение. Есть две подсети на сервере. Одна домашняя(192.168.0.1), другая- ВПН(10.8.0.1). Машины(winXP), которые подключаются через ВПН не видят самбу ни в сетевом окружении, ни через поиск по айпи. Машины(Win7) из внутреней сети ее тоже не видят, но могут зайти по айпи и увидеть список файлов, но почему-то без пароля, хотя в самбе стоит security=user Версия самбы- 4.1.0 ОС- Slackware 14.1

/etc/pptpd.conf:

option /etc/ppp/options.pptpd
debug
logwtmp
localip 10.8.0.1
remoteip 10.8.0.2-50

/etc/ppp/options.pptpd:

name pptpd
lock
nodefaultroute
nobsdcomp
ms-dns 10.8.0.1
proxyarp
auth
refuse-eap
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ipcp-accept-local
ipcp-accept-remote
lcp-echo-failure 30
lcp-echo-interval 5

debug

/etc/samba/smb.conf:

<global>
   dos charset = CP860
   workgroup = JW
   netbios name = JWFS
   server string = Samba%v
   server role = standalone server
   dns forwarder = 10.8.0.1
   encrypt passwords = yes
   passdb backend = smbpasswd
   smb passwd file = /etc/samba/private/smbpasswd
   socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
   os level = 34
   local master = yes
;   domain logons = yes
;   preferred master = yes
   domain master = no
   bind interfaces only = yes
   interfaces = ppp* eth0 127.0.0.1
   wins support = yes
;   name resolve order = lmhosts host wins bcast
   hosts allow = 10.8.0 192.168.0. 127.0.0.1
   guest account = guest
   security = user
   map to guest = bad user
   invalid users = root
   syslog only = no
   syslog = 0
   log file = /var/log/samba/log.%m
;   unix password sync = yes
;   passwd program = /usr/bin/passwd %u
;;;; Disable Printer ;;;;;
   load printers = no
   show add printer wizard = no
   printcap name = /dev/null
   disable spoolss = yes

<Public>
   comment = Public
   browseable = yes
;   writable = yes
   read only = no
   guest ok = no
   public = yes
   path = /home/public
   create mask = 0750

С клиентами на XP все в порядке. Их несколько и они друг друга видят. Но они в одной подсети, не через ВПН.

Вот еще выхлоп iptables -L:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     all  --  anywhere             anywhere
ACCEPT     udp  --  anywhere             anywhere             udp dpt:netbios-ns
ACCEPT     udp  --  anywhere             anywhere             udp dpt:netbios-dgm
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:netbios-ssn
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:microsoft-ds
ACCEPT     gre  --  anywhere             anywhere
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:pptp
ACCEPT     all  --  10.8.0.0/24          anywhere
DROP       tcp  --  anywhere             anywhere             tcp dpt:http #conn src/32 > 50
ACCEPT     tcp  --  anywhere             anywhere             multiport dports http,https
DROP       tcp  --  anywhere             anywhere             tcp dpt:domain #conn src/32 > 8
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:domain
DROP       udp  --  anywhere             anywhere             udp dpt:domain #conn src/32 > 8
ACCEPT     udp  --  anywhere             anywhere             udp dpt:domain
ACCEPT     udp  --  anywhere             anywhere             udp dpts:bootps:bootpc
ssh_brute_check  tcp  --  anywhere             anywhere             ctstate NEW tcp dpt:22622
ssh_brute_check  tcp  --  anywhere             anywhere             tcp dpt:22622
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:ftp
ACCEPT     tcp  --  anywhere             anywhere             tcp dpts:41361:65534

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
TCPMSS     tcp  --  anywhere             anywhere             tcp flags:SYN,RST/SYN TCPMSS clamp to PMTU
ACCEPT     gre  --  anywhere             anywhere
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:pptp
ACCEPT     tcp  --  10.8.0.0/24          anywhere             multiport dports netbios-ssn,microsoft-ds
ACCEPT     tcp  --  10.8.0.0/24          anywhere             multiport dports netbios-ssn,microsoft-ds
ACCEPT     all  --  192.168.0.0/24       anywhere
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere
ACCEPT     all  --  anywhere             anywhere             state NEW,RELATED,ESTABLISHED
ACCEPT     udp  --  anywhere             anywhere             udp spt:netbios-ns
ACCEPT     udp  --  anywhere             anywhere             udp spt:netbios-dgm
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:netbios-ssn
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:microsoft-ds
ACCEPT     gre  --  anywhere             anywhere
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:pptp
ACCEPT     all  --  10.8.0.0/24          anywhere
ACCEPT     tcp  --  anywhere             anywhere             multiport sports http,https
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:domain
ACCEPT     udp  --  anywhere             anywhere             udp spt:domain
ACCEPT     udp  --  anywhere             anywhere             udp spts:bootps:bootpc
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:22622
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:ftp

Chain ssh_brute_check (2 references)
target     prot opt source               destination
DROP       all  --  anywhere             anywhere             ctstate NEW recent: UPDATE seconds: 300 hit_count: 3 name: DEFAULT side: source mask: 255.255.255.255
ACCEPT     all  --  anywhere             anywhere             recent: SET name: DEFAULT side: source mask: 255.255.255.255

В нем я тупо все разрешил пока чтобы не грешить.


Забыл добавить, что пользователи через smbpasswd созданы и активированы. И если на сервере дать такую команду: smbclient -L //JWFS/ -Uuser1%1234 то выхлоп будет следующим:

Domain=[JW] OS=[Unix] Server=[Samba 4.1.0]

        Sharename       Type      Comment
        ---------       ----      -------
        Public          Disk      Public
        IPC$            IPC       IPC Service (Samba4.1.0)
Domain=[JW] OS=[Unix] Server=[Samba 4.1.0]

        Server               Comment
        ---------            -------
        JWFS                 Samba4.1.0

        Workgroup            Master
        ---------            -------
        JW                   JWFS
        WORKGROUP            SERGE-ASUS

harhor
() автор топика
Ответ на: комментарий от harhor

Правда никто не знает? Меня собственно интересует нет ли в моей затее(самба через впн) каких подводных камней. Ибо я извелся уже. Чтобы я ни делал, ничего не помогает. И еще вопрос по таблице маршрутизации. Если у меня есть длинная портянка правил в iptables, к примеру входящих(input). Типа того:

iptables -F
iptables -X
iptables -P FORWARD ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p 47 -j ACCEPT
iptables -A INPUT -p tcp --dport 1723 -j ACCEPT
iptables -A OUTPUT -p 47 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 1723 -j ACCEPT
iptables -A FORWARD -p 47 -j ACCEPT
iptables -A FORWARD -p tcp --dport 1723 -j ACCEPT
...
И я 4-ой строкой ставлю INPUT...ACCEPT вместо DROP, сниму ли я тем самым все огранчения на входящих соединениях? Логика подсказывает, что да, но все же я сомневаюсь немного.

harhor
() автор топика
Ответ на: комментарий от harhor

Правда никто не знает?

Может кто и знает, но отвечать на такие простыни текста как-то влом.

Ведь понятно, что ″iptables -L″ без флагов ″-n -v″ это шлак, который читать смысла нет, потому что не видно к каким интерфейсам правила относятся.

И конфиг самбы тоже странный. Ведь кто-то туда засунул bind interfaces only = yes, хотя в man'е прямо написано:

Note that you should not use this parameter for machines that are serving PPP or other intermittent or non-broadcast network interfaces as it will not cope with non-permanent interfaces.

Ещё можно заметить, что passdb backend = smbpasswd давно запрещён, поэтому не понятно насколько работоспособный, и не известно, настроена ли самба в качестве wins-сервера на Windows-машинах, но не открытый порт 1512 как-бы намекает, что про WINS вобще не думалось. И после прочтения возникает впечатление, что тема не особо связана с описываемой проблемой, при чём здесь pptp, если самба и в локалке не пашет...

Касательно смены политики iptables для цепочки ACCEPT. Этим вы разрешите практически все пакеты, будет возможет DROP только для ssh, http и DNS. Но я бы так делать не стал. С одной стороны, 8 dns-запросов для винды как-то маловато, с другой стороны, если это у вас шлюз и есть прямой ip-адрес, то зачем открывать все порты в инет? Лично я бы воткнул бы третьим правилом что-то типа:
INPUT -s 192.168.0.0/24 -j ACCEPT или
INPUT -i ppp+ -j ACCEPT чтобы убрть влияние iptables и начать разбираться с конфигом samba.

P.S. Обычно всегда писали ″10.8.0.″ в ″hosts allow″, вроде точка в конце имеет значение.

mky ★★★★★
()
Ответ на: комментарий от mky

Спасибо огромное за помощь!!! Винда увидела сервер и зашла в шару. Уж не знаю, что именно стало причиной успеха. Сделал по всем вашим пунктам:

1) убрал bind interfaces only = yes. Честно читал маны по этому пункту, но приведенного вами абзаца не находил. Идея была- не обслуживать интерфейс с внешним айпи. Вот я их и перечислил.

2)

Обычно всегда писали ″10.8.0.″ в ″hosts allow″, вроде

тут просто по запарке не увидел отсутствие точки.

3) Открыл порт 1512. Но так как фаервол у меня все равно работал в режиме разрешения, это никак не повлияло, но спасибо за наводку.

harhor
() автор топика
Ответ на: комментарий от harhor

а... и еще добавил в файл /etc/ppp/options.pptpd строку

ms-wins 10.8.0.1
harhor
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.