Cách chạy Ansible với sudo không có lệnh mật khẩu với cú pháp trở thành


8

Khi tôi chạy ansible với máy chủ có một số lệnh tôi cần chạy bằng root, tôi không thể chạy chúng với "trở thành" vì nó chạy các lệnh dưới dạng root thay vì chỉ chạy chúng bằng sudo.

Những gì tôi đã làm chỉ là sử dụng command: sudo ... và sau đó loại bỏ các cảnh báo với

args: 
  warn: no

Có cách nào tốt hơn, chuẩn hơn, để chạy một dòng lệnh linux với mật khẩu sudo sans không?


Lý do thực sự của việc này là gì? Sử dụng ansible sudodưới mui xe khi bạn thực hiện nhiệm vụ với become.
Konstantin Suvorov

1
@kon khi tôi sử dụng becometôi nhận được "msg": "Missing sudo password"một lý do thất bại
Peter Turner

Câu trả lời:


6

Khi tôi chạy ansible với máy chủ có một số lệnh tôi cần chạy bằng root, tôi không thể chạy chúng với "trở thành" vì nó chạy các lệnh dưới dạng root thay vì chỉ chạy chúng bằng sudo.

Đo không phải sự thật; becomesử dụng nhiều phương pháp để leo thang đặc quyền và mặc định sử dụng sudo.

Có lẽ bạn đang chạy vào một trong những hạn chế đã biết với mô đun trở thành , như cố gắng hạn chế quyền truy cập sudo vào một số lệnh nhất định ?


Chà, điều này có vẻ như là một trong những hạn chế của ansible, khi tôi chạy -vvv nó đang hoạt động sudo -H -S -n -u root /bin/sh -c 'bunch of stuff'. Tôi hình dung nó chỉ có thể chạy lệnh tôi muốn với các đặc quyền sudo, nhưng tôi đoán đó là một chút ngây thơ vì nó cần phải chạy 1000 loại lệnh khác với root theo cách tổng quát hơn.
Peter Turner

2

Bạn đã thử -K chưa? Tôi luôn sử dụng tùy chọn này và sau đó phải nhập mật khẩu sudo


vâng, vấn đề là người dùng ssh tôi đang sử dụng không có quyền khởi động shell với quyền root, chỉ với các lệnh tôi muốn chạy qua ansible.
Peter Turner

Tôi không nghĩ rằng có thể chạy các lệnh với quyền root nếu người dùng không thể khởi động shell bằng root vì ansible về cơ bản là chạy các lệnh thông qua ssh.
030
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.