chown / opt / local


2

Có an toàn (không có ý nghĩa bảo mật) chown -R user /opt/local/, vì vậy tôi không sudo port installdùng MacPorts?


Tôi không thích ý tưởng sudoing với MacPorts vì nó có thể viết những thứ trong / Thư viện, chẳng hạn, mà không có sự cho phép của tôi. Tôi biết tôi có thể sử dụng homebrew thay vì MacPorts nhưng tôi gặp vấn đề với việc viết phần mềm của bên thứ ba /usr/local. Tôi cũng có thể biên dịch MacPorts với tiền tố tùy chỉnh trong thư mục chính của mình nhưng tôi đoán nó giống với /opt/local/, vì /opt/local/không phải là thư mục hệ thống.


1
brew chowns /usr/localvà sử dụng nó như thế này.
Kevin

Tôi đã sử dụng homebrew như thế này nhưng brew doctorsẽ luôn phàn nàn về một số cấu hình, thư viện của chương trình bên thứ ba, v.v ... Tôi ước tất cả các chương trình của bên thứ ba sẽ cài đặt /opt/vì vấn đề này sẽ được giải quyết tốt (cộng với /opt/được thiết kế để sử dụng cho loại điều này, /usr/local/là không phải).
mũ sắt

Câu trả lời:


4

Nếu bạn muốn sử dụng cài đặt MacPorts không root, bạn sẽ phải định cấu hình cài đặt của mình để thực hiện điều đó bằng cách cài đặt từ nguồn và chỉ định --with-no-root-privilegeslàm đối số ./configure. Không phải là bạn cũng có thể phải thiết lập --prefix, nếu bạn muốn làm điều đó.

Tuy nhiên, tôi khuyến khích bạn không làm điều đó vì một vài lý do:

  • Các thư mục được liệt kê trong $ PATH của nhiều người dùng có thể ghi mà không có đặc quyền siêu người dùng có thể được sử dụng cho các cuộc tấn công (ví dụ: bằng cách đặt một nhị phân sudo sẽ ghi lại mật khẩu ở đó). Điều tương tự cũng có thể được thực hiện bởi phần mềm độc hại đang chạy như người dùng của bạn để lấy mật khẩu của bạn - mặc dù người ta có thể lập luận rằng đã quá muộn khi điều này xảy ra.
  • MacPorts không thể sử dụng phân tách đặc quyền mà không có quyền root. Thông thường, MacPorts sẽ bỏ đặc quyền cho người dùng "macports" không có đặc quyền trong khi xây dựng phần mềm để tránh các Makefiles lừa đảo phá hoại (hoặc thậm chí đọc các tệp) trong $ HOME của bạn.
  • MacPorts kể từ phiên bản 2.2 sử dụng khả năng hộp cát OS X để ngăn các cổng cài đặt các tệp bên ngoài vị trí mà MacPorts khuyến khích. Các vị trí mặc định này là:
    • /opt/local
    • /Applications/MacPorts
    • /Library/LaunchDaemons/
    • một số vị trí cần thiết để một số cổng đặc biệt hoạt động, ví dụ: /usr/lib/pamcho các mô-đun PAM.

Vì vậy, kết luận, tôi nghĩ rằng việc cài đặt MacPorts bằng quyền root thực sự an toàn và bảo mật hơn so với việc không sử dụng chúng.

Tuyên bố miễn trừ trách nhiệm: Vì tôi là Nhà phát triển MacPorts, tôi có thể bị thiên vị.


Cảm ơn bạn đã trả lời kỹ lưỡng của bạn. Tôi đã không nhận thức được việc sử dụng MacPorts về khả năng hộp cát.
mũ lưỡi trai

0

Điều này an toàn cho đến khi bạn chọn cài đặt bất cứ thứ gì bên trong / opt

Tại thời điểm đó, tùy thuộc vào chương trình bạn cài đặt ở đó và quyền và bit dính nào bạn đã đặt. Nói chung, đây là một sự đánh đổi công bằng miễn là bạn hạn chế quyền truy cập vào máy tính, nhưng bất cứ khi nào bạn để người dùng viết trực tiếp đến nơi lưu trữ các chương trình, bạn có nguy cơ leo thang đặc quyền và các vấn đề bảo mật nếu chương trình có thể bị khai thác hoặc có cửa sau hoặc chỉ đơn giản là phá hủy do thiết kế của chúng.


Vì vậy, một chương trình khác có thể dễ dàng ghi vào /opt/local/vì quyền truy cập không bị hạn chế. Nếu tôi sử dụng một tiền tố khác chỉ cho macports thì ~/opt/localsao? Một lần nữa, một chương trình của bên thứ ba có thể viết vào đó nhưng không chắc là có các chương trình của bên thứ ba sẽ viết trong một thư mục do người dùng định nghĩa.
mũ sắt
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.