SSH, SFTP, FTP

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

PHÂN QUYỀN SSH – SFTP:

user01: có quyền truy cập ssh và ko quyền truy cập sftp

user02: ko quyền truy cập ssh và có quyền truy cập sftp

user03: cả 2 và có thể sử dung all file

1. Tạo user trên linux (Ubuntu)


- Để tạo user trong linux: (Ở đây đồng thời sẽ tạo thư mục của user trong /home ):
Dùng lệnh useradd (nên dùng vì nó ngắn hơn với tùy chọn -m sẽ tạo thư mục
của /home/username ):
sudo useradd -m username
hỏi newpassword: nhập pass của user mới
retype-password: nhập lại pass
(Lưu ý là “useradd” chứ không phải là “adduser” vì 2 lệnh tuy đều tạo user mới
nhưng tùy chọn cho mỗi lệnh là khác nhau)
- Sau khi lần lượt tạo 3 user thì kiểm tra xem đã có trong thư mục /home chưa:
ls -l /home

Qua tôi có nhầm cái đoạn mà add nó vào group sudo để có thể sử dụng lệnh sudo thì
này là bên ssh còn bên phân quyền bên sftp là khác

Còn để hỏi có cần thêm hay không thì là tùy mọi người , yêu cầu phải chạy với sudo

thì thêm còn không thì thôi ;))

2. Cấu hình trong file sshd_config

sudo nano /etc/ssh/sshd_config

sau đó lướt xuống dưới cùng sẽ thấy dòng như sau:


Subsystem sftp /usr/lib/openssh/sftp-server

Sau đó thêm dấu # vào trước dòng trên để vô hiệu hóa dòng trên và viết bên dưới:

Subsystem sftp internal-sftp


*Cấu hình cho user01:

Match User user01

ForceCommand /bin/bash

( Ở đây nó sẽ áp dụng cho user01 chỉ sử dụng được ssh theo shell là bash còn sẽ không
truy cập được vào sftp (khi truy cập nó sẽ khiến terminal treo )

*Cấu hình cho user02:

Match User user02

ChrootDirectory /home

ForceCommand internal-sftp

AllowTcpForwarding no

X11Forwarding no

- ForceCommand khiến cho user02 sử dụng sftp nội bộ và không có quyền truy cập ssh

- Với ChrootDirectory là /home thì đường dẫn root khi user02 truy cập sftp là /home

- Mấy tùy chọn còn lại có thể tra mạng để hiểu rõ hơn nha cứ no là được :)

https://man.openbsd.org/sshd_config

*Hoàn thành config thì file nó sẽ như thế này:


*Truy cập sftp :

Kiểm tra đường dẫn trên remote (server ubuntu) là gì :

pwd
Ở đây nó đang hiện là / là đường dẫn gốc hiện tại của user02 khi truy cập sftp nhưng nó
là /home được cấu hình trong file sshd_config với cấu hình ChrootDirectory ở trên

Kiểm tra các file, folder có trong đường dẫn / hiện tại với lệnh:

ls

Thì ở đây nó đang liệt kê ra những folder có trong /home trên server đúng không,

Có thể ls -l /home trên ubuntu xem có giống không ;)

*Còn user03 khi không cấu hình trong file sshd_config thì nó sẽ connect được cả ssh lẫn sftp

- Về vần đề sử dụng all file (không chắc đâu ;)) ) thì trên server cấp quyền với

câu lệnh chmod, chown để cấp cho user03 có thể sử dụng file đấy thôi :))

- Có thể tự chmod, chown khi đứng ở user03 khi truy cập ssh với lệnh sudo ( đấy
vấn đề ở trên khi muốn add vào group sudo đây )

- Lệnh add vào group sudo để sử dụng lệnh sudo

su root

Nhập mk cho root


usermod -aG sudo username

(username là tên user muốn add vào group sudo )

VD: ở trên muốn add sudo cho user03 thì :

usermod -aG sudo user03

*Thay đổi quyền file với chmod : Xem file cũ cũng có phần này rồi

*Thay đổi quyền sở hữu: Xem file cũ cũng có phần này rồi

You might also like