Tôi phải kiểm tra một số mã và chạy nó. Tôi có URL:Tôi làm cách nào để nhận thanh toán SVN bằng cặp khóa Công khai/Riêng tư?
svn+ssh://[email protected]/home/svn/project/trunk
Tôi có một tệp có khóa riêng của họ. Tôi phải làm gì để lấy mã này?
Tôi phải kiểm tra một số mã và chạy nó. Tôi có URL:Tôi làm cách nào để nhận thanh toán SVN bằng cặp khóa Công khai/Riêng tư?
svn+ssh://[email protected]/home/svn/project/trunk
Tôi có một tệp có khóa riêng của họ. Tôi phải làm gì để lấy mã này?
Khóa riêng đi trên máy khách, thường được đặt tên là ~/.ssh/id_rsa
, ~/.ssh/id_dsa
hoặc ~/.ssh/identity
tùy thuộc vào phiên bản SSH và loại khóa. Tuy nhiên, bạn chỉ có thể sử dụng ssh -i path/to/private.key
.
Điều này giả định rằng khóa công khai tương ứng tồn tại trên máy chủ trong ~/.ssh/authorized_keys
và máy cục bộ của bạn đang chạy ứng dụng OpenSSH. Nếu bạn đang sử dụng PuTTY trên Windows, chỉ cần mở chương trình Pageant và nhập khóa thông qua GUI.
nó không phải là rõ ràng với tôi làm thế nào để sử dụng nó với svn? – WonderLand
tương tự cho tôi .. câu trả lời là không chính xác. –
câu hỏi này là yêu cầu cho svn, không ssh – Transcendence
Thêm khóa cá nhân vào thư mục ~/.ssh/
của bạn rồi chạy ssh-agent $SHELL; ssh-add;
và sau đó, svn co
của URL đó sẽ hoạt động.
Các khóa cá nhân của bạn _do not_ go in ~/.ssh/config. – ephemient
Rất tiếc, bạn hoàn toàn đúng, lẽ ra phải là 'authorized_keys'. –
Nếu bạn cần phải sử dụng một phím tùy chỉnh chỉ dành riêng cho svn, sau đây sẽ làm việc:
SVN_SSH="ssh -i /path/to/key_name"
export SVN_SSH
svn commands
http://labs.kortina.net/2010/01/30/svn-checkout-with-private-key-over-ssh/
Thêm phần này vào bạn ~/.ssh/config tệp:
Host YOUR_SERVER
IdentityFile YOUR_PRIVATE_KEY_PATH # (ex: ~/.ssh/rsa)
User USER_NAME
Để có thêm tùy chọn, see the ssh_config man page.
Dưới đây là các bước mà tôi dùng để kết nối từ dòng lệnh Mac OS X lên máy chủ của tôi qua svn + ssh:
Mở server:
ssh-keygen -b 1024 -t dsa -f mykey (creates mykey and mkey.pub files)
nội dung Bản sao mykey.pub tới ~/.ssh/authorized_keys (tạo tệp authorized_keys nếu nó không tồn tại)
Tải xuống mkey vào máy địa phương của bạn và chạy:
chmod 600 mkey (the next step won't run otherwise)
svn-add mkey (enter your passphrase)
kiểm tra từ máy chủ svn của bạn với ssh:
svn co svn+ssh://[email protected]/repos/path
Xóa mkey và mkey.pub từ máy chủ của bạn
chỉ cần sử dụng lệnh ssh-add (nó sẽ yêu cầu bạn nhập mật khẩu của bạn, điều này là mật khẩu bạn đã sử dụng khi tạo cặp khóa riêng tư công khai này).
ssh-add PATH_TO_YOUR_PRIVATE_JEY
e.g. ssh-add ~/.ssh/myPrivateKey.key
xác minh rằng bạn thêm chìa khóa một cách chính xác bằng cách làm này
ssh-add -l
Đó sẽ liệt kê tất cả các tập tin bản sắc nó đang sử dụng.
Ngoài câu trả lời hai ảnh chụp màn hình từ Eclipse 3.7 với Subversive.
Nhập tên người dùng! (Tôi đã quên điều này trước khi chụp ảnh màn hình). Làm không phải nhập mật khẩu.
Nhập cụm từ mật khẩu quan trọng nếu bạn private key là cụm từ mật khẩu bảo vệ.
Một hình ảnh đáng giá ngàn lời.
Bạn đang sử dụng hệ điều hành nào? – Neall
Mac OS X Leopard cục bộ, nhưng điều này thực sự phải đi trên một hộp RH ES4. –
Tôi cũng nhận được "-bash: svn + ssh: // ... blah blah Không có tập tin hoặc thư mục", mặc dù tôi đã svn và ssh cài đặt và sử dụng chúng tất cả các thời gian. Tôi có thể làm điều này từ Eclipse với plugin Subclipse (mà tôi cũng sử dụng rất nhiều)? –