Đặc quyền Sudo luôn


15

Tôi đã tìm kiếm cái này và câu trả lời có lẽ ở một triệu địa điểm trên mạng, nhưng tôi không thể tìm thấy nó ...

Làm thế nào để bạn cung cấp đặc quyền gốc tài khoản của bạn trong Linux để bạn không cần sudomỗi lệnh yêu cầu đặc quyền? Nó thậm chí còn khó chịu hơn cả Kiểm soát tài khoản người dùng của Windows.

( Làm ơn ... tôi không cần một bài giảng về cách tôi sẽ sống một cuộc sống nguy hiểm. Cảm ơn bạn.)

Câu trả lời:


11

công việc này là dành cho bạn?

sudo EDITOR=gedit visudo

Thay đổi dòng này:

%admin ALL=(ALL) ALL

đến dòng này:

%admin ALL=(ALL) NOPASSWD: ALL

Không có bài giảng. :)


3
+1, nhưng rắc rối là, nó vẫn yêu cầu tôi gõ sudo.
dùng541686

@Lambert Ok, tôi không muốn làm điều này để kiểm tra nó, nhưng tôi nghĩ bạn chỉ có thể cung cấp cho root một mật khẩu 'sudo passwd root'. Đăng xuất với tư cách là người dùng của bạn; đăng nhập với quyền root. Bây giờ GDM có cho phép đăng nhập root không?

2
Chà, tôi đã thực hiện điều đó để đặt mật khẩu gốc và đăng nhập root, và dĩ nhiên tôi không cần phải như vậy sudonữa. Vấn đề là tìm ra cách làm điều tương tự cho một tài khoản khác.
dùng541686

6

Bạn không. Hai điều bạn có thể làm là:

1) Chạy sudo -s để giữ quyền root khi bạn dự định nhập nhiều lệnh và không muốn giữ tiền tố với sudo.

2) Bạn có thể định cấu hình tệp sudoers của mình để cho phép bạn chạy sudo mà không cần phải nhập mật khẩu.


2
Chà, điều tôi không hiểu là, nếu tôi có thể đăng nhập như "root" một cách dễ dàng và thậm chí không bao giờ phải nghĩ về từ "sudo", vậy tại sao tôi không thể làm điều tương tự trong một tài khoản khác?
dùng541686

@Lambert: Bởi vì những tài khoản khác thì không UID 0.
JanC

1
Hả ... vậy thậm chí thêm bản thân mình vào nhóm sudohay thậm chí một cái gì đó như thế vẫn chưa đủ? :(
dùng541686

2

Tôi không thấy thế nào là khó để chạy sudo -imột lần trong một thiết bị đầu cuối, và sau đó chỉ cần sử dụng một thiết bị đầu cuối này (hoặc bạn có thể mở nhiều hơn một, nhưng sau đó bạn sẽ phải gõ mật khẩu của bạn một lần nữa ) để làm tất cả những thứ sudo của bạn.

. bạn đã xác thực).


3
Không phải là nó tốn thời gian, chỉ là nó rất khó chịu. Nếu tôi nói rằng tôi muốn thay đổi hình nền màn hình đăng nhập của mình, tôi không cần "Bạn có phiền không?! Tôi không thể tin bạn." nhắn tin hỏi tôi rằng trên thực tế tôi có lành mạnh không khi nghĩ đến việc thực hiện một hành động Đặc quyền cao như vậy, nói với tôi rằng, nếu tôi nhập sai mật khẩu, sự kiện này sẽ được báo cáo . Giống như máy tính của tôi không tin tưởng tôi, và khi bạn làm việc được một thời gian, thật khó chịu khi những hành động ngớ ngẩn của người khác với máy tính khiến máy tính của bạn nghi ngờ bạn.
dùng541686

