Score:0

การอนุญาตโมดูลซิงโครไนซ์ Ansible ล้มเหลว

ธง it

0

ฉันต้องการซิงโครไนซ์ข้อมูลประจำตัวของ letsencrypt จากโฮสต์ S ไปยังโฮสต์ D โดยใช้งาน ansible ที่ทำงานบนโฮสต์ H

งานปัจจุบันของฉันมีลักษณะดังนี้:

- ชื่อ: ซิงโครไนซ์ไดเรกทอรี Letsencrypt ในเครื่อง
  ansible.posix.ซิงโครไนซ์:
    src: /etc/letsencrypt
    ปลายทาง: /etc/letsencrypt
    คลังเก็บ: จริง
    การตรวจสอบ: จริง
    ลบ: จริง
    เรียกซ้ำ: จริง
    กลายเป็น_user: myuserid
    rsync_path: "sudo rsync"
  กลายเป็น: จริง
  delegate_to: ส

บนโฮสต์ S:

drwxr-xr-x. 9 รูทรูท 4096 10 ก.ค. 01:15 /etc/letsencrypt

บนโฮสต์ D:

drwxr-xr-x. รูท 2 รูท 6 เม.ย. 8 07:58 /etc/letsencrypt

ข้อความแสดงข้อผิดพลาดที่ฉันได้รับคือ:

งาน [sync_certs - rsync จากโฮสต์ใบรับรองหลักไปยังโฮสต์รองของใบรับรอง] ************************************ ******
ร้ายแรง: [D]: ไม่สามารถเข้าถึงได้! => {"changed": false, "msg": "รหัสผ่านไม่ถูกต้อง/ไม่ถูกต้อง: การอนุญาตถูกปฏิเสธ โปรดลองใหม่อีกครั้ง", "เข้าไม่ได้": true}

เนื่องจากการเข้าสู่ระบบรูทเป็นสิ่งต้องห้ามในทุกโฮสต์ งานจึงรันในฐานะผู้ใช้ทั่วไปที่มีสิทธิ์ sudo เพื่อดำเนินการ "bash" นี่คือสถานการณ์ในโฮสต์ทั้งหมด

ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมอย่างมาก.

PS: สคริปต์ทุบตีต่อไปนี้ทำงานสำเร็จ น่าเสียดายที่มันขอรหัสผ่านสำหรับ myuserid

sudo /usr/bin/rsync --rsync-path="sudo rsync" --acls --archive --checksum --delete --links --numeric-ids --recursive --stats --times --verbose / etc/letsencrypt [email protected]::letsencrypt
Score:0
ธง cz

คุณกำลังพยายามเชื่อมต่อกับรีโมตโฮสต์ "S" ในฐานะผู้ใช้ซึ่งไม่ได้ตั้งค่าให้ใช้งานได้หรือไม่มีอยู่ ดังนั้น ansible จึงไม่สามารถ ssh ไปยังโฮสต์และตรวจสอบสิทธิ์ได้ คุณต้องระบุให้ถูกต้อง ผู้ใช้ระยะไกล เพื่อเชื่อมต่อกับโฮสต์นั้น

นอกจากนี้ งานของคุณกำลังทำสิ่งที่แปลกประหลาด: คุณได้ขอให้ sudo to มายยูสริด แทนที่จะรูทแล้วเรียกใช้ sudo rsync อีกครั้งเพื่อเรียกใช้กระบวนการ rsync ไม่จำเป็นต้องมีสิ่งเหล่านี้ เพียงปล่อยให้ sudo รูทตามปกติ

dubby avatar
it flag
Michael ฉันลบ "become_user" และเพิ่ม "remote_user: myuserid" ฉันได้รับข้อผิดพลาดเดียวกันกับที่แสดงในคำถามเดิมของฉัน
Michael Hampton avatar
cz flag
@dubby คุณแน่ใจ 100% ว่าคุณให้ข้อมูลรับรองที่ถูกต้องสำหรับผู้ใช้รายนั้นเพื่อ ssh ไปยังระบบนั้นหรือไม่? ตรวจสอบบันทึกในระบบนั้นเพื่อค้นหาสิ่งที่อาจผิดพลาด
dubby avatar
it flag
Michael ไม่มีอะไรใน systemd Journal ที่ระบุถึงปัญหาใดๆ ฉันมีรหัสผู้ใช้และรหัสผ่านสำหรับการเข้าสู่ระบบและรูท ansible ใน /etc/rsyncd.secrets คำถาม: รหัสผ่านในไฟล์นั้นควรเป็นข้อความล้วนหรือควรแฮช ฉันใช้ข้อความธรรมดา ฉันไม่สามารถค้นหาเอกสารใด ๆ ที่ระบุว่ามีการแฮช s/b หรือไม่
dubby avatar
it flag
Michael ฉันรันงานใหม่ด้วย -vvvvv และบันทึกผลลัพธ์ น่าเสียดายที่มัน >740 บรรทัด ถ้าฉันรู้วิธีใช้ pastebin คุณจะตีความการเข้าสู่ระบบที่ล้มเหลวได้ไหม
Michael Hampton avatar
cz flag
@dubby คุณไม่ได้ใช้คีย์ ssh เหรอ!
dubby avatar
it flag
ฉันใช้คีย์ ssh จาก rsync เวอร์ชันเชลล์สคริปต์และใช้งานได้ดี ฉันสมมติว่า ansible ใช้ ssh เพื่อสื่อสารระหว่างโฮสต์ playbooks อื่น ๆ ทั้งหมดของฉันเชื่อมต่อและดำเนินการบนโฮสต์เดียวกันนี้ได้ดี
Score:0
ธง cn

คุณสามารถเข้าสู่ระบบผ่าน ssh ด้วยผู้ใช้ âmyuseridâ? ฉันคิดว่ากุญแจสำคัญของปัญหาคือการแชร์คีย์ระหว่างโฮสต์ S และ D ตรวจสอบว่าคุณเรียกใช้ playbook อย่างไรและเพิ่มแฟล็ก -umyuserid -k

dubby avatar
it flag
ฉันสามารถ ssh เป็น "myuserid" ได้สำเร็จโดยไม่ต้องระบุรหัสผ่าน ฉันใช้คีย์ ssh-rsa เพื่อทำสิ่งนี้ให้สำเร็จ
dubby avatar
it flag
เมื่อฉันเรียกใช้ playbook ด้วย -u myuserid -k ฉันได้รับข้อผิดพลาดเดียวกันกับที่แสดงในคำถามเดิม
tilleyc avatar
us flag
คุณได้ลองระบุคีย์ ssh เพื่อใช้อย่างชัดเจนกับแฟล็ก `âprivate-key` หรือไม่

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา