GitHub.com
tcp/80
Open service 2606:50c0:8002::153:80 · max.kpehki.ru
2026-02-07 13:39
HTTP/1.1 301 Moved Permanently Connection: close Content-Length: 162 Server: GitHub.com Content-Type: text/html Location: https://max.kpehki.ru/ X-GitHub-Request-Id: EB1D:12E4F2:AD8156:C939EB:69874089 Accept-Ranges: bytes Age: 0 Date: Sat, 07 Feb 2026 13:39:23 GMT Via: 1.1 varnish X-Served-By: cache-pao-kpao1770061-PAO X-Cache: MISS X-Cache-Hits: 0 X-Timer: S1770471564.846360,VS0,VE73 Vary: Accept-Encoding X-Fastly-Request-ID: 7653d245c254e355cd84da720ecd7de928b1c520 Page title: 301 Moved Permanently <html> <head><title>301 Moved Permanently</title></head> <body> <center><h1>301 Moved Permanently</h1></center> <hr><center>nginx</center> </body> </html>
Open service 2606:50c0:8003::153:80 · max.kpehki.ru
2026-02-07 13:39
HTTP/1.1 200 OK
Connection: close
Content-Length: 7476
Server: GitHub.com
Content-Type: text/html; charset=utf-8
x-origin-cache: HIT
Last-Modified: Thu, 22 Jan 2026 13:25:09 GMT
Access-Control-Allow-Origin: *
ETag: "69722535-1d34"
expires: Sat, 07 Feb 2026 13:49:23 GMT
Cache-Control: max-age=600
x-proxy-cache: MISS
X-GitHub-Request-Id: 734E:2F07FF:C20FE7:D6BDE6:6987408B
Accept-Ranges: bytes
Age: 0
Date: Sat, 07 Feb 2026 13:39:23 GMT
Via: 1.1 varnish
X-Served-By: cache-lga21927-LGA
X-Cache: MISS
X-Cache-Hits: 0
X-Timer: S1770471564.806370,VS0,VE19
Vary: Accept-Encoding
X-Fastly-Request-ID: 57bb1cf8fa87cc63bb43291aaca8936e2ebfd5ca
Page title: Таймер
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Таймер</title>
<style>
body {
font-family: Arial, sans-serif;
text-align: center;
overflow: hidden;
background: #000;
color: white;
}
#timer {
font-size: 2em;
margin-top: 20px;
position: relative;
z-index: 10;
}
.face {
position: absolute;
width: 100px;
height: 100px;
border-radius: 50%;
user-select: none;
pointer-events: none;
}
</style>
</head>
<body>
<h1>МАКС УЧИТ ЛИНУКС УЖЕ</h1>
<div id="timer"></div>
<script>
function getTimeSinceMarchFirst() {
var marchFirst = new Date("2024-03-01T00:00:00");
var now = new Date();
var difference = now.getTime() - marchFirst.getTime();
var days = Math.floor(difference / (1000 * 60 * 60 * 24));
var hours = Math.floor((difference % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
var minutes = Math.floor((difference % (1000 * 60 * 60)) / (1000 * 60));
var seconds = Math.floor((difference % (1000 * 60)) / 1000);
return { days, hours, minutes, seconds };
}
function updateTimer() {
var t = getTimeSinceMarchFirst();
document.getElementById("timer").innerHTML =
t.days + " дней, " + t.hours + " часов, " +
t.minutes + " минут, " + t.seconds + " секунд";
}
setInterval(updateTimer, 1000);
updateTimer();
let faces = [];
const MAX_FACES = 50;
let linuxCommands = [
"ls -la", "cd /var/log", "tail -f /var/log/syslog", "sudo reboot",
"df -h", "du -sh *", "ps aux", "kill -9 1234", "top", "htop",
"cat /etc/passwd", "grep error file.log", "journalctl -xe",
"chmod +x script.sh", "systemctl restart nginx", "ping 8.8.8.8",
"curl ifconfig.me", "whoami", "uptime", "free -m", "ip addr",
"netstat -tulpn", "ss -lntp", "docker ps", "docker logs -f",
"kubectl get pods", "kubectl describe pod my-pod",
"nano /etc/hosts", "vim ~/.bashrc", "echo $PATH",
"export VAR=test", "uname -a", "dmesg | tail", "lsblk", "fdisk -l",
"mount | column -t", "rsync -av src/ dst/", "scp file user@host:/tmp",
"ssh user@host", "tar -czvf backup.tar.gz /home/user",
"find / -name '*.log'", "locate passwd", "alias ll='ls -l'",
"history | grep ssh", "awk '{print $1}' file.txt",
"sed -i 's/foo/bar/g' file.txt", "wc -l file.txt",
"cut -d: -f1 /etc/passwd", "head -n 20 file.log", "tail -n 50 file.log", "файв тыщ", "айпишник"
];
let commandQueue = shuffleArray([...linuxCommands]);
function shuffleArray(array) {
for (let i = array.length - 1; i > 0; i--) {
const j = Math.floor(Math.random() * (i + 1));
[array[i], array[j]] = [array[j], array[i]];
}
return array;
}
function getNextCommand() {
if (commandQueue.length === 0) {
commandQueue = shuffleArray([...linuxCommands]);
}
return commandQueue.pop();
}
function createFaces() {
let t = getTimeSinceMarchFirst();
let count = Math.floor(t.days / 100);
for (let i = faces.length; i < count && faces.length < MAX_FACES; i++) {
let img = document.createElement("img");
img.src = "max.jpg";
img.classList.add("face");
img.style.position = "absolute";
document.body.appendChild(img);
let angle = Math.random() * 2 * Math.PI;
let speed = 2