Tất cả những người dùng trong tệp / etc / passwd là gì?


27

/ Etc / passwd được cho là có một dòng cho mọi người dùng trên hệ thống. Trong số các tên người dùng và root phổ biến, có một nhóm người dùng khác. Vài ví dụ:

timidity:x:114:127:TiMidity++ MIDI sequencer service:/etc/timidity:/bin/false
liquidsoap:x:115:128::/usr/share/liquidsoap:/bin/false
statd:x:116:65534::/var/lib/nfs:/bin/false
gdm:x:117:131:Gnome Display Manager:/var/lib/gdm:/bin/false
mysql:x:118:133:MySQL Server,,,:/nonexistent:/bin/false
  1. Mục đích với tất cả những người dùng này là gì?
  2. Làm thế nào tôi có thể đăng nhập như mysql hoặc gdm? Mật khẩu sẽ là gì?

Câu trả lời:


30

Chúng là những gì bạn gọi là "tài khoản dịch vụ" và chúng được sử dụng để phân tách các đặc quyền (ví dụ: mysql không thể đọc các tệp mà nó không sở hữu).

Họ không thể đăng nhập tương tác vì /bin/falsemục nhập. Thay vào đó, chúng chỉ được sử dụng để truy cập vào các tệp thích hợp.


Tôi phát hiện ra rằng một số không có /bin/falsemục nhưng tôi vẫn không thể đăng nhập vào chúng. Một ví dụ ->proxy:x:13:13:proxy:/bin:/bin/sh
Pithikos

1
Điều đó phải làm với một đăng nhập không mật khẩu - SSH từ chối mật khẩu trống ( :x:một phần của dòng). Bạn có thể su - proxyví dụ, nhưng không cần.
Nathan C

2
: x: không phải là mật khẩu trống, điều đó có nghĩa là không có mật khẩu nào hoạt động. Đó là trường cho hàm băm mật khẩu và không có gì sẽ băm thành chữ x, vì vậy dù bạn nhập mật khẩu là gì thì nó cũng không hoạt động. Trên thực tế, đó là sự thật trước / etc / bóng; trường đó trong / etc / passwd không được sử dụng nữa, nhưng: x: vẫn có thể chỉ ra rằng không thể đăng nhập.
Randy Orrison

Sai rồi. Mật khẩu: Một ký tự x chỉ ra rằng mật khẩu được mã hóa được lưu trữ trong tập tin / etc / bóng. Xin lưu ý rằng bạn cần sử dụng lệnh passwd để tính toán hàm băm của mật khẩu được nhập tại CLI hoặc để lưu trữ / cập nhật hàm băm của mật khẩu trong tệp / etc / bóng. nguồn: cyberciti.biz/faq/under
Hiểu

16

Các tài khoản này được sử dụng để chạy các dịch vụ trong nền. Hệ thống linux của bạn sẽ có một loạt ứng dụng thực hiện một loạt các tác vụ trong nền, vì bạn đã xác định chính xác SQL là một dịch vụ như vậy. Để các dịch vụ này thực hiện các hoạt động, nó phải có người dùng kèm theo.

Để bảo vệ tính bảo mật của hệ thống của bạn, các tác vụ này không thể được thực hiện dưới dạng root và thay vào đó là các tài khoản được chỉ định không có quyền truy cập shell hoặc đăng nhập như được xác định bởi /bin/falsehoặc /sbin/nologin. Điều này cũng cho phép các quyền chỉ được gán cho các tệp được sử dụng bởi mỗi ứng dụng.

Bạn không thể đăng nhập vì những người dùng này vì lý do này.

Nguồn - linuxquestions.com


6

Những người dùng này không phải là người dùng tương tác theo nghĩa truyền thống, mà là người dùng chạy các dịch vụ trên hộp của bạn. như vậy bạn không thể dễ dàng đăng nhập như những người dùng đó, bạn cũng không nên. Các tài khoản không có mật khẩu (bị vô hiệu hóa đăng nhập) hoặc có mật khẩu được tạo ngẫu nhiên. Tài khoản không mật khẩu có thể được gọi bằng root (thường là lúc khởi động) bằng cách sử dụng su để chạy dịch vụ thực 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.