Không có nghĩa là loại bỏ sự tức giận của tôi đối với bạn, nhưng đôi khi, các tính năng "an toàn" trong phần mềm được thiết kế để bảo vệ người dùng thiếu kinh nghiệm chỉ khiến tôi phát điên. Nếu tôi muốn làm cho máy tính của tôi phát nổ, thì không cần gì hơn là "Bạn có chắc không?!" thông báo với "Đừng hỏi điều này một lần nữa." hộp ... nữa, và nó chỉ đánh bại mục đích xác nhận tất cả. Nếu tôi phải nhập một xác nhận cho tất cả mọi thứ, thì có lẽ cũng không phải là một - nó sẽ không thay đổi quyết tâm của tôi, nhưng ít nhất tôi sẽ nhận được những điều tương tự nhanh gấp năm lần mà không bị kích thích.
dùng541686

Thiết kế bảo mật của Ubuntu dành cho môi trường gia đình có nhiều người dùng. Thay đổi toàn hệ thống chỉ nên được thực hiện bởi một cá nhân đáng tin cậy, không chỉ một người tình cờ có tài khoản người dùng hoặc tình cờ mượn tài khoản của bạn.
Jeremy Bícha

@JeremyBicha Họ không thêm bất cứ thứ gì lên trên thiết kế ủy quyền / bảo mật unix ban đầu mà Imo được tạo ra cho nhiều người chia sẻ thời gian trên các máy tính lớn ...
masterxilo

1

Bạn có thể cài đặt / kích hoạt lệnh 'su' và cấu hình shell để chạy nó khi khởi động.


Có cách nào "trực tiếp" hơn không? Chẳng hạn như sử dụng sudoershoặc bằng cách thêm bản thân mình vào một số nhóm đặc biệt?
dùng541686

sudo -s làm điều tương tự.
psusi

@psusi: Nhưng không phải là câu hỏi chính xác để không phải làm điều đó mỗi khi tôi khởi động máy tính?
dùng541686

Có cách nào để làm cho nó không yêu cầu mật khẩu mỗi lần không?
dùng541686

0

Chính xác câu trả lời cho câu hỏi của tôi:

Bạn có thể thay đổi ID người dùng (UID) và ID nhóm (GID) thành 0 trong /etc/passwd , để có được quyền root.

Tuy nhiên:

Nếu bạn làm như vậy, bạn sẽ không thể đăng nhập lại !

Tuy nhiên, bạn có thể tạo một người dùng mới và thay đổi ID nhóm / người dùng của mình thành 0. Về cơ bản, người dùng đó sẽ là một người dùng khácroot , nhưng với một thư mục hồ sơ khác, v.v.

Sau đó, bạn có thể sử dụng hồ sơ đó như thể bạn là root chính mình! : D

Giải pháp khác":

(nếu bạn thích mật khẩu trống)

  1. Chạy các lệnh dưới đây và so sánh các đầu ra

    sudo cat /etc/shadow
    sudo sed "s/\(^$(whoami):\)[^:]*/\1/" /etc/shadow
    

    Bạn sẽ thấy rằng cái sau đã loại bỏ tiếng vô nghĩa trước tên người dùng của bạn (được đọc bằng cách sử dụng $(whoami)). (Nếu bạn không, đừng tiếp tục!)

  2. Khi bạn đã sẵn sàng, hãy chạy lệnh để ghi đè /etc/shadow(có nguy cơ của riêng bạn!)

    sudo sed -i.bak "s/\(^$(whoami):\)[^:]*/\1/" /etc/shadow
    
  3. Tài khoản của bạn hiện có mật khẩu trống và bạn sẽ không còn được nhắc cấp quyền sudo nữa. (Ít nhất, đó là những gì đã xảy ra với tôi.)

Ghi chú:

Bạn cũng có thể cần phải kích hoạt đăng nhập không mật khẩu ; Tôi không chắc chắn nếu điều đó là cần thiết, mặc dù.


Tôi đã đọc ở đâu đó rằng sử dụng "sudo bash" thực hiện công việc. Bạn đã thử điều này?
Người học việc tò mò

