Linux webserver 6.8.0-49-generic #49~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Nov 6 17:42:15 UTC 2 x86_64
Apache/2.4.52 (Ubuntu)
Server IP : 192.168.1.1 & Your IP : 3.15.158.134
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
lib /
python3 /
dist-packages /
landscape /
lib /
Delete
Unzip
Name
Size
Permission
Date
Action
__pycache__
[ DIR ]
drwxr-xr-x
2024-09-18 19:49
apt
[ DIR ]
drwxr-xr-x
2024-09-18 19:49
__init__.py
198
B
-rw-r--r--
2023-02-07 18:55
amp.py
21.24
KB
-rw-r--r--
2023-02-07 18:55
backoff.py
1.64
KB
-rw-r--r--
2023-02-07 18:55
base64.py
196
B
-rw-r--r--
2023-02-07 18:55
bootstrap.py
1.38
KB
-rw-r--r--
2023-02-07 18:55
bpickle.py
6.32
KB
-rw-r--r--
2023-02-07 18:55
cli.py
440
B
-rw-r--r--
2023-02-07 18:55
cloud.py
1.67
KB
-rw-r--r--
2023-02-07 18:55
compat.py
616
B
-rw-r--r--
2023-02-07 18:55
config.py
12.19
KB
-rw-r--r--
2023-02-07 18:55
disk.py
4.91
KB
-rw-r--r--
2023-02-07 18:55
encoding.py
545
B
-rw-r--r--
2023-02-07 18:55
fd.py
751
B
-rw-r--r--
2023-02-07 18:55
fetch.py
6.49
KB
-rw-r--r--
2023-02-07 18:55
format.py
959
B
-rw-r--r--
2023-02-07 18:55
fs.py
3.8
KB
-rw-r--r--
2023-02-07 18:55
gpg.py
1.75
KB
-rw-r--r--
2023-02-07 18:55
hashlib.py
264
B
-rw-r--r--
2023-02-07 18:55
jiffies.py
1.58
KB
-rw-r--r--
2023-02-07 18:55
juju.py
860
B
-rw-r--r--
2023-02-07 18:55
lock.py
705
B
-rw-r--r--
2023-02-07 18:55
log.py
484
B
-rw-r--r--
2023-02-07 18:55
logging.py
2.47
KB
-rw-r--r--
2023-02-07 18:55
lsb_release.py
1.82
KB
-rw-r--r--
2023-02-07 18:55
message.py
2.58
KB
-rw-r--r--
2023-02-07 18:55
monitor.py
6.13
KB
-rw-r--r--
2023-02-07 18:55
network.py
9.54
KB
-rw-r--r--
2023-02-07 18:55
persist.py
20.5
KB
-rw-r--r--
2023-02-07 18:55
plugin.py
1.75
KB
-rw-r--r--
2023-02-07 18:55
process.py
6.45
KB
-rw-r--r--
2023-02-07 18:55
reactor.py
8.61
KB
-rw-r--r--
2023-02-07 18:55
schema.py
6.31
KB
-rw-r--r--
2023-02-07 18:55
scriptcontent.py
522
B
-rw-r--r--
2023-02-07 18:55
sequenceranges.py
5.59
KB
-rw-r--r--
2023-02-07 18:55
store.py
1.38
KB
-rw-r--r--
2023-02-07 18:55
sysstats.py
7.73
KB
-rw-r--r--
2023-02-07 18:55
tag.py
506
B
-rw-r--r--
2023-02-07 18:55
testing.py
24.08
KB
-rw-r--r--
2023-02-07 18:55
timestamp.py
233
B
-rw-r--r--
2023-02-07 18:55
twisted_util.py
4.37
KB
-rw-r--r--
2023-02-07 18:55
user.py
1.44
KB
-rw-r--r--
2023-02-07 18:55
versioning.py
1.24
KB
-rw-r--r--
2023-02-07 18:55
vm_info.py
3.1
KB
-rw-r--r--
2023-02-07 18:55
warning.py
394
B
-rw-r--r--
2023-02-07 18:55
Save
Rename
""" Network introspection utilities using ioctl and the /proc filesystem. """ import os from landscape.lib.fs import read_binary_file, read_text_file DMI_FILES = ("sys_vendor", "chassis_vendor", "bios_vendor", "product_name") def get_vm_info(root_path="/"): """ Return a bytestring with the virtualization type if it's known, an empty bytestring otherwise. It loops through some possible configurations and return a bytestring with the name of the technology being used or None if there's no match """ if _is_vm_openvz(root_path): return b"openvz" if _is_vm_xen(root_path): return b"xen" # Iterate through all dmi *_vendors, as clouds can (and will) customize # sysinfo values. (https://libvirt.org/formatdomain.html#elementsSysinfo) dmi_info_path = os.path.join(root_path, "sys/class/dmi/id") for dmi_info_file in DMI_FILES: dmi_vendor_path = os.path.join(dmi_info_path, dmi_info_file) if not os.path.exists(dmi_vendor_path): continue vendor = _get_vm_by_vendor(dmi_vendor_path) if vendor: return vendor return _get_vm_legacy(root_path) def get_container_info(run_path="/run"): """ Return a string with the type of container the client is running in, if any, an empty string otherwise. """ for filename in ("container_type", "systemd/container"): path = os.path.join(run_path, filename) if os.path.exists(path): return read_text_file(path).strip() return "" def _is_vm_xen(root_path): """Check if the host is virtualized with Xen.""" sys_xen_path = os.path.join(root_path, "sys/bus/xen/devices") # Paravirtualized and HVM instances have device links under the directory return os.path.isdir(sys_xen_path) and os.listdir(sys_xen_path) def _is_vm_openvz(root_path): """Check if the host is virtualized with OpenVZ.""" return os.path.exists(os.path.join(root_path, "proc/vz")) def _get_vm_by_vendor(sys_vendor_path): """Return the VM type byte string (possibly empty) based on the vendor.""" # Use lower-key string for vendors, since we do case-insentive match. # We need bytes here as required by the message schema. vendor = read_binary_file(sys_vendor_path, limit=1024).lower() content_vendors_map = ( (b"amazon ec2", b"kvm"), (b"bochs", b"kvm"), (b"digitalocean", b"kvm"), (b"google", b"gce"), (b"innotek", b"virtualbox"), (b"microsoft", b"hyperv"), (b"nutanix", b"kvm"), (b"openstack", b"kvm"), (b"qemu", b"kvm"), (b"kvm", b"kvm"), (b"vmware", b"vmware"), (b"rhev", b"kvm"), (b"parallels", b"kvm") ) for name, vm_type in content_vendors_map: if name in vendor: return vm_type return b"" def _get_vm_legacy(root_path): """Check if the host is virtualized looking at /proc/cpuinfo content.""" try: cpuinfo = read_text_file(os.path.join(root_path, "proc/cpuinfo")) except (IOError, OSError): return b"" if "qemu" in cpuinfo: return b"kvm" return b""