2010-09-14 33 views
8

Tôi đang cố sử dụng plugin HudsonGerrit Trigger.Tạo khóa SSH cho Gerrit và Hudson

Vì lý do gì, Gerrit không chấp nhận khóa SSH có tại /var/lib/hudson/.ssh/id_rsa.

Trong GUI tôi nhận được Connection error : com.jcraft.jsch.JSchException: Auth fail như một lỗi, và khi tôi đang làm việc tại nhà ga tôi nhận được một lỗi Permission denied (publickey).

Làm cách nào để tạo và sử dụng khóa riêng tư hoạt động để HudsonGerrit có thể phát tốt?

Trả lời

9

Các OP Josh Smith quản lý để sắp xếp nó ra:

Tôi thực sự muốn cần thiết để thêm khóa SSH từ /var/lib/hudson/.ssh/id_rsa.pub cho người sử dụng (tôi) vào GUI Gerrit.
Sau đó, từ đó nó hoạt động như một sự quyến rũ.
Tên người dùng phải là tên người dùng trong Gerrit (tài khoản quản trị viên).

tư vấn ban đầu của tôi là dưới đây:


người sử dụng mà sẽ sử dụng các trang web dựa trên hệ thống xem xét mã Gerrit là gì?

Người dùng đó cần phím số /var/lib/hudson/.ssh/id_rsa.pub công khai của bạn trong $HOME/.ssh/authorized_keys, như minh họa trong this guide.

alt text

Key Distribution

Phần nào của cặp khóa RSA phải được sao chép vào bất kỳ máy chủ đó sẽ được truy cập bởi các khách hàng. Thông tin khóa công khai cần được sao chép phải nằm trong tệp ~/.ssh/id_rsa.pub trên máy khách.
Giả sử tất cả các máy chủ sử dụng OpenSSH thay vì triển khai SSH khác, dữ liệu khóa công khai phải được nối vào tệp ~/.ssh/authorized_keys trên máy chủ.

# first, upload public key from client to server 
client$ scp ~/.ssh/id_rsa.pub server.example.org: 

# next, setup the public key on server 
server$ mkdir ~/.ssh 
server$ chmod 700 ~/.ssh 
server$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys 
server$ chmod 600 ~/.ssh/authorized_keys 
server$ rm ~/id_rsa.pub 

Hãy chắc chắn để thêm dữ liệu quan trọng nào mới vào file authorized_keys, như nhiều khóa công khai có thể được sử dụng. Mỗi mục khóa công khai phải nằm trên một dòng khác.


+0

@VonC Tôi sắp nghĩ bạn trả lời mọi câu hỏi tôi có! Tôi cũng có thể có một đường dây trực tiếp ... 'hudson' là người dùng nên sử dụng hệ thống đánh giá, tôi nghĩ *. Tha thứ noobness. Bạn có nghĩa là, hoặc người dùng * người * thực tế, ví dụ 'joshsmith'? –

+0

@Josh: nếu "hudson" là người dùng thực thi kết nối ssh với hệ thống Gerrit cục bộ, thì cần thêm 'id_rsa.pub' của riêng nó vào' ~ hudson/.ssh/authorized_key' của nó. – VonC

+0

@VonC 'hudson' có' id_rsa.pub' của riêng nó trong '/ var/lib/hudson/.ssh'. Ý bạn là vậy đúng không? –

Các vấn đề liên quan