Tạo FTP access bằng SSH

1. Trước khi tạo tài khoản

Chuẩn bị server

Thường thì server đã cài đặt ftp-server và ftp-client. Nhưng nếu server mới tinh thì chúng ta có thể cài bằng lệnh. Trong bài viết này chúng ta dùng VSFTP để cài đặt ftp server.

– Đối với Ubuntu:

 

sudo apt-get update

sudo apt-get install ftp

sudo apt-get install vsftpd

 

– Đối với Centos:

 

sudo yum install vsftpd

sudo yum install ftp

 

Cấu hình VSFTP

– Ubuntu:

sudo nano /etc/vsftpd.conf

 

– CentOs:

 

sudo nano /etc/vsftpd/vsftpd.conf

 

Sau khi mở file chúng ta edit một số dòng:

– Bỏ comment dòng 29 và 33

 

write_enable=YES
local_umask=022

 

– Bỏ comment dòng 120 (ngăn truy cập ra ngoài thư mục Home của user đó)

 

chroot_local_user=YES

 

– Sửa nội dung:

 

pam_service_name=sftp

thành:

 

pam_service_name=ftp

 

– Thêm vào cuối file:

 

allow_writeable_chroot=YES

Như vậy là tạm cấu hình xong. Chỉ cần khởi động lại service

sudo service vsftpd restart

 

2. Tạo FTP user

Trong SSH gõ lệnh:

 

useradd -d /path/to/user/home/directory/ -s /bin/bash -g groupname newusername

Trong đó:
-d /path/to/user/home/directory/ : đường dẫn thư mục mặc định của user khi connect FTP

-s /bin/bash: cho phép user connect bằng SSH, nếu không → đặt là /bin/false

-g groupname: add user mới vào group có tên “groupname”

newusername: tên đăng nhập user đang tạo.

Đặt mật khẩu truy cập cho user mới:

passwd newusername

Cửa sổ SSH sẽ ra thông báo:

New UNIX password:

Retype new UNIX password:

nhập password vào 2 lần (Dấu nhắc lệnh sẽ không di chuyển khi bạn gõ)

Nếu tạo mật khẩu thành công:

passwd: all authentication tokens updated successfully.

 

3. Sửa đổi FTP user

 

usermod -d /path/to/user/home/directory/ -s /bin/false – newusername

Trong đó các tham số như đã giới thiệu ở phần 2.

4. Xóa FTP user

 

userdel username

Nếu muốn xóa luôn home directory của user:

userdel -r username