Package buildbot :: Module manhole :: Class AuthorizedKeysManhole
[frames] | no frames]

Class AuthorizedKeysManhole

source code

 twisted.application.service.Service --+        
                                       |        
twisted.application.service.MultiService --+    
                                           |    
                                _BaseManhole --+
                                               |
                        util.ComparableMixin --+
                                               |
                                              AuthorizedKeysManhole

This Manhole accepts ssh connections, and requires that the prospective client have an ssh private key that matches one of the public keys in our authorized_keys file. It is created with the name of a file that contains the public keys that we will accept.

Instance Methods
 
__init__(self, port, keyfile) source code

Inherited from _BaseManhole: startService

Inherited from twisted.application.service.MultiService: __iter__, __provides__, addService, getServiceNamed, privilegedStartService, removeService, stopService

Inherited from twisted.application.service.Service: __getstate__, __providedBy__, disownServiceParent, setName, setServiceParent

Inherited from util.ComparableMixin: __cmp__, __hash__

Class Variables
  compare_attrs = ['port', 'keyfile']

Inherited from twisted.application.service.MultiService: __implemented__

Inherited from twisted.application.service.Service: name, parent, running

Method Details

__init__(self, port, keyfile)
(Constructor)

source code 
Parameters:
  • port (string or int) - what port should the Manhole listen on? This is a strports specification string, like 'tcp:12345' or 'tcp:12345:interface=127.0.0.1'. Bare integers are treated as a simple tcp port.
  • keyfile - the name of a file (relative to the buildmaster's basedir) that contains SSH public keys of authorized users, one per line. This is the exact same format as used by sshd in ~/.ssh/authorized_keys .
Overrides: twisted.application.service.MultiService.__init__