Điểm:0

Cho phép chia sẻ samba truy cập kho lưu trữ tệp từ xa được gắn

lá cờ ru

Tôi có hai máy chủ trên cùng một mạng. Một đang chạy Windows Server 2016 và một đang chạy CentOS 8. Máy chủ Windows là kho lưu trữ tệp chính của tôi, đó là nơi chứa tất cả dữ liệu của tôi. Máy chủ CentOS đã gắn phần chia sẻ Windows và có thể truy cập các tệp của nó.

Trên CentOS, tôi đã thiết lập chia sẻ samba. Tại sao? Bởi vì tôi có một ứng dụng web chạy trên cùng một máy chủ và tôi muốn ứng dụng web kiểm soát ai có thể truy cập tệp nào. Vì vậy, thay vì để người dùng (nội bộ) của chúng tôi trực tiếp gắn phần chia sẻ Windows, họ sẽ gắn phần chia sẻ CentOS, đây sẽ là quyền truy cập "gác cổng" vào các tệp.

Trong thư mục samba, có các thư mục cho mỗi người dùng và cấu hình để cho phép người dùng truy cập vào các thư mục của họ. Ứng dụng web được định cấu hình để thêm các liên kết tượng trưng vào các thư mục này liên kết đến các tệp "thực".

Đây là vấn đề. Nếu tôi thêm tệp "bình thường" vào thư mục của người dùng, họ có thể truy cập tệp đó bình thường. Nhưng nếu tôi thêm một liên kết tượng trưng (vào một tệp trong chia sẻ Windows được gắn kết), nó sẽ không xuất hiện cho họ. Tôi khá chắc chắn rằng đây là sự cố SELinux.

Đây là cách mọi thứ được thiết lập.

  • Chia sẻ Windows được gắn kết

    Sudo mount -t cifs //WindowsShare/data /media/WinShare \ 
      -o ip=192.168.1.5,tên người dùng=người dùng,gid=sambashare
    
    ls -alhZ /media/WinShare
    drwxr-xr-x. 2 gốc sambashare system_u:object_r:cifs_t:s0 0 ngày 10 tháng 1 16:57 tệp
    
  • Chia sẻ samba được tạo và sử dụng /srv/smb (tất cả người dùng samba đều ở trong sambashare tập đoàn)

    ls -alhZ /srv
    drwxrwx---. 2 gốc sambashare unconfined_u:object_r:samba_share_t:s0 6 ngày 13 tháng 1 11:20 smb
    
  • Các /etc/samba/smb.conf có những điều sau đây:

    [toàn cầu]
        cho phép liên kết rộng không an toàn = có
        phần mở rộng unix = không
    
    [adminChia sẻ]
        đường dẫn = /srv/smb
        liên kết rộng = có
        theo liên kết tượng trưng = có
    
  • Để thử nghiệm, tôi đã thêm một liên kết tượng trưng và một tệp

    ln -s /media/WinShare/files/test.pdf /srv/smb/test.pdf
    chạm /srv/smb/file.bin
    

Sau đó, tôi đã cố gắng gắn kết \CentOS\adminChia sẻ trong Windows VM và tôi không thấy thử nghiệm.pdf tập tin nhưng tôi thấy tập tin.bin.

Làm cách nào tôi có thể cấp quyền truy cập chia sẻ samba của CentOS vào dữ liệu Windows Server được gắn kết? Khi thiết lập máy chủ CentOS, tôi đã chạy:

Sudo semanage fcontext -a -t samba_share_t "/srv/smb(/.*)?"

Đây là những gì cho phép tôi nhìn thấy tập tin.bin, nhưng tôi vẫn không thể nhìn thấy tập tin.pdf. Tôi đã tìm thấy cái này, nhưng tôi không biết liệu mình có muốn thay đổi không mọi thứ:

sudo setsebool -P samba_export_all_rw=1

Làm cách nào tôi có thể cho phép samba truy cập /media/WinShare thư mục? Điều này sẽ làm việc?

Sudo semanage fcontext -a -t samba_share_t "/media/WinShare(/.*)?"
djdomi avatar
lá cờ za
xác định người dùng để chia sẻ, chủ yếu là sự cố truy cập do người dùng và chmod sai
Điểm:0
lá cờ ru

Tôi sửa nó rồi! Tôi đã phải gắn chia sẻ Windows và buộc bối cảnh samba_share_t.

Khi lắp thêm context=unconfined_u:object_r:samba_share_t:s0.

Sudo mount -t cifs //WindowsShare/data /media/WinShare \
    -o ip=192.168.1.5,tên người dùng=người dùng,gid=sambashare,context=unconfined_u:object_r:samba_share_t:s0

Đă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.