Linux web-conference.aiou.edu.pk 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64
Apache/2.4.41 (Ubuntu)
: 172.16.50.247 | : 18.216.52.58
Cant Read [ /etc/named.conf ]
7.4.3-4ubuntu2.28
appadmin
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
usr /
lib /
python3 /
dist-packages /
cloudinit /
config /
[ HOME SHELL ]
Name
Size
Permission
Action
__pycache__
[ DIR ]
drwxr-xr-x
schemas
[ DIR ]
drwxr-xr-x
__init__.py
40
B
-rw-r--r--
cc_ansible.py
7.68
KB
-rw-r--r--
cc_apk_configure.py
4.23
KB
-rw-r--r--
cc_apt_configure.py
38.08
KB
-rw-r--r--
cc_apt_pipelining.py
1.85
KB
-rw-r--r--
cc_bootcmd.py
1.65
KB
-rw-r--r--
cc_byobu.py
2.73
KB
-rw-r--r--
cc_ca_certs.py
8.67
KB
-rw-r--r--
cc_chef.py
12.19
KB
-rw-r--r--
cc_disable_ec2_metadata.py
1.6
KB
-rw-r--r--
cc_disk_setup.py
29.61
KB
-rw-r--r--
cc_fan.py
1.95
KB
-rw-r--r--
cc_final_message.py
2.51
KB
-rw-r--r--
cc_growpart.py
18.37
KB
-rw-r--r--
cc_grub_dpkg.py
5.39
KB
-rw-r--r--
cc_install_hotplug.py
3.19
KB
-rw-r--r--
cc_keyboard.py
1.49
KB
-rw-r--r--
cc_keys_to_console.py
2.09
KB
-rw-r--r--
cc_landscape.py
3.06
KB
-rw-r--r--
cc_locale.py
1.19
KB
-rw-r--r--
cc_lxd.py
13.44
KB
-rw-r--r--
cc_mcollective.py
4.11
KB
-rw-r--r--
cc_mounts.py
18.16
KB
-rw-r--r--
cc_ntp.py
18.97
KB
-rw-r--r--
cc_package_update_upgrade_inst...
3.79
KB
-rw-r--r--
cc_phone_home.py
3.75
KB
-rw-r--r--
cc_power_state_change.py
5.92
KB
-rw-r--r--
cc_puppet.py
10.72
KB
-rw-r--r--
cc_reset_rmc.py
4.33
KB
-rw-r--r--
cc_resizefs.py
10.63
KB
-rw-r--r--
cc_resolv_conf.py
3.13
KB
-rw-r--r--
cc_rh_subscription.py
15.21
KB
-rw-r--r--
cc_rsyslog.py
11.55
KB
-rw-r--r--
cc_runcmd.py
1.6
KB
-rw-r--r--
cc_salt_minion.py
3.96
KB
-rw-r--r--
cc_scripts_per_boot.py
1.27
KB
-rw-r--r--
cc_scripts_per_instance.py
1.26
KB
-rw-r--r--
cc_scripts_per_once.py
1.24
KB
-rw-r--r--
cc_scripts_user.py
1.25
KB
-rw-r--r--
cc_scripts_vendor.py
1.26
KB
-rw-r--r--
cc_seed_random.py
3
KB
-rw-r--r--
cc_set_hostname.py
3.4
KB
-rw-r--r--
cc_set_passwords.py
9.36
KB
-rw-r--r--
cc_snap.py
3.32
KB
-rw-r--r--
cc_spacewalk.py
2.64
KB
-rw-r--r--
cc_ssh.py
11
KB
-rw-r--r--
cc_ssh_authkey_fingerprints.py
3.76
KB
-rw-r--r--
cc_ssh_import_id.py
5.43
KB
-rw-r--r--
cc_timezone.py
1.14
KB
-rw-r--r--
cc_ubuntu_autoinstall.py
2.95
KB
-rw-r--r--
cc_ubuntu_drivers.py
4.08
KB
-rw-r--r--
cc_ubuntu_pro.py
13.65
KB
-rw-r--r--
cc_update_etc_hosts.py
2.46
KB
-rw-r--r--
cc_update_hostname.py
2.18
KB
-rw-r--r--
cc_users_groups.py
2.86
KB
-rw-r--r--
cc_wireguard.py
6.67
KB
-rw-r--r--
cc_write_files.py
6
KB
-rw-r--r--
cc_write_files_deferred.py
1.28
KB
-rw-r--r--
cc_yum_add_repo.py
4.53
KB
-rw-r--r--
cc_zypper_add_repo.py
4.93
KB
-rw-r--r--
modules.py
13.23
KB
-rw-r--r--
schema.py
50.26
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : cc_ssh_import_id.py
# Copyright (C) 2009-2010 Canonical Ltd. # Copyright (C) 2012, 2013 Hewlett-Packard Development Company, L.P. # # Author: Scott Moser <scott.moser@canonical.com> # Author: Juerg Haefliger <juerg.haefliger@hp.com> # # This file is part of cloud-init. See LICENSE file for license information. """SSH Import ID: Import SSH id""" import logging import pwd from cloudinit import subp, util from cloudinit.cloud import Cloud from cloudinit.config import Config from cloudinit.config.schema import MetaSchema from cloudinit.distros import ug_util from cloudinit.settings import PER_INSTANCE # https://launchpad.net/ssh-import-id SSH_IMPORT_ID_BINARY = "ssh-import-id" meta: MetaSchema = { "id": "cc_ssh_import_id", "distros": ["alpine", "cos", "debian", "ubuntu"], "frequency": PER_INSTANCE, "activate_by_schema_keys": [], } LOG = logging.getLogger(__name__) def handle(name: str, cfg: Config, cloud: Cloud, args: list) -> None: if not is_key_in_nested_dict(cfg, "ssh_import_id"): LOG.debug( "Skipping module named ssh_import_id, no 'ssh_import_id'" " directives found." ) return elif not subp.which(SSH_IMPORT_ID_BINARY): LOG.warning( "ssh-import-id is not installed, but module ssh_import_id is " "configured. Skipping module." ) return # import for "user: XXXXX" if len(args) != 0: user = args[0] ids = [] if len(args) > 1: ids = args[1:] import_ssh_ids(ids, user) return # import for cloudinit created users (users, _groups) = ug_util.normalize_users_groups(cfg, cloud.distro) elist = [] for user, user_cfg in users.items(): import_ids = [] if user_cfg["default"]: import_ids = util.get_cfg_option_list(cfg, "ssh_import_id", []) else: try: import_ids = user_cfg["ssh_import_id"] except Exception: LOG.debug("User %s is not configured for ssh_import_id", user) continue try: import_ids = util.uniq_merge(import_ids) import_ids = [str(i) for i in import_ids] except Exception: LOG.debug( "User %s is not correctly configured for ssh_import_id", user ) continue if not len(import_ids): continue try: import_ssh_ids(import_ids, user) except Exception as exc: util.logexc( LOG, "ssh-import-id failed for: %s %s", user, import_ids ) elist.append(exc) if len(elist): raise elist[0] def import_ssh_ids(ids, user): if not (user and ids): LOG.debug("empty user(%s) or ids(%s). not importing", user, ids) return try: pwd.getpwnam(user) except KeyError as exc: raise exc # TODO: We have a use case that involes setting a proxy value earlier # in boot and the user wants this env used when using ssh-import-id. # E.g.,: # bootcmd: # - mkdir -p /etc/systemd/system/cloud-config.service.d # - mkdir -p /etc/systemd/system/cloud-final.service.d # write_files: # - content: | # http_proxy=http://192.168.1.2:3128/ # https_proxy=http://192.168.1.2:3128/ # path: /etc/cloud/env # - content: | # [Service] # EnvironmentFile=/etc/cloud/env # PassEnvironment=https_proxy http_proxy # path: /etc/systemd/system/cloud-config.service.d/override.conf # - content: | # [Service] # EnvironmentFile=/etc/cloud/env # PassEnvironment=https_proxy http_proxy # path: /etc/systemd/system/cloud-final.service.d/override.conf # # I'm including the `--preserve-env` here as a one-off, but we should # have a better way of setting env earlier in boot and using it later. # Perhaps a 'set_env' module? if subp.which("sudo"): cmd = [ "sudo", "--preserve-env=https_proxy", "-Hu", user, SSH_IMPORT_ID_BINARY, ] + ids elif subp.which("doas"): cmd = [ "doas", "-u", user, SSH_IMPORT_ID_BINARY, ] + ids else: LOG.error("Neither sudo nor doas available! Unable to import SSH ids.") return LOG.debug("Importing SSH ids for user %s.", user) try: subp.subp(cmd, capture=False) except subp.ProcessExecutionError as exc: util.logexc(LOG, "Failed to run command to import %s SSH ids", user) raise exc def is_key_in_nested_dict(config: dict, search_key: str) -> bool: """Search for key nested in config. Note: A dict embedded in a list of lists will not be found walked - but in this case we don't need it. """ for config_key in config.keys(): if search_key == config_key: return True if isinstance(config[config_key], dict): if is_key_in_nested_dict(config[config_key], search_key): return True if isinstance(config[config_key], list): # this code could probably be generalized to walking the whole # config by iterating lists in search of dictionaries for item in config[config_key]: if isinstance(item, dict): if is_key_in_nested_dict(item, search_key): return True return False
Close