Điểm:2

Centos - Triển khai ứng dụng web - Cách tốt nhất để sử dụng Tài khoản người dùng không phải apache với SFTP/WinSCP là gì

lá cờ cn

Tôi có một câu hỏi đơn giản, tuy nhiên, tôi đang cố gắng hiểu cách thực hiện việc này một cách an toàn,

Tôi có một ứng dụng web dựa trên PHP chạy trên Linux (Centos7), tôi có quyền truy cập "người dùng" với đặc quyền Sudo trên máy chủ Linux.

Máy chủ web (Apache) chạy dưới dạng người dùng "apache" với nhóm "apache",

Vấn đề là khi tôi cố gắng triển khai các ứng dụng bằng WinSCP, tôi nhận được lỗi từ chối cấp phép, cách DUY NHẤT tôi có thể giải quyết vấn đề này là thực hiện

usermod -g apache myusername
chmod 775/var/www/html

Tôi không muốn đưa 775 cho toàn bộ thư mục web, Tôi nghĩ đó là một vấn đề bảo mật lớn, Cách an toàn nhất để lưu trữ loại tác vụ này là gì?

Làm cách nào tôi có thể triển khai ứng dụng của mình bằng Winscp bằng tài khoản người dùng của mình nhưng là người dùng AS apache? hoặc bất kỳ đề xuất nào khác về thông lệ công nghiệp phổ biến được coi là an toàn?

Điểm:1
lá cờ no

Có nhiều cách được đề xuất để giải quyết vấn đề này.

  1. Thêm quyền truy cập ghi trên /var/www/html cho người dùng đăng nhập thông qua WinSCP/SFTP. Điều này có thể được thực hiện theo nhiều cách.
    • Thay đổi nhóm thành người dùng đang chạy (và cấp quyền ghi)
      sudo chgrp <người dùng> /var/www/html
      sudo chmod g+w -R /var/www/html
      
      Lưu ý: Điều này hoạt động vì luôn có một nhóm unix được tạo cho người dùng.
    • Tạo một nhóm unix mới chứa cả apache và người dùng (và cấp quyền truy cập ghi)
      sudo groupadd <tên nhóm>
      sudo chgrp <tên nhóm> /var/www/html
      sudo chmod g+w -R /var/www/html
      
  2. Chạy dịch vụ apache khi người dùng đăng nhập thông qua WinSCP/SFTP. (liên kết)
  3. Di chuyển gốc tài liệu apache từ /var/www/html (Đơn giản bằng cách tạo một liên kết tượng trưng từ/var/www/html đến một thư mục thuộc sở hữu của người dùng triển khai hoặc bằng cách cập nhật cấu hình apache)
Falstone avatar
lá cờ us
Tôi sử dụng phương pháp 1 trong trường hợp này hoạt động tốt.
mahen3d avatar
lá cờ cn
@sreeraj bạn có thể giải thích thêm một chút về tùy chọn số 1 này bằng ảnh chụp màn hình về cách thay đổi nhóm đang chạy không?
lá cờ no
@ mahen3d Đã thêm chi tiết mà bạn đã đề cập.
Falstone avatar
lá cờ us
Tôi sẽ thêm điều này dưới dạng một nhận xét thay vì một câu trả lời riêng biệt, bởi vì tôi nghĩ Sreeraj xứng đáng nhận được tiền thưởng cho câu trả lời khá đầy đủ của mình. Bạn đã nêu lên những lo ngại về an ninh. Vì vậy, dựa trên gạch đầu dòng 1 của câu trả lời, bạn có thể đảo ngược quyền sở hữu để bảo mật hơn một chút. Giả sử người dùng WinSCP của bạn được gọi là 'fred' Đầu tiên: chown -R fred:apache /var/www/html Sau đó: chmod 750 /var/www/html Điều đó giới hạn quyền của người dùng apache. Có thể có tệp lẻ trong thư mục mà apache cần ghi vào, nhưng tệp đó có thể được đặt quyền trên cơ sở tệp riêng lẻ.

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