Permissão a arquivos no Centos

1. Permissão a arquivos no Centos

Tarcisio Miranda
chephei

(usa Outra)

Enviado em 11/08/2018 - 12:22h

Bom dia pessoal, hoje eu possuo servidores na distro Centos 7, e estou configurando um DeployBot para eu subir as atualizações sozinho no servidor, mas eu sempre tenho que ficar dando permissões as pastas, exemplo
Chown -R user:user /usr/share/nginx/html/..........

Eu tenho 2 usuarios que preciso dar permissão para escrever e editar arquivos de tal diretorio, como posso fazer isso pelo ssh.
Os usuarios sao tarcisio e deploybot, ambos no grupo sudoes.
Alguem poderia me ajudar , muito obrigado.


  


2. Re: Permissão a arquivos no Centos

Hugo Cerqueira
hrcerq

(usa Outra)

Enviado em 11/08/2018 - 13:17h

Bom dia.

Receio que você esteja confundindo as configurações de posse com configurações de permissão. Todo arquivo ou diretório é possuído por um usuário e um grupo. Porém isso não significa que somente o dono ou grupo do arquivo ou diretório pode ter permissões de acesso a ele. Para isto existem as configurações de permissão, que definem o que o dono, o grupo e outros usários (que não sejam nem o dono nem membros do grupo) podem fazer (leitura, escrita e execução).

O comando chown, que você usou, define o dono e o grupo do arquivo/diretório. Porém o comando chmod é que é usado para definir as permissões. Portanto você deve decidir primeiro quem serão o dono e o grupo dos arquivos, e em seguida definir (com chmod) o que poderá ser feito com esses arquivos pelo dono, pelo grupo e por outros usuários. Por padrão, somente o dono e o grupo podem adicionar arquivos a um diretório (ou removê-los), ou alterar o conteúdo de um arquivo.

Se você quiser que outros usuários também possam fazê-lo, deverá adicionar a permissão de escrita a outros usuários, o que pode ser feito com o comando:

chmod o+w <nome do arquivo ou diretório> 


Se não quiser que qualquer usuário possa fazer modificações, mas quiser que um grupo específico de usuários possa fazê-lo, então deve definir um grupo de usuários, e com o comando chown definir este grupo como sendo o grupo do arquivo ou diretório. E então adicionar a este grupo os usuários que poderão fazer a modificação.

Para mais informações sobre chmod e chown, aconselho ler as suas man pages:

man chmod
man chown


---

Atenciosamente,
Hugo Cerqueira


3. Re: Permissão a arquivos no Centos

Tarcisio Miranda
chephei

(usa Outra)

Enviado em 12/08/2018 - 17:32h

Muito obrigado pela resposta, consegui fazer oque eu queria, mas so deu um problema na hora de visualizar os arquivos no sftp, e o usuario do sftp é o usuario do grupo nginx, eu consigo editar porem nao consigo ver no sftp
Print do erro:
https://print.sig.digital/12-0-2018_17-34-04.png

Eu coloquei os usuarios dentro do grupo nginx e fiz assim:
Group Nginx: tm, deploybot, nginx
Chown -R nginx:nginx /usr/share/nginx/html/
chmod 770 -R /usr/share/nginx/html


4. Re: Permissão a arquivos no Centos

Hugo Cerqueira
hrcerq

(usa Outra)

Enviado em 12/08/2018 - 18:28h

chephei escreveu:

Muito obrigado pela resposta, consegui fazer oque eu queria, mas so deu um problema na hora de visualizar os arquivos no sftp, e o usuario do sftp é o usuario do grupo nginx, eu consigo editar porem nao consigo ver no sftp
Print do erro:
https://print.sig.digital/12-0-2018_17-34-04.png

Eu coloquei os usuarios dentro do grupo nginx e fiz assim:
Group Nginx: tm, deploybot, nginx
Chown -R nginx:nginx /usr/share/nginx/html/
chmod 770 -R /usr/share/nginx/html


Mas você adicionou esses grupos como? Nos arquivos de configuração do nginx? Porque nesse caso é outro tipo de grupo. Os usuários que devem ter acesso a esses arquivos via grupo nginx devem ser adicionados ao grupo do sistema operacional. Você pode verificar os grupos de um usuário com o comando groups. Então, se os usuários tm e deploybot devem estar no grupo nginx, digite:

groups tm deploybot 


Na saída desse comando deve constar o grupo nginx para os dois usuários, algo assim (mas pode ter outros grupos, se você tiver adicionado):

tm: tm nginx
deploybot: deploybot nginx

Se o grupo nginx não constar na lista de grupos desses usuários, então você deve adicioná-los ao grupo. Isso pode ser feito com o comando usermod, conforme a seguir. (Atenção: o comando usermod deve ser executado como root).

usermod -a -G nginx tm
usermod -a -G nginx deploybot


---

Atenciosamente,
Hugo Cerqueira






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts