Score:0

วิธีกำหนดค่า jenkins-agent เพื่ออนุญาต ssh ผ่านรหัสผ่าน

ธง cn

ฉันกำลังพยายามเพิ่มตัวแทนเจนกินส์ที่ใช้ Rocky Linux 8

ฉันจะกำหนดค่า jenkins-agent เพื่ออนุญาตการเชื่อมต่อ ssh จาก jenkins-controller ผ่านรหัสผ่านได้อย่างไร

ฉันทำตามขั้นตอนต่อไปนี้กับตัวแทนใหม่:

  • ติดตั้ง opensh-server
  • สร้างผู้ใช้ด้วยรหัสผ่านที่ฉันต้องการใช้
  • สร้างคีย์ ssh
  • การตรวจสอบรหัสผ่านเปิดใช้งานโดยค่าเริ่มต้นที่ /etc/sshd/sshd_config

บน jenkins-controller ฉันกำหนดค่าโหนดเป็น:

  • เปิดตัวตัวแทนผ่าน SSH
  • มีข้อมูลรับรองที่ตรงกับผู้ใช้ที่กำหนดค่าในตัวแทนเจนกินส์

ฉันได้รับข้อผิดพลาดต่อไปนี้เมื่อเรียกใช้ตัวแทนจาก jenkins-web-UI:

ข้อผิดพลาด: ข้อผิดพลาดที่ไม่คาดคิดขณะพยายามรับรองความถูกต้องเป็นเจนกินส์ทาสด้วยข้อมูลประจำตัว = some-ID-111d-222e-33c44fg7h556
java.io.IOException: การตรวจสอบรหัสผ่านล้มเหลว
    ที่ com.trilead.ssh2.auth.AuthenticationManager.authenticatePassword(AuthenticationManager.java:404)
    ที่ com.trilead.ssh2.Connection.authenticateWithPassword(Connection.java:340)
    ที่ com.cloudbees.jenkins.plugins.sshcredentials.impl.TrileadSSHPasswordAuthenticator.doAuthenticate(TrileadSSHPasswordAuthenticator.java:115)
    ที่ com.cloudbees.jenkins.plugins.sshcredentials.SSHAuthenticator.authenticate(SSHAuthenticator.java:431)
    ที่ com.cloudbees.jenkins.plugins.sshcredentials.SSHAuthenticator.authenticate(SSHAuthenticator.java:468)
    ที่ hudson.plugins.sshslaves.SSHLauncher.openConnection(SSHLauncher.java:886)
    ที่ hudson.plugins.sshslaves.SSHLauncher$1.call(SSHLauncher.java:434)
    ที่ hudson.plugins.sshslaves.SSHLauncher$1.call(SSHLauncher.java:421)
    ที่ java.util.concurrent.FutureTask.run(FutureTask.java:266)
    ที่ java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1149)
    ที่ java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    ที่ java.lang.Thread.run(Thread.java:748)
เกิดจาก: java.io.IOException: การเชื่อมต่อถูกปิด
    ที่ com.trilead.ssh2.auth.AuthenticationManager.deQueue(AuthenticationManager.java:72)
    ที่ com.trilead.ssh2.auth.AuthenticationManager.getNextMessage(AuthenticationManager.java:100)
    ที่ com.trilead.ssh2.auth.AuthenticationManager.authenticatePassword(AuthenticationManager.java:379)
    ... 11 เพิ่มเติม
เกิดจาก: java.io.IOException: ไม่สามารถอ่านบล็อกทั้งหมด, ถึง EOF แล้ว
    ที่ com.trilead.ssh2.crypto.cipher.CipherInputStream.getBlock(CipherInputStream.java:81)
    ที่ com.trilead.ssh2.crypto.cipher.CipherInputStream.read(CipherInputStream.java:108)
    ที่ com.trilead.ssh2.transport.TransportConnection.receiveMessage(TransportConnection.java:232)
    ที่ com.trilead.ssh2.transport.TransportManager.receiveLoop(TransportManager.java:706)
    ที่ com.trilead.ssh2.transport.TransportManager$1.run(TransportManager.java:502)
    ...อีก1

ความคิดใด ๆ ว่าทำไมมันถึงล้มเหลว?

แก้ไข ฉันพบว่าอยู่ภายใต้ /etc/pam.d/sshd มีสาย ต้องการเซสชัน pam_nologin.so. เมื่อฉันเปลี่ยนเป็น ไม่จำเป็น ฉันสามารถเข้าสู่ระบบผ่าน ssh ด้วยผู้ใช้ที่ไม่ใช่รูท

โพสต์คำตอบ

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