def set_rootpw(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) info = clientarea.get_service_info() self.br.open("https://vm.linevast.de/login.php") self.br.select_form(nr=0) self.br.form['username'] = info[2] self.br.form['password'] = info[3] self.br.form.new_control('text', 'Submit', { 'name': 'Submit', 'value': '1' }) self.br.form.new_control('text', 'act', { 'name': 'act', 'value': 'login' }) self.br.form.method = "POST" page = self.br.submit() if not self._check_login(page.get_data()): print("Login failed") sys.exit(2) self.br.open("https://vm.linevast.de/home.php") vi = self._extract_vi_from_links(self.br.links()) data = { 'act': 'rootpassword', 'opt': user_settings.get('rootpw'), 'vi': vi } data = urllib.parse.urlencode(data) page = self.br.open("https://vm.linevast.de/_vm_remote.php", data) if not self._check_set_rootpw(page.get_data()): print("Setting password failed") sys.exit(2) else: print("Password changed successfully")
def info(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) data = clientarea.get_service_info() return OrderedDict([ ('Hostname', data[0]), ('IP', data[1]), ])
def info(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) data = clientarea.get_service_info() return OrderedDict([ ('Hostname', data[0]), ('IP address', data[1]), ('Nameserver 1', data[2].split('.com')[0] + '.com'), ('Nameserver 2', data[2].split('.com')[1]), ])
def info(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) data = clientarea.get_service_info() return OrderedDict([ ('Hostname', data[0]), ('IP address', data[1]), ('Control panel', 'https://vm.linevast.de/'), ('Username', data[2]), ('Password', data[3]), ])
def get_ip(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) (ip, user, rootpw) = self._extract_vps_information(clientarea) if not ip: print("No active IP found") sys.exit(2) return ip
def test_extract_services(self): html_file = open( os.path.join(os.path.dirname(__file__), 'resources/clientarea_services.html'), 'r') data = html_file.read() html_file.close() mock = MagicMock(ClientArea) mock.clientarea_url = '' services = ClientArea._extract_services(mock, data) self.assertEqual(services, [{ 'status': 'active', 'product': 'Basic', 'url': '?action=productdetails&id=8961', 'price': '$4.99 USD', 'term': 'Monthly', 'next_due_date': '2017-06-19', 'id': '8961' }, { 'status': 'cancelled', 'product': 'Basic', 'url': '?action=productdetails&id=9019', 'price': '$4.99 USD', 'term': 'Monthly', 'next_due_date': '2017-05-24', 'id': '9019' }])
def get_ip(provider, account): """ This method returns the IP address of the specified provider and account. :param provider: The provider :param account: the account information :return: IP address """ logger.log('get ip: %s' % provider) if provider == ProxHost: provider_instance = provider(account) ip = provider_instance.get_configuration().ip return ip else: client_area = ClientArea(provider._create_browser(), provider.get_clientarea_url(), account) logger.log('client area: %s' % client_area.get_services()) return client_area.get_ip()
def test_emails(self): html_file = open( os.path.join(os.path.dirname(__file__), 'resources/clientarea_emails.html'), 'r') data = html_file.read() html_file.close() emails = ClientArea._extract_emails(data) self.assertTrue(len(emails) == 5)
def info(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) (ip, user, rootpw) = self._extract_vps_information(clientarea) return OrderedDict([ ('IP address', ip), ('Control panel', 'https://crownpanel.com/'), ('Username', user), ('Password', rootpw), ])
def test_extract_service(self): html_file = open( os.path.join(os.path.dirname(__file__), 'resources/clientarea_service.html'), 'r') data = html_file.read() html_file.close() info = ClientArea._extract_service_info(data) self.assertEqual(info, [ 'hostname', '178.32.53.129', 'ns1.pulseservers.comns2.pulseservers.com' ])
def set_rootpw(self, user_settings): print( "CrownCloud does not support changing root password through their configuration panel." ) clientarea = ClientArea(self.br, self.clientarea_url, user_settings) (ip, user, rootpw) = self._extract_vps_information(clientarea) print(("IP: %s" % ip)) print(("Root password: %s\n" % rootpw)) print("https://crownpanel.com") print(("Username: %s" % user)) print(("Password: %s\n" % rootpw))
def _create_clientarea(self): if self._clientarea is None: self._clientarea = ClientArea(self._browser, self.get_clientarea_url(), self._settings) return self._clientarea
def get_ip(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) return clientarea.get_client_data_ip(self.client_data_url)
def get_ip(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) return clientarea.get_service_info()[1]
def set_rootpw(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) clientarea.set_rootpw_client_data()
def get_status(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) clientarea.print_services()
def info(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) return clientarea.get_client_data_info_dict(self.client_data_url)
def get_ip(provider): logger.log('get ip: %s' % provider) client_area = ClientArea(provider._create_browser(), provider.get_clientarea_url(), child_account()) logger.log('client area: %s' % client_area.get_services()) return client_area.get_ip()
def __init__(self, browser, clientarea_url, email_url, user_settings): self.email_url = email_url ClientArea.__init__(self, browser, clientarea_url, user_settings)
def set_rootpw(self, user_settings): clientarea = ClientArea(self.br, self.clientarea_url, user_settings) clientarea.set_rootpw_rootpassword_php()