AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / server / Perguntas / 885324
Accepted
Matthias Ronge
Matthias Ronge
Asked: 2017-11-28 05:19:53 +0800 CST2017-11-28 05:19:53 +0800 CST 2017-11-28 05:19:53 +0800 CST

Informações básicas sobre o cálculo do sambaSID

  • 772

Estou contribuindo e executando um aplicativo da Web de código aberto que, em grande parte, existia antes do meu tempo. O aplicativo adiciona entradas LDAP para usuários de aplicativos da Web a uma instância LDAP local para fornecer a esses usuários acesso ao sistema de arquivos via Samba.

Em todos os exemplos de trabalho eu sei que o sambaSIDvalor armazenado no LDAP está configurado para ser calculado pelo padrão

$LOCALSID "-" ($UIDNUMBER * 2 + 1000)

Exemplo: para um usuário com uid 1002 o sambaSID será algo como S-1-5-21-1234567890-5678912345-987654321 - 3004[espaços adicionados para facilitar a leitura]. Estou curioso para saber por que isso é necessário. De onde vêm esses números mágicos 2 e 1000, eles são necessários e, em caso afirmativo, por quê?

Pesquisando por aí, encontrei este PDF que não tem relação com nosso aplicativo e explica exatamente esse procedimento:

5. Configurando sambaSIDs de usuário

Ao criar usuários para o LDAP externo, você precisa prestar atenção especial aos seus sambaSIDs.

As entradas corretas do Samba para um usuário se parecem com o exemplo a seguir:

uidNúmero: 1001

sambaSID: S-1-5-21-2896602268-470177729-4123194723-3002
gidNumber: 1000

sambaPrimaryGroupSID: S-1-5-21-2896602268-470177729-4123194723-3001

Como você pode ver, há um número de 4 dígitos anexado ao sambaSID regular (que é retirado do exemplo WORKGROUP acima). Isso é gerado da seguinte maneira:

sambaSID: uidNumber * 2 + 1000
sambaPrimaryGroupSID: gidNumber * 2 + 1001

Essas entradas devem sempre corresponder e estar em conformidade com o esquema acima – caso contrário, o usuário não poderá se conectar via SMB.

Portanto, não parece ser o caso de que esses números sejam escolhidos arbitrariamente. No entanto, em nossos exemplos, diferentemente do PDF citado, acho que o sambaPrimaryGroupSIDnão sofre nenhuma aritmética, seu valor para o grupo 100( users) é apenas anexado, como S-1-5-21-1234567890-5678912345-987654321 - 100, o que é diferente das explicações no PDF citado acima. No entanto, o acesso ao Samba também funciona corretamente com ele, então me pergunto o quão confiável é a fonte que encontrei.

De que são esses números mágicos '2' e '1000'? Eles são necessários ou úteis para alguma coisa?

samba
  • 1 1 respostas
  • 2122 Views

1 respostas

  • Voted
  1. Best Answer
    student91
    2019-07-30T12:05:50+08:002019-07-30T12:05:50+08:00

    Eu estava procurando a mesma coisa, e encontrei este link .

    Lá é explicado que a multiplicação com 2 é para garantir que os IDs seguros do usuário e os IDs seguros do grupo não se sobreponham. (Este último sempre sendo ímpar).

    Sobre os +1000, números abaixo de 1000 são reservados para grupos especiais do Windows, assim como no Linux muitos números de grupos menores são reservados. Os usuários regulares do Windows obtêm números começando com 1000.

    • 1

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve