Author Topic: Вход на samba по имени сервера \\nameserver  (Read 12318 times)

0 Members and 1 Guest are viewing this topic.

Offline alpha1

  • Full Member
  • ***
  • Posts: 145
  • Karma: +0/-0
Не могу зайти на самбу по имени сервера. Идет запрос логина и пароля - ввожу - не пускает. Подскажите, пожалуйста что настраивать нужно?
Хочешь стать умным, готовься выглядеть глупцом.

Offline deepwalker

  • Hero Member
  • *****
  • Posts: 766
  • Karma: +8/-6
Вход на samba по имени сервера \\nameserver
« Reply #1 on: May 27, 2008, 12:17:55 »
Надо уже настроить свой мозг на волну TLUG - например хорошо помогает почитать руководство по формулированию вопросов. Потому что если вы перечитаете свой же вопрос, то я на сто процентов уверен, что сами же ни фига не поймете. Где конфиги, где плоды личных изысканий?
По типу - как мне сделать мазду своими руками.

Offline alpha1

  • Full Member
  • ***
  • Posts: 145
  • Karma: +0/-0
Вход на samba по имени сервера \\nameserver
« Reply #2 on: May 27, 2008, 12:34:26 »
Quote from: deepwalker
Надо уже настроить свой мозг на волну TLUG - например хорошо помогает почитать руководство по формулированию вопросов. Потому что если вы перечитаете свой же вопрос, то я на сто процентов уверен, что сами же ни фига не поймете. Где конфиги, где плоды личных изысканий?
По типу - как мне сделать мазду своими руками.


Какие конфиги нужны? Я выложу. Но я же не спрашиваю, что у меня здесь не так. Я спрашиваю что (какую программу) нужно настроить что бы появилась возможность заходить на сервер samba по имени сервера. Настроил я уже smb.conf, krb5, nsswitch.conf.
Хочешь стать умным, готовься выглядеть глупцом.

Offline anovo

  • Sr. Member
  • ****
  • Posts: 273
  • Karma: +0/-0
Вход на samba по имени сервера \\nameserver
« Reply #3 on: May 27, 2008, 12:52:02 »
Ну а /etc/resolv.conf и DNS-сервер-где-то-в-сети Вы настроили? Пинги по DNS-имени самбы есть?
(Хотя запрос аутентификации, как я понял, появляется по dns-имени)
« Last Edit: May 27, 2008, 12:53:18 by anovo »
The White Rabbit put on his spectacles. "Where shall I begin, please your Majesty?" he asked.
"Begin at the beginning," the King said, very gravely, "and go on till you come to the end: then stop."
"Alice's Adventures in Wonderland" by Lewis Carroll

Offline alpha1

  • Full Member
  • ***
  • Posts: 145
  • Karma: +0/-0
Вход на samba по имени сервера \\nameserver
« Reply #4 on: May 27, 2008, 12:59:35 »
Quote from: anovo
Ну а /etc/resolv.conf и DNS-сервер-где-то-в-сети Вы настроили? Пинги по DNS-имени самбы есть?
(Хотя запрос аутентификации, как я понял, появляется по dns-имени)

Пинги есть. В dns добавлен узел. resolv.conf не трогал. По ip-адресу нет запроса аутентификации, только по dns-имени.
Хочешь стать умным, готовься выглядеть глупцом.

Offline deepwalker

  • Hero Member
  • *****
  • Posts: 766
  • Karma: +8/-6
Вход на samba по имени сервера \\nameserver
« Reply #5 on: May 27, 2008, 13:04:05 »
-
« Last Edit: May 27, 2008, 13:04:41 by deepwalker »

Offline Vok

  • Newbie
  • *
  • Posts: 5
  • Karma: +0/-0
Вход на samba по имени сервера \\nameserver
« Reply #6 on: May 27, 2008, 13:42:31 »
Я данную проблему решил подняв в самбе WINS сервер и потом клиентам через DHCP его указывал. Все нормально увидели сразу.

