Người dùng và quyền trên Raspi vừa là nhà và máy chủ owncloud


0

Tôi là người dùng máy tính để bàn Linux lâu năm nhưng là một người mới hoàn toàn về máy chủ và bảo mật. Bây giờ tôi muốn thiết lập một Raspi (chạy Raspbian) để hoạt động như một máy chủ in CUPS, máy chủ tệp NFS và lưu trữ sao lưu, máy chủ owncloud và thậm chí có thể là một máy chủ web hoặc thư nhỏ trong thời gian dài.

Vì tôi không có kinh nghiệm với máy chủ, tôi hơi không chắc chắn liệu có nên sao lưu dữ liệu riêng tư trên cùng một máy có thể truy cập từ internet không, ví dụ: Sử dụng owncloud. Có điều gì có thể hoặc cần phải được thực hiện để bảo vệ dữ liệu này không?

Hiện tại tôi đang ở giai đoạn đầu, chỉ cần thiết lập Raspbian, CUPS và thiết lập máy in trong mạng cục bộ. Mọi thứ thông qua người dùng chuẩn "pi" được cấu hình sẵn trong Raspbian. Tôi nên tiến hành như thế nào khi định cấu hình NFS và owncloud?

Cảm ơn vì bất kì sự giúp đỡ, Photon.


2
Mặc dù SU có thể là nơi tốt nhất để trả lời câu hỏi này, nhưng nó gây ấn tượng với tôi rằng những người trên Raspberry Pi ( raspberrypi.stackexchange.com ) và Unix / Linux ( unix.stackexchange.com ) Các trang web SE có thể quen thuộc hơn.
Dane

Một Raspberry có vẻ quá yếu (về RAM) cho tất cả các dịch vụ này cùng một lúc. Ngoài ra, nếu bạn không có kinh nghiệm về bảo mật, tôi khuyên bạn nên không chuyển tiếp bất kỳ cổng nào cũng như không mở nó ra toàn bộ internet cho đến khi bạn cảm thấy thoải mái với việc bảo mật và quản lý máy chủ Linux.

Câu trả lời:


1

Tôi nên tiến hành như thế nào khi định cấu hình NFS và owncloud?

Owncloud là một ứng dụng PHP yêu cầu MySQL và Apache. Vì vậy, nhờ có cài đặt và chạy owncloud, bạn sẽ chạy máy chủ web Apache rồi.

Thông thường, Apache có thể được cấu hình để chạy như một người dùng cục bộ www-data. Mọi tệp Apache (và do đó, bất kỳ người dùng nào truy cập máy chủ web của bạn từ bên ngoài) đều có thể chạm vào và khả năng phục vụ phải được truy cập bởi www-data người dùng hoặc www-data nhóm.

PHP là một mô-đun được gọi bởi Apache khi người dùng truy cập tập lệnh PHP. PHP sẽ chạy cùng một người dùng như Apache đang chạy. Tuy nhiên, PHP có thể cố gắng truy cập bất kỳ tệp nào trên hệ thống của bạn. Sẽ không thành công nếu các quyền chặn nó - tức là trừ khi tệp có thể được truy cập bởi www-data người dùng hoặc nhóm (giả sử mặc định).

Một ứng dụng PHP, nếu nó không được viết tốt, có thể dễ bị khai thác cho phép người dùng duyệt bất kỳ tệp nào PHP có thể truy cập. Một ví dụ về điều mà tin tặc có thể cố gắng làm là gửi một truy vấn không đúng định dạng tới tập lệnh PHP và làm cho nó trở lại /etc/passwd hoặc có thể nội dung của các tệp cấu hình có thể đọc được trên thế giới khác trong /etc. Bây giờ điều này không gây hại nghiêm trọng cho hệ thống của bạn tại thời điểm đó, nhưng có thể cung cấp thông tin cho kẻ tấn công trên các tài khoản hợp lệ, điều này có thể giúp họ nếu họ đang cố gắng bẻ khóa tài khoản cục bộ bằng cách nào đó.

OwnCloud đã xuất hiện được một thời gian vì vậy nó tương đối trưởng thành và được thử nghiệm trong lĩnh vực này, nhưng có một điểm cần tránh khỏi điều này: theo kịp các bản cập nhật.

Bản thân Apache có thể hạn chế các tệp được phục vụ với .htaccess các tệp, nhưng đây là thứ mà Apache thực thi, không phải Linux. .htaccess các tệp không kiểm soát những gì tập lệnh PHP có thể xem, chỉ những tệp nào có thể được phục vụ thông qua các yêu cầu HTTP trực tiếp từ trình duyệt.

Vì thế:

  • Theo kịp với các bản cập nhật hệ điều hành.

  • Thực sự bạn nên chạy owncloud trên một hệ thống vật lý (hoặc ảo) riêng biệt (một pi khác). Tuy nhiên, nếu bạn chỉ đang thử nghiệm hoặc thử nghiệm hoặc cẩn thận với những người bạn chia sẻ IP của riêng mình, điều đó sẽ tương đối ổn.

  • Theo dõi nhật ký máy chủ web của bạn ( /var/log/apache2 trên Debian). Bạn có thể nhìn vào goaccess có thể cung cấp cho bạn một số báo cáo dễ hiểu.

  • Dữ liệu bạn lưu trữ với owncloud và trên toàn bộ hệ thống này, cần được sao lưu thường xuyên và một bản sao được giữ ngoài hệ thống đó.

  • Các tệp bạn muốn không có cách nào được nhìn thấy bởi owncloud hoặc máy chủ web phải có quyền từ chối quyền truy cập vào www-data nhóm và người dùng.


Cảm ơn các câu trả lời chi tiết! Tôi đã làm theo hướng dẫn này: tech-blog.clericare.com/2013/08/ Đó là, sử dụng nginx và postgresql và đưa owncloud vào một "nhà tù", tức là thay đổi root thành / var / lib / owncloud / cho quy trình PHP của riêngcloud như được mô tả trong hướng dẫn. Một ổ cứng ngoài được gắn vào / media / data / và thư mục con / media / data / owncloud của nó được gắn (với tùy chọn "liên kết") với / var / lib / owncloud / data). Sao lưu nên được đặt trong / phương tiện / dữ liệu / sao lưu. Liệu thiết lập này có ý nghĩa hay có một số lỗi bảo mật tiềm năng? Cảm ơn một lần nữa!
Photon

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.