mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 07:26:13 -05:00
gnu: Add openssh.
* gnu/packages/ssh.cm (openssh): New variable.
This commit is contained in:
parent
5cfdcd6a26
commit
fe0b8a789a
1 changed files with 68 additions and 0 deletions
|
@ -21,6 +21,8 @@ (define-module (gnu packages ssh)
|
|||
#:renamer (symbol-prefix-proc 'license:))
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages groff)
|
||||
#:use-module (gnu packages openssl)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu))
|
||||
|
@ -47,3 +49,69 @@ (define-public libssh2
|
|||
a server that supports the SSH-2 protocol.")
|
||||
(license license:bsd-3)
|
||||
(home-page "http://www.libssh2.org/")))
|
||||
|
||||
(define-public openssh
|
||||
(package
|
||||
(name "openssh")
|
||||
(version "6.1p1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"ftp://ftp.fr.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-"
|
||||
version ".tar.gz"))
|
||||
(sha256 (base32
|
||||
"04f4l4vx6f964v5qjm03nhyixdc3llc90z6cj70r0bl5q3v5ghfi"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("groff" ,groff)
|
||||
("openssl" ,openssl)
|
||||
("zlib" ,zlib)))
|
||||
(arguments
|
||||
`(#:test-target "tests"
|
||||
#:phases
|
||||
(alist-replace
|
||||
'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys #:rest args)
|
||||
(let ((configure (assoc-ref %standard-phases 'configure))
|
||||
(out (assoc-ref outputs "out")))
|
||||
(apply configure args)
|
||||
(substitute* "Makefile"
|
||||
(("PRIVSEP_PATH=/var/empty")
|
||||
(string-append "PRIVSEP_PATH=" out "/var/empty")))))
|
||||
(alist-replace
|
||||
'check
|
||||
(lambda* (#:key #:allow-other-keys #:rest args)
|
||||
(let ((check (assoc-ref %standard-phases 'check)))
|
||||
;; remove tests that require the user sshd
|
||||
(substitute* "regress/Makefile"
|
||||
(("t9 t-exec") "t9"))
|
||||
(apply check args)))
|
||||
(alist-replace
|
||||
'install
|
||||
(lambda* (#:key (make-flags '()) #:allow-other-keys)
|
||||
;; install without host keys and system configuration files
|
||||
(zero? (apply system* "make" "install-nosysconf" make-flags)))
|
||||
%standard-phases)))))
|
||||
(synopsis "OpenSSH, a client and server for the secure shell (ssh) protocol")
|
||||
(description
|
||||
"The SSH2 protocol implemented in OpenSSH is standardised by the
|
||||
IETF secsh working group and is specified in several RFCs and drafts.
|
||||
It is composed of three layered components:
|
||||
|
||||
The transport layer provides algorithm negotiation and a key exchange.
|
||||
The key exchange includes server authentication and results in a
|
||||
cryptographically secured connection: it provides integrity, confidentiality
|
||||
and optional compression.
|
||||
|
||||
The user authentication layer uses the established connection and relies on
|
||||
the services provided by the transport layer. It provides several mechanisms
|
||||
for user authentication. These include traditional password authentication
|
||||
as well as public-key or host-based authentication mechanisms.
|
||||
|
||||
The connection layer multiplexes many different concurrent channels over the
|
||||
authenticated connection and allows tunneling of login sessions and
|
||||
TCP-forwarding. It provides a flow control service for these channels.
|
||||
Additionally, various channel-specific options can be negotiated.")
|
||||
(license (license:bsd-style "file://LICENSE"
|
||||
"See LICENSE in the distribution."))
|
||||
(home-page "http://www.openssh.org/")))
|
||||
|
||||
|
|
Loading…
Reference in a new issue