기본 ftp 디렉토리를 변경하는 방법은 무엇입니까?

기본 ftp 디렉토리를 변경하는 방법은 무엇입니까?

pem 파일을 사용하여 FTP에 연결하면 정상적으로 연결되며 기본적으로 다음 디렉터리가 표시됩니다./home/ubuntu

이제 디렉토리 /home/ubuntu/var/www/myApplication. 저는 Linux를 처음 사용하는데 어떤 명령을 사용해야 하는지 알려줄 수 있는 사람이 있나요?

vsftpd그리고 내 /etc폴더 에 폴더/파일이 없는 기본 FTP 경로를 어떻게 확인할 수 있나요 ?

답변1

ftp 디렉터리는 기본적으로 사용자 HOME디렉터리이므로 목표를 달성하는 가장 쉬운 방법은 새 사용자를 만들고 해당 HOME디렉터리를 다음으로 설정하는 것입니다 /var/www/myApplication.

usermod -d /var/www/myApplication/ exampleuser

당신이 원한다면얽매다이 디렉토리에 대한 액세스를 설정해야 합니다.

chroot_local_user=YES

당신의 vsftpd.conf. 그런 다음 다음을 사용하여 vsftpd 서비스를 다시 시작하십시오.

service vsftpd restart

보다Unix & Linux: Centos / Linux 설치에서만 특정 /dir/ 액세스 권한을 가진 FTP 사용자를 생성하는 방법


더 간단한 방법이 있을 수 있습니다.여기:

vsftpd의 기본 로그인 디렉터리를 변경하려면 다음에서 ftp 사용자 홈 디렉터리를 변경하세요 /etc/passwd.ftp:x:116:116:vsftpd daemon:/var/vsftpd:/bin/false

ftp 사용자(userID=116) 홈 디렉토리가 로 변경되었습니다 /var/vsftpd. 이렇게 하면 기본/익명/알 수 없는 사용자가 특정 장소(/var/vsftpd)에 접속할 수 있습니다.

답변2

어떻게 설정했는지 잘 모르겠지만 vsftpd.

단계:

  1. 설치하다 vsftpd:

    sudo apt-get install vsftpd
    
  2. 다음 항목을 백업하십시오 vsftpd.conf.

    sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.orig
    
  3. 방화벽 규칙 설정:

    sudo ufw allow 20/tcp
    sudo ufw allow 21/tcp
    sudo ufw allow 990/tcp
    sudo ufw allow 40000:50000/tcp
    sudo ufw status
    
    • 방화벽이 없으면 다음을 설치하십시오.

      • sudo apt-get install ufw
      • 할 수 있게 하다:sudo ufw enabe
  4. 사용자를 생성하고 홈 디렉터리를 다음과 같이 만듭니다./var/www/ftp/myApplication

    • ftp다른 사용자를 위해 더 많은 폴더를 추가해야 하는 경우 위에 표시된 대로 추가 폴더를 만듭니다 .
    • 사용자 생성:

      sudo usermod -d /var/www/ftp/myApplication ftpuser
      
  5. 소유권을 설정하고 다음 명령을 사용하여 쓰기 권한을 제거하십시오.

    sudo chown nobody:nogroup /var/www/ftp
    sudo chmod a-w /var/www/ftp
    
  6. myApplication사용자에게 폴더 에 소유권을 할당합니다.ftpuser

    sudo chown ftpuser:ftpuser /var/www/ftp/myApplication
    
  7. 설정에 /etc/vsftpd.conf다음 구성을 추가합니다.

    # Allow anonymous FTP? (Disabled by default).
    anonymous_enable=NO
    #
    # Uncomment this to allow local users to log in.
    local_enable=YES
    write_enable=YES
    
    # Prevent the FTP-connected user from accessing any files or commands outside 
    # the directory tree
    chroot_local_user=YES
    
    # Add a user_sub_token in order to insert the username in our local_root directory 
    # path so our configuration will work for this user and any future users that might 
    # be added
    
    user_sub_token=$USER
    local_root=/var/www/ftp
    
    # Set up the configuration so that access is given to a user only when they 
    # are explicitly added to a list rather than by default
    userlist_enable=YES
    userlist_file=/etc/vsftpd.userlist
    userlist_deny=NO
    
  8. user_list에 사용자를 생성하고 추가합니다.

    echo "ftpuser" | sudo tee -a /etc/vsftpd.userlist
    
  9. daemon새 구성을 로드하려면 다시 시작하세요 .

    sudo systemctl restart vsftpd
    

출처:

https://www.digitalocean.com/community/tutorials/how-to-set-up-vsftpd-for-a-user-s-directory-on-ubuntu-16-04

관련 정보