@CperedApprentice: Toàn bộ vấn đề là tránh sudo.
dùng541686

0

Tôi khuyên NGAY LẬP TỨC không nên cho mình GID 0. SUDO không ở đó để khiến mọi thứ trở nên hấp dẫn. Lý do duy nhất để tạo một tài khoản root khác (thư mục nhà wether là / root / hoặc thư mục tùy chỉnh tức là / home / root2 /) là có hai quản trị viên trong hệ thống không muốn chia sẻ một mật khẩu gốc.

Nếu không, sử dụng sudo. Và giả sử bạn không phải là người dùng Unix dày dạn, cũng có nguy cơ bạn quên những công cụ nào chỉ dành cho root và những gì dành cho người dùng thông thường.

NHƯNG, nếu bạn cảm thấy rằng bạn có người dùng an toàn bình thường (cá nhân tôi sử dụng mật khẩu MẠNH với phương pháp này), tôi cho phép người dùng của mình (ví dụ tatu.staff / uid = 1xxx, gid 50) chạy SUDO mà không cần mật khẩu. Vì vậy, tôi không bao giờ trộn lẫn những gì chỉ dành cho root và những gì cho người dùng.

Sử dụng các hướng dẫn ở trên để tạo tệp sudoers (và các nhóm tương ứng) để khiến người dùng cụ thể chạy SUDO mà không cần mật khẩu hoặc xem tệp ví dụ tôi sẽ dán ở đây:

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
Defaults        !authenticate

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL
YOURUSER    ALL=(ALL) NOPASSWD:ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL
%wheel  ALL=(ALL) NOPASSWD:ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

YOUUSER là tên người dùng của bạn, dòng đó cho phép người dùng cụ thể chạy SUDO mà không cần mật khẩu.

tất cả người dùng trong nhóm SUDO cần cung cấp mật khẩu.

tất cả người dùng trong bánh xe nhóm có thể chạy sudo mà không cần mật khẩu - hữu ích nếu bạn muốn cung cấp SUDO ACCESS không mật khẩu cho nhiều người dùng, bằng cách này, chỉ cần đặt A RẤT Ý TƯỞNG.

CSONG: - Ghi nhớ% charachter trước tên NHÓM. - Người ta có thể chỉnh sửa / etc / nhóm trực tiếp, nhưng nó KHÔNG được khuyến khích. Sử dụng ADDGROUP để chỉnh sửa, xem thêm thông tin bằng cách nhập: man addgroup

Tôi phải nhấn mạnh một lần nữa rằng LUÔN LUÔN chỉnh sửa tệp sudoers bằng cách sử dụng lệnh VISUDO, KHÔNG BAO GIỜ trực tiếp với trình chỉnh sửa. Điều đó đảm bảo rằng bạn luôn nhận được tệp sudoers hợp lệ - lỗi nhập hoặc báo cáo sai, v.v ... là điều rất tệ trong tệp quan trọng như vậy và visudo giúp bạn tiết kiệm tất cả những rắc rối mà bạn có thể không thể tự phục hồi và tôi đặt cược câu trả lời trước Đây là "luôn luôn sử dụng visdo. Họ không nói với bạn điều đó sao? ồ họ đã làm gì? Có chuyện gì với bạn vậy?" hoặc một cái gì đó giống nhau;)

-

Lời chào từ Phần Lan - mùa đông ở đây khá đẹp, chỉ đẹp, chỉ -10 độ C, không phải nhiệt độ thấp hơn nhiệt độ -25 độ C.

\ tatu-o


Ngoài ra, nếu bạn không muốn viết các lệnh dài hoặc có xu hướng quên - flags, alisees luôn sẵn sàng cho bạn! Kiểm tra ~ / .bashrc rằng tập tin bí danh đã được đặt và sau đó thêm bí danh của bạn vào ~ / .bash_aliases
tatu stty
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.