Offline never hood

  • Hero Member
  • *****
  • Posts: 845
  • Karma: +16/-10
  • www.4job.co
    • Работа, которую ты искал
Вход на samba по имени сервера \\nameserver
« Reply #7 on: May 27, 2008, 14:21:00 »
Тормоза придумали трусы, а документацию, по всей видимости дебилы...

Offline alpha1

  • Full Member
  • ***
  • Posts: 145
  • Karma: +0/-0
Вход на samba по имени сервера \\nameserver
« Reply #8 on: May 27, 2008, 14:23:35 »
Quote from: Vok
Я данную проблему решил подняв в самбе WINS сервер и потом клиентам через DHCP его указывал. Все нормально увидели сразу.

А в общих чертах не сможешь обрисовать настройку, или, если не сложно, конфиги выложить.
Хочешь стать умным, готовься выглядеть глупцом.

Offline Xray_Linux_Root

  • Sr. Member
  • ****
  • Posts: 296
  • Karma: +2/-0
Вход на samba по имени сервера \\nameserver
« Reply #9 on: May 27, 2008, 17:33:54 »
1. Вот прямо на машине, с которой пытаешься зайти (кнопка "Пуск" - "Выполнить" - "cmd" - кнопка "OK") напиши nslookup samba_server_name, где samba_server_name - имя SAMBA-сервера.
2. Пинг на что есть? На IP-адрес SAMBA-сервера или на короткое имя SAMBA-сервера?
3. Сколько сетевух на SAMBA-сервере?
4. Чего интересного нарыл тут: /var/log/samba
5. SAMBA на основании чего авторизует пользователей: winbind, smbpasswd или Hz чего?
« Last Edit: May 27, 2008, 17:40:49 by Xray_Linux_Root »
Mandrake, ASPLinux, Slackware, RedHat, Fedora, Debian
Зачем M$ Exchange? Есть eGroupware!
-j MASQUERADE + друзья в других сетях помогут построить мир независимо от желания вашего провайдера ;)

Offline alpha1

  • Full Member
  • ***
  • Posts: 145
  • Karma: +0/-0
Вход на samba по имени сервера \\nameserver
« Reply #10 on: May 28, 2008, 12:12:56 »
Quote from: Xray_Linux_Root
1. Вот прямо на машине, с которой пытаешься зайти (кнопка "Пуск" - "Выполнить" - "cmd" - кнопка "OK") напиши nslookup samba_server_name, где samba_server_name - имя SAMBA-сервера.
2. Пинг на что есть? На IP-адрес SAMBA-сервера или на короткое имя SAMBA-сервера?
3. Сколько сетевух на SAMBA-сервере?
4. Чего интересного нарыл тут: /var/log/samba
5. SAMBA на основании чего авторизует пользователей: winbind, smbpasswd или Hz чего?

1. nslookup samba_server_name
Server:  "pdc".domain
Address:  192.168.x.x

Name:    samba_server_name.domain
Address:  192.168.x.xy

2. ping samba_server_name

Обмен пакетами с samba_server_name.domain [192.168.x.xy] по 32 байт:

Ответ от 192.168.1.xyz: число байт=32 время<1мс TTL=64

3. две сетевухи, вторая отключена.

