Eu tenho uma configuração básica do servidor SFTP usando OpenSSH
. Para configurar o servidor SFTP, segui estes passos:
Passo 1: instalei o pacote OpenSSH.
sudo apt-get install openssh-server -y
Etapa 2: Grupo separado criado para usuários de SFTP.
sudo groupadd sftpaccess
Etapa 3: editei o arquivo /etc/ssh/sshd_config
encontrando Subsystem sftp /usr/lib/openssh/sftp-server
e o expondo. Depois disso, fui até o final do arquivo e adicionei:
Subsystem sftp internal-sftp
Match group ftpaccess
ChrootDirectory %h
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
Etapa 4: Reiniciei o serviço sshd.
sudo /etc/init.d/ssh restart
Passo 5: Adicionado usuário com o grupo sftpaccess e criar senha
useradd -s /bin/bash -m -U -G sftpaccess sftp-alex
passwd sftp-alex
Etapa 6: crie e modifique o diretório de usuários.
sudo mkdir -p /mnt/users/sftp-alex/www
sudo chown root:root /mnt/users/sftp-alex
sudo chown root:sftpaccess /mnt/users/sftp-alex/www
Meu objetivo (O que está me impressionando):
Eu quero criar um diretório aqui ( /mnt/www
) para algo como um compartilhamento de usuário e, em seguida, associá-lo a /mnt/users/sftp-alex/www
, para que fique parecido com isto:
mkdir /mnt/www
mount --bind /mnt/www /mnt/users/sftp-alex/www
A próxima coisa neste processo é criar um sistema de compartilhamento / sistema de permissões. Meu pensamento sobre como fazer isso é bastante simples na execução. Eu quero criar dois grupos, um chamado sftp_read_write
e o outro chamado sftp_read
agora, se você ainda não sabe onde estou indo com isso, então deixe eu explico. Eu vou estar usando setfacl
para adicionar acls para arquivos e pastas. Meu pensamento foi algo parecido com isso setfacl -Rm g:sftp_read_write:rwX,g:sftp_read:rX /mnt/www
. Agora tudo isso é ótimo e tudo, mas não funciona, posso ler e escrever se estou em sftp_read_write
ou sftp_read
ou sftpaccess
Eu realmente preciso de ajuda para descobrir isso. Eu tenho uma configuração como essa para trabalhar antes, que foi há cerca de um ano, mas esqueci todos os comandos / permissões e é por isso que estou fazendo esta pergunta.
Saída de getfacl
# file: www
# owner: root
# group: sftpaccess
user::---
group::---
group:sftp_read:r-x
group:sftp_read_write:rwx
mask::rwx
other::---
Arquivo tentando editar
# file: Test.txt
# owner: sftp-alex
# group: sftp-alex
user::rw-
group::rw-
other::r--
Observação: posso editar esse arquivo quando eu estiver no sftp_read
ou sftp_read_write
, o que não deve ser o caso Só posso ler e escrever se estiver no sftp_read_write
.
Obrigado Alex
Tags permissions sftp acl linux ubuntu