Permissões Linux FTP / SSH

2

Não estou muito familiarizado com a forma correta de configurar permissões. Atualmente nós sudo tudo no servidor porque senão não temos permissão. Acabei de instalar o FTP e não tenho permissão para criar um diretório em uma instalação do wordpress. Eu estou percebendo tudo o que existe ...

-rw-r--r-- 1 root root
drwxr-xr-x 7 root root

Eu sei que não deveria ser possível alterar arquivos raiz, mas por que o root possui tudo? O cara do servidor que costumava estar aqui e definir tudo isso se foi. Esta é a melhor maneira ou devemos ter um grupo "webdev" ou algo assim?

    
por Webnet 07.07.2010 / 21:17

2 respostas

4

Você definitivamente quer um grupo para isso. Eu configuraria um grupo para acesso FTP. Coloque os usuários em um grupo que você deseja usar para usuários FTP, e sugiro o seguinte (assumindo que o grupo FTP é chamado de FTP e o diretório base de dados é / ftpdata - mude estes conforme necessário):

chown -R nobody:ftp /ftpdata
find /ftpdata -type f -exec chmod 664 {} \;
find /ftpdata -type d -exec chmod 2775 {} \;

Veja o que você está fazendo ...

chown -R nobody:ftp /ftpdata

Isso define o proprietário como nobody e o grupo como ftp para cada arquivo e diretório abaixo de / ftpdata.

find /ftpdata -type f -exec chmod 664 {} \;

Este comando define todos os arquivos abaixo de / ftpdata para o modo 664, que é leitura-gravação para o proprietário e grupo, e somente leitura para todos os outros.

find /ftpdata -type d -exec chmod 2775 {} \;

Este comando define todos os diretórios abaixo / ftpdata para 2775, isto é, leitura-gravação-e-execução para o proprietário e grupo, e leitura-execução para o mundo, mais quaisquer novos arquivos criados em qualquer um desses diretórios serão de propriedade pelo grupo ftp.

O 2 em 2775 é "Definir ID do grupo" - sempre que um novo arquivo é criado em um diretório com esse conjunto de bits, ele torna o grupo desse arquivo o mesmo que o grupo que possui o diretório. Sem isso, um usuário cujo grupo primário não seja o grupo ftp criará arquivos pertencentes a outro grupo e pode não ser acessível por outros membros do grupo.

    
por 07.07.2010 / 21:52
1

A raiz NÃO DEVE possuir tudo.

Crie um grupo e adicione seus usuários de FTP ao grupo.

Dê aos diretórios e arquivos que você deseja as permissões adequadas. Este comando tornará os diretórios e arquivos legíveis e graváveis pelo proprietário e pelo grupo e legíveis pelo mundo.

chmod -R 764 /the/path/to/files

Google 'Permissões de arquivo do Unix' e / ou 'chmod' para mais explicações, se isso não ajudar.

    
por 07.07.2010 / 21:29