4. /var/log/samba/samba.log
[div class=\'codetop\']CODE[div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\'][2008/05/28 11:58:12, 0] lib/util_sock.c:write_data(562)
  write_data: write failure in writing to client 192.168.1.xyz. Error Connection reset by peer

5. Самба авторизует на основании winbind.
Хочешь стать умным, готовься выглядеть глупцом.

Offline Xray_Linux_Root

  • Sr. Member
  • ****
  • Posts: 296
  • Karma: +2/-0
Вход на samba по имени сервера \\nameserver
« Reply #11 on: May 28, 2008, 13:17:24 »
Понятно, что ничего не понятно

Добавь в конфиг SAMBA в раздел [global] вот такие опции:
Code: [Select]
    interfaces = 127.0.0.1, eth0
    bind interfaces only = Yes
Где eth0 у тебя может быть и eth2 и eth10 - но это должно быть имя твоего рабочего интерфейса. И запомни по протоколу SMB больше чем по одному сетевому интерфейсу сервак светиться не может(!)
И вообще вот держи статейку с wiki:

Code: [Select]
Если сборка SAMBA прошла без проблем, то можно приступить к настройке требующихся нам сервисов.
Настройка SAMBA

Содержимое файла /etc/samba/smb.conf

[global]
    dos charset = CP866
    workgroup = EXAMPLE
    realm = EXAMPLE.COM
    server string =
    interfaces = 127.0.0.1, eth0
    bind interfaces only = Yes
    security = ADS
    auth methods = winbind
    allow trusted domains = No
    obey pam restrictions = Yes
    password server = srv01.example.com, srv02.example.com
    restrict anonymous = 2
    client NTLMv2 auth = Yes
    client lanman auth = No
    client plaintext auth = No
    log level = 0 passdb:0 auth:0 winbind:0
    syslog = 0
    log file = /var/log/samba/%m.log
    server signing = auto
    max smbd processes = 512
    socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
    cups server = localhost
    preferred master = No
    local master = No
    domain master = No
    dns proxy = No
    wins server = 192.168.1.3
    ldap ssl = no
    idmap uid = 10000-100000000
    idmap gid = 10000-100000000
    template shell = /bin/bash
    winbind use default domain = Yes
    winbind refresh tickets = Yes
    invalid users = root, bin, daemon, sync, nobody
    hosts allow = 127.0.0.1, 192.168.1.
    hosts deny = all
    cups options = cups
    message command = bash -c "/bin/mail -s 'message from %f on %m' root < %s; rm %s"

[homes]
    comment = Home Directories
    read only = No
    create mask = 0664
    browseable = No

Настройка Kerberos

Содержимое файла /etc/krb5.conf

[logging]
 default = FILE:/var/log/krb5libs.log
 kdc = FILE:/var/log/krb5kdc.log
 admin_server = FILE:/var/log/kadmind.log

[libdefaults]
 default_realm = EXAMPLE.COM
 dns_lookup_realm = false
 dns_lookup_kdc = false
 ticket_lifetime = 24h
 forwardable = yes

[realms]
 EXAMPLE.COM = {
  kdc = srv01.example.com
  kdc = srv02.example.com
  admin_server = srv01.example.com
  admin_server = srv02.example.com
  default_domain = example.com
 }

[domain_realm]
 .example.com = EXAMPLE.COM
 example.com = EXAMPLE.COM

[kdc]
 profile = /var/kerberos/krb5kdc/kdc.conf

[appdefaults]
 pam = {
   debug = false
   ticket_lifetime = 36000
   renew_lifetime = 36000
   forwardable = true
   krb4_convert = false
 }


Настройка PAM
Для Fedora совместимых дистрибутивов

Содержимое файла /etc/pam.d/system-auth

#%PAM-1.0
# /etc/pam.d/system-auth
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        sufficient    pam_winbind.so
auth        sufficient    pam_unix.so try_first_pass nullok
auth        required      pam_deny.so
account     sufficient    pam_winbind.so
account     required      pam_unix.so
password    required      pam_cracklib.so try_first_pass retry=3
password    sufficient    pam_unix.so try_first_pass use_authtok nullok md5
password    required      pam_deny.so
session     required      pam_mkhomedir.so skel=/etc/skel umask=0077
session     required      pam_limits.so
session     required      pam_unix.so


Содержимое файла /etc/pam.d/samba

#%PAM-1.0
# /etc/pam.d/samba
auth       required     pam_nologin.so
auth       required     pam_stack.so service=system-auth
auth       required     pam_winbind.so
account    required     pam_winbind.so
account    required     pam_stack.so service=system-auth
session    required     pam_mkhomedir.so skel=/etc/skel umask=0077
session    required     pam_stack.so service=system-auth
password   required     pam_stack.so service=system-auth


Содержимое файла /etc/pam.d/login

#%PAM-1.0
# /etc/pam.d/login
auth       required     pam_securetty.so
auth       sufficient   pam_winbind.so
auth       sufficient   pam_unix.so use_first_pass
auth       required     pam_stack.so service=system-auth
auth       required     pam_nologin.so
account    sufficient   pam_winbind.so
account    required     pam_stack.so service=system-auth
password   required     pam_stack.so service=system-auth
session    required     pam_stack.so service=system-auth
session    optional     pam_console.so


Содержимое файла /etc/pam.d/gdm

#%PAM-1.0
# /etc/pam.d/gdm
auth       required     pam_stack.so service=system-auth
auth       required     pam_nologin.so
account    required     pam_stack.so service=system-auth
password   required     pam_stack.so service=system-auth
session    required     pam_stack.so service=system-auth
session    optional     pam_console.so

Для Debian совместимых дистрибутивов

Содержимое файла /etc/pam.d/common-account

# /etc/pam.d/common-account
account required        pam_unix.so
account required        pam_winbind.so use_first_pass

Содержимое файла /etc/pam.d/common-auth

# /etc/pam.d/common-auth
auth    sufficient      pam_unix.so nullok_secure
auth    required        pam_winbind.so  use_first_pass
auth    sufficient      pam_krb5.so try_first_pass

Содержимое файла /etc/pam.d/common-password

# /etc/pam.d/common-password
password   sufficient   pam_winbind.so
password   required     pam_unix.so nullok obscure min=4 max=8 md5

Содержимое файла /etc/pam.d/common-session

# /etc/pam.d/common-session
session optional        pam_mkhomedir.so skel=/etc/skel umask=0077
session required        pam_unix.so
session required        pam_winbind.so

    * Так же проверьте, чтобы файлы: /etc/pam.d/login, /etc/pam.d/gdm, /etc/pam.d/gnome-screensaver, /etc/pam.d/samba, /etc/pam.d/ssh - были следующего вида.

Содержимое файла /etc/pam.d/login

# /etc/pam.d/login
auth       requisite  pam_securetty.so
auth       requisite  pam_nologin.so
session    required   pam_env.so readenv=1
session    required   pam_env.so readenv=1 envfile=/etc/default/locale
@include   common-auth
auth       optional   pam_group.so
session    required   pam_limits.so
session    optional   pam_lastlog.so
session    optional   pam_motd.so
session    optional   pam_mail.so standard
@include   common-account
@include   common-session
@include   common-password

Содержимое файла /etc/pam.d/gdm

# /etc/pam.d/gdm
auth       requisite       pam_nologin.so
auth       required        pam_env.so readenv=1
auth       required        pam_env.so readenv=1 envfile=/etc/default/locale
@include   common-auth
@include   common-account
session    required        pam_limits.so
@include   common-session
@include   common-password

Содержимое файла /etc/pam.d/gnome-screensaver

# /etc/pam.d/gnome-screensaver
@include   common-auth

Содержимое файла /etc/pam.d/samba

# /etc/pam.d/samba
@include   common-auth
@include   common-account
@include   common-session

Содержимое файла /etc/pam.d/ssh

# /etc/pam.d/ssh
auth       required     pam_env.so # [1]
auth       required     pam_env.so envfile=/etc/default/locale
@include   common-auth
account    required     pam_nologin.so
@include   common-account
@include   common-session
session    optional     pam_motd.so # [1]
session    optional     pam_mail.so standard noenv # [1]
session    required     pam_limits.so
@include   common-password

Подключение к Windows домену

1. После того как все изменения были успешно произведены необходимо обязательно добавить запись типа A на DNS-сервере обслуживающем Windows домен. В противном случае учётная запись SAMBA-сервера будет добавлена в каталог Active Directory, но сразу же будет заблокирована, и даже если вы её разблокируете вручную авторизация работать не будет!

2. Теперь необходимо получить Kerberos-билет для добавляемого в Windows домен SAMBA-сервера. Делается это простой командой:

kinit [email protected]

Где domain_username - это имя пользователя существующего в Windows домене и имеющего право добавлять рабочие станции в домен. Где EXAMPLE.COM - это realm который мы описали в файлах конфигурации Kerberos (krb5.conf) и SAMBA (smb.conf). А на запрос пароля ввести пароль используемого нами пользователя.

3. Если получение Kerberos-билета прошло успешно и на DNS-сервере обслуживающем Windows домен существует запись типе A для добавляемого нами SAMBA сервера, то можно приступить к самой процедуре добавления SAMBA-сервера в Windows домен. Для этого необходимо выполнить команду:

net ads join -U domain_username

Где domain_username - это имя пользователя существующего в Windows домене и имеющего право добавлять рабочие станции в домен.


При помощи приведённой ниже команды можно протестировать возможность подключения к Windows домену:

net ads testjoin

Дополнение
Авторизация на удалённых рабочих станциях и серверах при помощи Kerberos без применения winbind

Если вы хотите всего лишь получать доступ к SMB ресурсам в пределах домена без запроса имени пользователя и пароля, то можете воспользоваться модулем pam_krb5, добавив строчку: auth sufficient pam_krb5.so в файл /etc/pam.d/system-auth приведя его к примерно такому виду:

Содержимое файла /etc/pam.d/system-auth

#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth        required      pam_env.so
auth        sufficient    pam_krb5.so
auth        sufficient    pam_unix.so try_first_pass nullok
auth        required      pam_deny.so
account     required      pam_unix.so
password    required      pam_cracklib.so try_first_pass retry=3
password    sufficient    pam_unix.so try_first_pass use_authtok nullok md5 shadow
password    required      pam_deny.so
session     required      pam_limits.so
session     required      pam_unix.so

    * И не забудьте проверить наличие в файле /etc/krb5.conf настроек для для данного модуля в разделе [appdefaults] (например настройки могут выглядеть так):

 pam = {
   debug = false
   ticket_lifetime = 36000
   renew_lifetime = 36000
   forwardable = true
   krb4_convert = false
 }

Если вы этого не сделаете, то соответственно не будете получать Kerberos билет при регистрации в системе.

После этого достаточно будет перерегистрироваться в системе и вы сможете получать доступ к SMB ресурсам вашей сети.
Известные проблемы
kinit(v5): Clock skew too great while getting initial credentials
При выполнении запроса Kerberos билета командой

$ kinit [email protected]

получаем сообщение об ошибке kinit(v5): Clock skew too great while getting initial credentials

    * Это означает, что между сервером выполняющим роль KDC и вашей рабочей станцией существует разница во времени больше чем разрешённая (обычно 5 минут).
    * Выполнить команду (синхронизировать время между сервером и рабочей станцией):

      # ntpdate ip_address_KDC

    * В редких случаях проблема возникает из-за неверного (по умолчанию) разрешённого интервала погрешности времени между сервером и рабочей станцией. В таком случае необходимо в файл /etc/krb5.conf на рабочей станции внести строку указывающую максимальную возможную погрешность:

. . .
[libdefaults]
clockskew = 300
. . .

И/или изменить максимальную временную погрешность в групповых политиках домена.

Только пользовать её тоже надо с головой, учесть, что здесь в некоторых pam-файлах даны настройки с использованием устаревших модулей, и не доработал я её на предмет "защиты от дурака".

Ну и про nsswitch.conf не забываем
« Last Edit: May 28, 2008, 13:19:38 by Xray_Linux_Root »
Mandrake, ASPLinux, Slackware, RedHat, Fedora, Debian
Зачем M$ Exchange? Есть eGroupware!
-j MASQUERADE + друзья в других сетях помогут построить мир независимо от желания вашего провайдера ;)

