Theo tôi điều này rất khó, nếu không nói là không thể. Khi người dùng kết nối qua SSH, anh ta ít nhất cũng cần một vỏ, trong trường hợp của bạn là bash
. Để thực thi /bin/bash
anh ta cần có quyền truy cập /bin
. bash
chính nó cần phải đọc một số thứ từ /etc
(ví dụ /etc/bash.bashrc
), vì vậy người dùng cũng cần truy cập /etc
. Giả sử người dùng không chỉ muốn quanh quẩn trong thư mục này, anh ta có thể muốn đọc một tệp, nhưng để thực thi, ví dụ vim
anh ta cũng cần truy cập /usr/bin
.
Đây chỉ là một minh chứng nhỏ, có thêm một số phụ thuộc, ví dụ tôi không thực sự biết điều gì sẽ xảy ra nếu người dùng không có quyền truy cập vào /tmp
..
Bạn nên suy nghĩ về ý định của bạn. Bạn có muốn ai đó có quyền truy cập đọc / ghi vào một phần của dịch vụ web của bạn không? Sau đó, bạn có thể thiết lập một cái gì đó như FTP để xuất một thư mục cụ thể cho người dùng này. Vì vậy, anh ta có thể đọc / ghi tệp này mà không cần truy cập SSH.
Một giải pháp tốt đẹp khác sẽ là một kho lưu trữ. Ví dụ: thiết lập repo GIT và cho phép người dùng sao chép nó. Anh ấy có thể thực hiện các thay đổi của mình tại địa phương và gửi cho bạn một bản vá. Bạn có thể quyết định có nên áp dụng bản vá này hay không, việc khôi phục các bản vá lỗi cũng rất dễ dàng.