Originalmente, fiz essa pergunta no Stack Overflow , mas as pessoas sugeriram que eu perguntasse aqui.
Estou escrevendo um software que precisa identificar exclusivamente várias máquinas diferentes. Eu estava pensando em usar /etc/machine-id
para fazer isso.
Ao ler os documentos para o ID da máquina, deparei-me com esta passagem:
Esse ID identifica exclusivamente o host. Deve ser considerado "confidencial" e não deve ser exposto em ambientes não confiáveis, principalmente na rede. Se um identificador único estável vinculado à máquina for necessário para alguma aplicação, o ID da máquina ou qualquer parte dela não deverá ser usado diretamente. Em vez disso, o ID da máquina deve ser hash com uma função de hash criptográfico com chave, usando uma chave fixa específica do aplicativo.
Não sei muito sobre o dbus, mas fiquei com a impressão de que é apenas para IPC. Se for esse o caso, não sei por que realmente importaria se um atacante remoto soubesse o ID da máquina. Além dos óbvios problemas de privacidade, existem razões de segurança legítimas (conhecidas) para não compartilhar o ID da máquina? Ou este é apenas um caso de alguma documentação com palavras fortes?
/etc/machine-id
é um arquivo e o endereço MAC é facilmente falsificado - portanto, pode ser facilmente copiado (contornando sua identificação).