Offline alpha1

  • Full Member
  • ***
  • Posts: 145
  • Karma: +0/-0
Вход на samba по имени сервера \\nameserver
« Reply #12 on: May 28, 2008, 13:34:36 »
Все это настроено и работает. За исключением pam. pam не настроен. Сейчас попрбую, посмотрим что получится.
Хочешь стать умным, готовься выглядеть глупцом.

Offline alpha1

  • Full Member
  • ***
  • Posts: 145
  • Karma: +0/-0
Вход на samba по имени сервера \\nameserver
« Reply #13 on: May 28, 2008, 16:52:54 »
А после настройки Pam что нужно сделать, что бы изменения вступили в силу?
Хочешь стать умным, готовься выглядеть глупцом.

Offline Xray_Linux_Root

  • Sr. Member
  • ****
  • Posts: 296
  • Karma: +2/-0
Вход на samba по имени сервера \\nameserver
« Reply #14 on: May 29, 2008, 10:18:58 »
Quote from: alpha1
А после настройки Pam что нужно сделать, что бы изменения вступили в силу?
У тебя же не получается зайти на сервак по его имени, так причём здесь pam?

Если надо чтобы просто пользователи могли получить доступ по сети на ресурсы SAMBA-сервера необходимо:
1. настроить /etc/krb5.conf
2. получить kerberos билет
3. настроить /etc/smb.conf
4. завести SAMBA-сервер в домен
5. настроить /etc/nsswitch.conf
6. перезапустить сервисы: smb и winbind
7. проверить что winbind нормально всё резольвит: wbinfo -u; wbinfo -g
Проверь у себя всё по этим пунктам, и убедись всё-таки, что у тебя SAMBA забиндена только на одном сетевом интерфейсе (не считая lo)

