{"id":26167502,"url":"https://github.com/aiovin/lazy-vps","last_synced_at":"2026-04-07T20:31:14.302Z","repository":{"id":281720507,"uuid":"946203233","full_name":"aiovin/lazy-vps","owner":"aiovin","description":"A bash script to configure fresh VPS","archived":false,"fork":false,"pushed_at":"2025-07-20T17:04:59.000Z","size":7781,"stargazers_count":4,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-20T19:05:40.306Z","etag":null,"topics":["bash","debian","ubuntu","vps"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aiovin.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-03-10T19:18:45.000Z","updated_at":"2025-07-20T17:05:03.000Z","dependencies_parsed_at":"2025-03-10T20:30:01.364Z","dependency_job_id":"b161bbf4-1e2e-407d-aeb7-43f5482577a0","html_url":"https://github.com/aiovin/lazy-vps","commit_stats":null,"previous_names":["aiovin/lazy-vps"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/aiovin/lazy-vps","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aiovin%2Flazy-vps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aiovin%2Flazy-vps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aiovin%2Flazy-vps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aiovin%2Flazy-vps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aiovin","download_url":"https://codeload.github.com/aiovin/lazy-vps/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aiovin%2Flazy-vps/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31528261,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T16:28:08.000Z","status":"ssl_error","status_checked_at":"2026-04-07T16:28:06.951Z","response_time":105,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","debian","ubuntu","vps"],"created_at":"2025-03-11T17:38:04.975Z","updated_at":"2026-04-07T20:31:14.285Z","avatar_url":"https://github.com/aiovin.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# lazy vps setup\nBash script for basic and secure VPS setup.\u003cbr\u003e\u003cbr\u003e\nJust run on a newly created VPS:\n```\nbash -c \"$(curl -Ls https://raw.githubusercontent.com/aiovin/lazy-vps/refs/heads/main/setup-ba.sh)\"\n```\nFor **systemd-based systems** (tested on Ubuntu 22.04, 24.04 and Debian 11, 12).\n\n\u003cdetails\u003e\n\u003csummary\u003eVideo example of how the script works\u003c/summary\u003e\n\nhttps://github.com/user-attachments/assets/61b1e4ea-09e6-4562-98b9-301dd51dbe98\n\n\u003c/details\u003e\n\n### What it does:\n- System update.\n- Creation of a new user with sudo privileges.\n- Basic SSH and UFW setup (allow SSH key only, changing SSH port, root login disabled, limit connection attempts, block all ports except SSH).\n- Timezone and hostname configuration.\n- Adds useful shell aliases (`cls` for clearing the terminal, `act` for activating Python virtual environments and `x` for the `exit` and more).\n- Set the congestion control algorithm to BBR.\n- Optional ntfy.sh notifications (server startup and disk space alerts).\n- Generates ready-to-use SSH connection command.\n\n### What exactly it does:\nAfter running the cript, it will first update your system, then it will guide you through entering required configuration details such as new user credentials, SSH port, timezone, and other settings. After that script will perform the server setup using provided parameters. At the end, the script will verify the changes made and display your new SSH connection command with all the updated settings.\n\n### Installed packages:\nWill be instaled: sudo, nano, ufw, curl, htop, gzip, logrotate, bash-completion, jq, neofetch. Most of them are typically pre-installed in modern distributions.\nNo additional or unnecessary packages beyond these will be installed.\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/aiovin/lazy-vps/main/script_finish.png\" width=\"75%\"\u003e\n  \u003cbr\u003e\u003ci\u003eScript finish\u003c/i\u003e\n\u003c/p\u003e\n\n---\n\n# lazy vps setup (rus)\n\nBash скрипт для базовой настройки чистого VPS.\u003cbr\u003e\u003cbr\u003e\nЗапустить и следовать инструкциям:\n```\nbash -c \"$(curl -Ls https://raw.githubusercontent.com/aiovin/lazy-vps/refs/heads/main/setup-ba.sh)\"\n```\nДля **систем на основе systemd** (протестировано на Ubuntu 22.04, 24.04 и Debian 11, 12).\n\n\u003cdetails\u003e\n\u003csummary\u003eВидео-демонстрация\u003c/summary\u003e\n\nhttps://github.com/user-attachments/assets/61b1e4ea-09e6-4562-98b9-301dd51dbe98\n\n\u003c/details\u003e\n\n### Что делает скрипт:\n- Обновление системы.\n- Создание нового пользователя с правами sudo.\n- Базовая настройка SSH и UFW (вход только по SSH-ключам, изменение порта SSH, отключение входа для root, ограничение попыток подключения и закрытие всех портов кроме SSH).\n- Установку временной зоны и имени хоста.\n- Добавление полезных алиасов (`cls`/`сды` для очистки терминала, `act` для активации виртуального окружения Python, `x` для `exit` и другие).\n- Установка алгоритма управления перегрузкой на BBR.\n- Опциональные уведомления через ntfy.sh (старт сервера и контроль дискового пространства).\n- Генерацию готовой команды для SSH-подключения.\n\n### Что именно он делает?\nПосле запуска скрипта, он обновит вашу систему затем он предложит вам ввести требуемые параметры для настройки, такие как учетные данные нового пользователя, порт SSH, временная зона и т.п. Затем скрипт выполнит настройку сервера с использованием предоставленных параметров. В конце работы скрипт проверит сделанные изменения и выведет команду для SSH-подключения с учетом всех новых настроек.\n\n### Устанавливаемые пакеты:\nБудет установлено: sudo, nano, ufw, curl, htop, gzip, logrotate, bash-completion, jq, neofetch. Большинство этих утилит обычно предустановлены в современных дистрибутивах.\nНикаких дополнительных или ненужных пакетов помимо этих установлено не будет.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faiovin%2Flazy-vps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faiovin%2Flazy-vps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faiovin%2Flazy-vps/lists"}