Files
flod/template.html
jbergner c5a7f90226
All checks were successful
release-tag / release-image (push) Successful in 1m52s
update
2025-11-08 21:21:22 +01:00

433 lines
26 KiB
HTML

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="shortcut icon" href="assets/images/fav.png" type="image/x-icon">
<title>FLOD Project</title>
<link href="assets/css/style.css" rel="stylesheet">
<link rel="stylesheet" href="assets/css/icon.min.css" />
<style>
</style>
</head>
<body class="font-body bg-black/5">
<!-- hero section -->
<section class="py-16 bg-primary text-white">
<div class=" container mx-auto">
<div class="flex justify-center items-center">
<div class="text-center">
<h5 class="text-3xl font-bold my-5">FLOD Project
</h5>
<p>Honeypod Tracker: Identifying and logging IP addresses that interact with decoy ports.<br>Our system collects valuable data on potential attackers by monitoring unsolicited connection attempts.<br>Strengthen your network security with real-time threat intelligence.</p>
</div>
</div>
</div>
</section>
<!-- Section 2 -->
<section class="my-10">
<div class="container mx-auto">
<div class="bg-white p-8">
<nav class="bg-white p-4 rounded-md shadow-md">
<ol class="list-reset flex text-black/70">
<li>
<a href="#" class="text-primary/60 hover-underline-animation">Home</a>
<span class="mx-2">/</span>
</li>
<li>
<a href="#" class="text-primary/60 hover-underline-animation">Products</a>
<span class="mx-2">/</span>
</li>
<li>
<a href="#" class="text-primary/60 hover-underline-animation">Electronics</a>
<span class="mx-2">/</span>
</li>
<li class="text-black/50">Mobile Phones</li>
</ol>
</nav>
</div>
</div>
</section>
<!-- section 3 -->
<section class="my-10">
<div class="container mx-auto">
<div class="bg-white p-8">
<div class="text-center mb-10">
<h4 class="text-base text-primary/60 font-medium mb-1">Our lists</h4>
<h2 class="font-bold text-black/80 mb-4 text-xl lg:text-2xl">TIERS</h2>
</div>
<div class="grid gap-8 md:grid-cols-3">
<div
class="text-center bg-white border border-third rounded-xl transition-all ease-in-out duration-1000 hover:bg-third/10">
<div class="pb-8">
<h3
class="text-xl font-bold mb-8 lg:text-3xl h-32 text-white bg-third rounded-t-xl flex justify-center items-center relative after:absolute after:-bottom-2 after:left-1/2 after:-translate-x-1/2 after:w-5 after:h-5 after:rotate-45 after:bg-third">
IPv4 - FLOD</h3>
<h4 class="text-lg font-bold text-black/60 mb-6">Only IPv4 by FLOD</h4>
<h2 class="font-bold text-third mb-2 text-4xl">Free</h2>
<p class="text-base text-black/60 mb-6">Personal Use</p>
<ul class="text-black/40 font-medium mb-6 grid gap-3">
<li><a href="#">more than 4500 IPv4</a></li>
<li><a href="#">only IPv4</a></li>
<li><a href="#">No Collection-Lists</a></li>
</ul>
<button
class="text-base bg-third rounded-full text-white px-6 py-2 border border-third/80 transition ease-in-out duration-1000 hover:text-third hover:bg-white">Get
Started</button>
</div>
</div>
<div
class="text-center bg-white border border-fourth rounded-xl transition-all ease-in-out duration-1000 hover:bg-fourth/10">
<div class="pb-8">
<h3
class="text-xl font-bold mb-8 lg:text-3xl h-32 text-white bg-fourth rounded-t-xl flex justify-center items-center relative after:absolute after:-bottom-2 after:left-1/2 after:-translate-x-1/2 after:w-5 after:h-5 after:rotate-45 after:bg-fourth">
IPv4+6 - FLOD</h3>
<h4 class="text-lg font-bold text-black/60 mb-6">IPv4 + IPv6 by FLOD</h4>
<h2 class="font-bold text-fourth mb-2 text-4xl">Free</h2>
<p class="text-base text-black/60 mb-6">Personal Use</p>
<ul class="text-black/40 font-medium mb-6 grid gap-3">
<li><a href="#">more than 4500 IPv4</a></li>
<li><a href="#">more than 100 IPv6</a></li>
<li><a href="#">No Collection-Lists</a></li>
</ul>
<button
class="text-base bg-fourth rounded-full text-white px-6 py-2 border border-fourth/80 transition ease-in-out duration-1000 hover:text-fourth hover:bg-white">Get
Started</button>
</div>
</div>
<div
class="text-center bg-white border border-secondary rounded-xl transition-all ease-in-out duration-1000 hover:bg-secondary/10">
<div class="pb-8">
<h3
class="text-xl font-bold mb-8 lg:text-3xl h-32 text-white bg-secondary rounded-t-xl flex justify-center items-center relative after:absolute after:-bottom-2 after:left-1/2 after:-translate-x-1/2 after:w-5 after:h-5 after:rotate-45 after:bg-secondary">
IPv4+6 - F+E</h3>
<h4 class="text-lg font-bold text-black/60 mb-6">IPv4 + IPv6 by FLOD + External</h4>
<h2 class="font-bold text-secondary mb-2 text-4xl">Member</h2>
<p class="text-base text-black/60 mb-6">Personal / Business Use</p>
<ul class="text-black/40 font-medium mb-6 grid gap-3">
<li><a href="#">more than 4500 IPv4</a></li>
<li><a href="#">more than 100 IPv6</a></li>
<li><a href="#">more than 600.000 Subnets</a></li>
</ul>
<button
class="text-base bg-secondary rounded-full text-white px-6 py-2 border border-secondary/80 transition ease-in-out duration-1000 hover:text-secondary hover:bg-white">Get
Started</button>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- section 3 -->
<section class="my-10">
<div class="container mx-auto">
<div class="grid gap-8 items-center bg-white p-8 md:grid-cols-3">
<div class="grid grid-cols-2 gap-2">
<img src="assets/images/back.jpg" alt="dummy" class="rounded-xl w-full">
<img src="assets/images/back2.jpg" alt="dummy" class="rounded-xl w-full">
<img src="assets/images/back3.jpg" alt="dummy" class="rounded-xl w-full">
<img src="assets/images/back5.jpg" alt="dummy" class="rounded-xl w-full">
</div>
<div class="md:col-span-2">
<h4 class="text-base text-primary/60 font-medium mb-1">Description</h4>
<h2 class="font-bold text-black/80 mb-4 text-xl lg:text-2xl">What ist the FLOD-Project?</h2>
<p class="text-black/40 text-base mb-4">A Honeypod is a decoy system designed to attract and detect unauthorized or malicious connection attempts.
In the FLOD-Project, multiple distributed systems monitor connection attempts on various ports.
These systems are not part of any productive environment and have no legitimate services running.
Any connection to these Honeypods reliably indicates port scans, probing, or other potentially harmful activities.</p>
<button
class="text-base bg-primary mt-4 rounded-full text-white px-6 py-2 border border-primary/80 transition ease-in-out duration-1000 hover:text-primary hover:bg-white">Read
More</button>
</div>
</div>
</div>
</section>
<!-- section 4 -->
<section class="my-10">
<div class="container mx-auto">
<div class="bg-white p-8">
<div class="text-center mb-16">
<div class="md:col-span-2">
<h4 class="text-base text-primary/60 font-medium mb-1">FLOD - SYSTEM</h4>
<h2 class="font-bold text-black/80 mb-4 text-xl lg:text-2xl">Access the System!</h2>
</div>
</div>
<div class="mx-auto grid gap-8 md:w-4/6">
<div class="md:flex gap-8">
<div class="text-center mb-4 md:mb-0">
<span
class="text-2xl font-bold text-fourth/80 w-16 h-16 border-2 border-fourth !flex items-center justify-center rounded-full mx-auto md:mb-2">R</span>
<h4 class="text-base text-black/60 font-medium">Requests</h4>
</div>
<div
class="bg-fourth/10 rounded-xl relative p-6 transition-all ease-in-out duration-1000 hover:bg-fourth/20 hover:shadow-md hover:shadow-fourth/40">
<h2 class="text-lg font-bold text-black/80 mb-2 lg:text-xl">Requests</h2>
<div id="result">No Request</div>
<p class="text-black/40 text-base">Send your request and view result.</p>
</div>
</div>
<div class="md:flex gap-8">
<div class="text-center mb-4 md:mb-0">
<span
class="text-2xl font-bold text-fourth/80 w-16 h-16 border-2 border-fourth !flex items-center justify-center rounded-full mx-auto md:mb-2">M</span>
<h4 class="text-base text-black/60 font-medium">Metrics</h4>
</div>
<div
class="bg-fourth/10 rounded-xl relative p-6 transition-all ease-in-out duration-1000 hover:bg-fourth/20 hover:shadow-md hover:shadow-fourth/40">
<h2 class="text-lg font-bold text-black/80 mb-2 lg:text-xl">Metrics</h2>
<div id="metrics">Loading...</div>
<p class="text-black/40 text-base">Live metrics calculated by the system.</p>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- section 4 -->
<section class="my-10">
<div class="container mx-auto">
<div class="bg-white p-8">
<div class="text-center mb-10">
<div class="md:col-span-2">
<h4 class="text-base text-primary/60 font-medium mb-1 tracking-[8px]">FAQ</h4>
<h2 class="font-bold text-black/80 mb-4 text-xl lg:text-2xl">Frequently Asked Questions</h2>
<p class="text-black/40 text-base">Lorem Ipsum is simply dummy text of the printing and
typesetting industry.</p>
</div>
</div>
<div class="grid gap-8 mx-auto md:w-4/5">
<div class="grid gap-4">
<h4 class="text-lg font-medium text-third/80">Techanical</h4>
<div class="relative mb-3">
<h6 class="mb-0">
<button
class="relative border border-third bg-third/10 shadow-md shadow-third/20 rounded-lg flex items-center w-full font-semibold text-left transition-all ease-in cursor-pointer text-black/60 group"
data-collapse-target="animated-collapse-23">
<i
class="fa-solid fa-question text-xl w-14 h-14 me-2 rounded-s-lg !flex justify-center items-center bg-third/80 text-white/80"></i>
<span class="me-4">Lorem Ipsum is simply dummy text</span>
<i
class="absolute right-3 text-base text-third transition-transform fa fa-chevron-down group-open:rotate-180"></i>
</button>
</h6>
<div data-collapse="animated-collapse-23"
class="h-0 overflow-hidden transition-all duration-300 ease-in-out">
<div class="pt-4 text-sm leading-normal text-black/60">
We're not always in the position that we want to be at. We're constantly
growing. We're constantly making mistakes. We're constantly trying to
express ourselves and actualize our dreams.
</div>
</div>
</div>
<div class="relative mb-3">
<h6 class="mb-0">
<button
class="relative border border-third bg-third/10 shadow-md shadow-third/20 rounded-lg flex items-center w-full font-semibold text-left transition-all ease-in cursor-pointer text-black/60 group"
data-collapse-target="animated-collapse-24">
<i
class="fa-solid fa-question text-xl w-14 h-14 me-2 rounded-s-lg !flex justify-center items-center bg-third/80 text-white/80"></i>
<span class="me-4">Lorem Ipsum is simply dummy text</span>
<i
class="absolute right-3 text-base text-third transition-transform fa fa-chevron-down group-open:rotate-180"></i>
</button>
</h6>
<div data-collapse="animated-collapse-24"
class="h-0 overflow-hidden transition-all duration-300 ease-in-out">
<div class="pt-4 text-sm leading-normal text-black/60">
We're not always in the position that we want to be at. We're constantly
growing. We're constantly making mistakes. We're constantly trying to
express ourselves and actualize our dreams.
</div>
</div>
</div>
<div class="relative mb-3">
<h6 class="mb-0">
<button
class="relative border border-third bg-third/10 shadow-md shadow-third/20 rounded-lg flex items-center w-full font-semibold text-left transition-all ease-in cursor-pointer text-black/60 group"
data-collapse-target="animated-collapse-25">
<i
class="fa-solid fa-question text-xl w-14 h-14 me-2 rounded-s-lg !flex justify-center items-center bg-third/80 text-white/80"></i>
<span class="me-4">Lorem Ipsum is simply dummy text</span>
<i
class="absolute right-3 text-base text-third transition-transform fa fa-chevron-down group-open:rotate-180"></i>
</button>
</h6>
<div data-collapse="animated-collapse-25"
class="h-0 overflow-hidden transition-all duration-300 ease-in-out">
<div class="pt-4 text-sm leading-normal text-black/60">
We're not always in the position that we want to be at. We're constantly
growing. We're constantly making mistakes. We're constantly trying to
express ourselves and actualize our dreams.
</div>
</div>
</div>
<div class="grid gap-4">
<h4 class="text-lg font-medium text-fourth/80">Billing</h4>
<div class="relative mb-3">
<h6 class="mb-0">
<button
class="relative border border-fourth bg-fourth/10 shadow-md shadow-fourth/20 rounded-lg flex items-center w-full font-semibold text-left transition-all ease-in cursor-pointer text-black/60 group"
data-collapse-target="animated-collapse-26">
<i
class="fa-solid fa-question text-xl w-14 h-14 me-2 rounded-s-lg !flex justify-center items-center bg-fourth/80 text-white/80"></i>
<span class="me-4">Lorem Ipsum is simply dummy text</span>
<i
class="absolute right-3 text-base text-fourth transition-transform fa fa-chevron-down group-open:rotate-180"></i>
</button>
</h6>
<div data-collapse="animated-collapse-26"
class="h-0 overflow-hidden transition-all duration-300 ease-in-out">
<div class="pt-4 text-sm leading-normal text-black/60">
We're not always in the position that we want to be at. We're constantly
growing. We're constantly making mistakes. We're constantly trying to
express ourselves and actualize our dreams.
</div>
</div>
</div>
<div class="relative mb-3">
<h6 class="mb-0">
<button
class="relative border border-fourth bg-fourth/10 shadow-md shadow-fourth/20 rounded-lg flex items-center w-full font-semibold text-left transition-all ease-in cursor-pointer text-black/60 group"
data-collapse-target="animated-collapse-27">
<i
class="fa-solid fa-question text-xl w-14 h-14 me-2 rounded-s-lg !flex justify-center items-center bg-fourth/80 text-white/80"></i>
<span class="me-4">Lorem Ipsum is simply dummy text</span>
<i
class="absolute right-3 text-base text-fourth transition-transform fa fa-chevron-down group-open:rotate-180"></i>
</button>
</h6>
<div data-collapse="animated-collapse-27"
class="h-0 overflow-hidden transition-all duration-300 ease-in-out">
<div class="pt-4 text-sm leading-normal text-black/60">
We're not always in the position that we want to be at. We're constantly
growing. We're constantly making mistakes. We're constantly trying to
express ourselves and actualize our dreams.
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- section 5 -->
<section class="my-10">
<div class="container mx-auto">
<div class="bg-white p-8">
<div class="grid gap-8 items-center md:grid-cols-2">
<div class="grid gap-8 md:grid-cols-2">
<div class="text-center p-6 bg-fourth/10 rounded-xl shadow shadow-fourth/80">
<img src="assets/images/user/user-2.jpg" alt="dummy"
class="w-28 rounded-full mx-auto mb-4 shadow-md shadow-fourth">
<h2 class="text-lg font-bold text-fourth/80 mb-1 lg:text-xl">Jone Due</h2>
<h6 class="text-base text-black/60 font-medium">CEO</h6>
</div>
<div class="text-center p-6 bg-fourth/10 rounded-xl shadow shadow-fourth/80">
<img src="assets/images/user/user-3.jpg" alt="dummy"
class="w-28 rounded-full mx-auto mb-4 shadow-md shadow-fourth">
<h2 class="text-lg font-bold text-fourth/80 mb-1 lg:text-xl">Jone Due</h2>
<h6 class="text-base text-black/60 font-medium">CEO</h6>
</div>
<div class="text-center p-6 bg-fourth/10 rounded-xl shadow shadow-fourth/80">
<img src="assets/images/user/user-4.jpg" alt="dummy"
class="w-28 rounded-full mx-auto mb-4 shadow-md shadow-fourth">
<h2 class="text-lg font-bold text-fourth/80 mb-1 lg:text-xl">Jone Due</h2>
<h6 class="text-base text-black/60 font-medium">CEO</h6>
</div>
<div class="text-center p-6 bg-fourth/10 rounded-xl shadow shadow-fourth/80">
<img src="assets/images/user/user-5.jpg" alt="dummy"
class="w-28 rounded-full mx-auto mb-4 shadow-md shadow-fourth">
<h2 class="text-lg font-bold text-fourth/80 mb-1 lg:text-xl">Jone Due</h2>
<h6 class="text-base text-black/60 font-medium">CEO</h6>
</div>
</div>
<div>
<h4 class="text-base text-primary/60 font-medium mb-1">What about</h4>
<h2 class="font-bold text-black/80 text-xl mb-8 lg:text-2xl">Meet Our Team</h2>
<p class="text-black/40 text-base mb-4">How does FLOD work? We use a large number of servers worldwide to filter out unwanted and unusual requests to IP addresses and services.
All slave systems send their collected diagnostic data to the master server in real time.
Blacklists are created in real time from the data from the master servers.
This allows connections to be blocked at the first level in firewalls and on various operating systems.
The systems run day and night and always provide live data. </p>
<p class="text-black/40 text-base mb-4">Even though our systems serve both IPv4 and IPv6 requests, we rarely detect connection attempts via IPv6.
Nevertheless, we are constantly increasing the number of breadcrumbs we provide. </p>
</div>
</div>
</div>
</div>
</section>
<!-- footer -->
<footer class="bg-primary/60 text-center py-4">
<p class="text-white text-base">Copyright &copy; 2024 - TotalSuite</p>
</footer>
<script src="assets/js/collapse.js"></script>
<script>
async function checkIP() {
const ip = document.getElementById('ipInput').value.trim();
if (!ip) { alert("Please enter IP!"); return; }
const res = await fetch('/check/' + ip);
const data = await res.json();
document.getElementById('result').innerText = JSON.stringify(data, null, 2);
//addHistory(ip, data);
}
async function whitelistIP() {
const ip = document.getElementById('ipInput').value.trim();
if (!ip) { alert("Please enter IP!"); return; }
const res = await fetch('/whitelist', {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({ip})
});
const data = await res.json();
document.getElementById('result').innerText = JSON.stringify(data, null, 2);
//addHistory(ip, data);
}
/*function addHistory(ip, data) {
let history = JSON.parse(localStorage.getItem('ipHistory') || '[]');
history.unshift({ip, data, ts: new Date().toLocaleString()});
if (history.length > 10) history = history.slice(0, 10);
localStorage.setItem('ipHistory', JSON.stringify(history));
renderHistory();
}*/
/*function renderHistory() {
let history = JSON.parse(localStorage.getItem('ipHistory') || '[]');
if (history.length === 0) {
document.getElementById('history').innerText = 'Nothing checked yet';
return;
}
document.getElementById('history').innerText = history.map(e =>
e.ts + ": " + e.ip + " → blocked=" + (e.data.blocked ? "yes" : "no") +
(e.data.categories ? " [" + e.data.categories.join(", ") + "]" : "")
).join("\n");
}*/
async function loadMetrics() {
const res = await fetch('/metrics');
const text = await res.text();
const lines = text.split('\n').filter(l => l.includes('ipcheck_'));
document.getElementById('metrics').innerText = lines.join('\n') || 'No Data';
}
//renderHistory();
setInterval(loadMetrics, 3000);
loadMetrics();
</script>
</body>
</html>