Если надо чтобы доменные пользователи могли заходить на сервер через: ssh, login, X - тогда необходимо производить модификацию pam-файлов
« Last Edit: May 29, 2008, 10:46:04 by Xray_Linux_Root »
Mandrake, ASPLinux, Slackware, RedHat, Fedora, Debian
Зачем M$ Exchange? Есть eGroupware!
-j MASQUERADE + друзья в других сетях помогут построить мир независимо от желания вашего провайдера ;)

Offline alpha1

  • Full Member
  • ***
  • Posts: 145
  • Karma: +0/-0
Вход на samba по имени сервера \\nameserver
« Reply #15 on: May 29, 2008, 10:48:01 »
Мне нужно набрать в адресной строке експлорера \\nameserv и войти. Но я имею: \\nameserver - запрос логина и пароля - ввод логина и пароля - enter-запрос логина и пароля - ввод логина и пароля - enter-...... Как с этим боротся? Причем если я захожу \\192.168.x.xyz, то проблем нет.
Хочешь стать умным, готовься выглядеть глупцом.

Offline Xray_Linux_Root

  • Sr. Member
  • ****
  • Posts: 296
  • Karma: +2/-0
Вход на samba по имени сервера \\nameserver
« Reply #16 on: May 29, 2008, 11:20:10 »
Quote from: alpha1
Мне нужно набрать в адресной строке експлорера \\nameserv и войти. Но я имею: \\nameserver - запрос логина и пароля - ввод логина и пароля - enter-запрос логина и пароля - ввод логина и пароля - enter-...... Как с этим боротся? Причем если я захожу \\192.168.x.xyz, то проблем нет.
1. Проверь статус учётной записи SAMBA-сервера в AD с помощью оснастки "Active Directory - пользователи и компьютеры", не заблокирована ли она.
2. Вообще проверь все настройки согласно моему предыдущему посту.
3. Попробуй удалить учётную запись SAMBA-в домене и перезавести его в домен заново.
При заведении SAMBA-сервера в домен на DNS-сервере обслуживающем твой домен должны присутствовать записи описывающие твой SAMBA-сервер и в прямой и в обратной зоне. Иначе учётная запись SAMBA-сервера будет создана, но будет заблокирована (отключена) и при попытке на него зайти по сети будешь получать запрос на ввод логина и пароля. Возможно это твой случай.
Mandrake, ASPLinux, Slackware, RedHat, Fedora, Debian
Зачем M$ Exchange? Есть eGroupware!
-j MASQUERADE + друзья в других сетях помогут построить мир независимо от желания вашего провайдера ;)