shell.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:_ 作者: zengchunyun 项目源码 文件源码
def manual_auth(self):
        """
        ????,??????????
        :return:
        """
        default_auth = 'p'
        auth = default_auth
        # auth = input('Auth by (p)assword, (r)sa key, or (d)ss key? [%s] ' % default_auth)
        if len(auth) == 0:
            auth = default_auth
        if auth == 'r':
            default_path = os.path.join(os.environ['HOME'], '.ssh', 'id_rsa')
            path = input('RSA key [%s]: ' % default_path)
            if len(path) == 0:
                path = default_path
            try:
                key = paramiko.RSAKey.from_private_key_file(path)
            except paramiko.PasswordRequiredException:
                key = paramiko.RSAKey.from_private_key_file(path, self.password)
            self.transport.auth_publickey(self.username, key)
        elif auth == 'd':
            default_path = os.path.join(os.environ['HOME'], '.ssh', 'id_dsa')
            path = input('DSS key [%s]: ' % default_path)
            if len(path) == "0":
                path = default_path
            try:
                key = paramiko.DSSKey.from_private_key_file(path)
            except paramiko.PasswordRequiredException:
                key = paramiko.DSSKey.from_private_key_file(path, self.password)
            self.transport.auth_publickey(self.username, key)
        else:
            self.transport.auth_password(self.username, self.password)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号