Điểm:0

Làm cách nào để ngăn người dùng SFTP nhìn thấy các thư mục khác?

lá cờ cn

Tôi đang thiết lập máy chủ web chạy Windows Server 2019. Một trong những nhà cung cấp của chúng tôi cần có khả năng tải tệp lên. Tôi có

  • Đã thêm sshd
  • Tạo thông tin đăng nhập để họ sử dụng
  • Đã tạo một nhóm cho thông tin đăng nhập đó
  • Đã thêm thông tin đăng nhập đó vào nhóm và xóa thông tin đăng nhập khỏi tất cả các nhóm khác
  • Đã tạo một thư mục tải lên
  • Cho nhóm ViếtBiến đổi quyền trong thư mục đó
  • Đã thêm dòng ForceCommand internal-sftp -d "C:\inetpub\ftproot\Upload" đến một Trận đấu chỉ thị cho nhóm đó trong sshd_config

Càng xa càng tốt. Thông tin đăng nhập đó có thể kết nối với hộp qua SFTP và phiên sẽ tự động bắt đầu trong thư mục Tải lên, và nó có thể tải lên và tải xuống các tệp từ đó. Nhưng tôi không thể tìm ra cách ngăn nó nhìn thấy nội dung của các thư mục khác. Chỉ cần xóa thông tin đăng nhập khỏi nhóm người dùng không có tác dụng. Từ chối nhóm ĐọcDanh sách trong bao vây ftproot thư mục dẫn đến việc không thể kết nối (với lỗi xác thực). Đề xuất duy nhất tôi tìm thấy trong một giờ tìm kiếm trên Google là đặt giá trị cho Thư mục Chroot, nhưng điều đó dẫn đến việc không thể kết nối thông tin đăng nhập bằng SFTP hoặc SSH (với sự cố rõ ràng của dịch vụ để phản hồi). Tôi khá mới với máy chủ Windows và tôi không có ý tưởng. Rõ ràng phải có một cách đúng đắn để làm điều này - ai đó có thể chỉ cho tôi đi đúng hướng không?

[Cập nhật]

Hộp này đang chạy OpenSSH 7.7:

> ssh -V
OpenSSH_for_Windows_7.7p1, LibreSSL 2.6.5

Khi tôi thêm dòng này vào Trận đấu chỉ thị cho nhóm sftp:

ChrootDirectory "C:\inetpub\ftproot\Upload"

và sau đó cố gắng kết nối với tư cách là bất kỳ người dùng nào, cho dù có thuộc nhóm đó hay không, đây là nội dung xuất hiện trong sshd.log (rõ ràng là pid, cổng và dấu thời gian sẽ thay đổi):

3332 2021-08-17 12:04:24.931 Không thể nhập mật khẩu cho người dùng không hợp lệ sftpuser từ cổng XX.XX.XX.XX 34240 ssh2
lá cờ in
Giả sử bạn đang sử dụng openssh, có thể https://serverfault.com/a/1006119/187998 là một giải pháp, nếu không, vui lòng cung cấp thêm chi tiết về phiên bản và cấu hình. Ngoài ra, hãy thử tạo và xem các tệp nhật ký chi tiết.
Don R avatar
lá cờ cn
Tôi đã thêm những thông tin bổ sung mà tôi có. Tôi không thể tìm thấy bất kỳ tài liệu nào đề cập đến việc thay đổi mức độ chi tiết của nhật ký.
lá cờ in
Còn https://github.com/PowerShell/Win32-OpenSSH/issues/190#issuecomment-662879084 thì sao?
Don R avatar
lá cờ cn
@NiKiZe Tôi vừa thử `LogLevel VERBOSE` nhưng không có sự khác biệt nào về nội dung được ghi khi tôi cố gắng kết nối.
Don R avatar
lá cờ cn
Trên thực tế, một số bài đăng ở phía dưới có một điều dường như là chìa khóa: Không *không* sử dụng dấu ngoặc kép trong đường dẫn `ChrootDirectory`.
Điểm:1
lá cờ cn

Có vẻ như phần quan trọng ở đây là không phải để sử dụng dấu ngoặc kép xung quanh đường dẫn trong dòng này:

ChrootDirectory C:\inetpub\ftproot\Upload

Sau khi thực hiện thay đổi đó, việc tạo kết nối SFTP hoạt động chính xác như tôi mong đợi: thư mục mà nhóm bị hạn chế xuất hiện dưới dạng thư mục gốc.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.