[{"data":1,"prerenderedAt":655},["ShallowReactive",2],{"navigation_docs":3,"-infrastructure-networking-firewall":134,"-infrastructure-networking-firewall-surround":650},[4,36,61,87,113],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":35},"Getting Started","i-lucide-rocket","\u002Fgetting-started","1.getting-started",[10,15,20,25,30],{"title":11,"path":12,"stem":13,"icon":14},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction","i-lucide-sparkles",{"title":16,"path":17,"stem":18,"icon":19},"Quickstart","\u002Fgetting-started\u002Fquickstart","1.getting-started\u002F2.quickstart","i-lucide-zap",{"title":21,"path":22,"stem":23,"icon":24},"Authentication","\u002Fgetting-started\u002Fauthentication","1.getting-started\u002F3.authentication","i-lucide-key",{"title":26,"path":27,"stem":28,"icon":29},"Rate Limits & Quotas","\u002Fgetting-started\u002Frate-limits-quotas","1.getting-started\u002F4.rate-limits-quotas","i-lucide-gauge",{"title":31,"path":32,"stem":33,"icon":34},"SDKs & Tools","\u002Fgetting-started\u002Fsdks-tools","1.getting-started\u002F5.sdks-tools","i-lucide-box",false,{"title":37,"icon":38,"path":39,"stem":40,"children":41,"page":35},"Cloud Infrastructure","i-lucide-server","\u002Finfrastructure","2.infrastructure",[42,46,51,56],{"title":43,"path":44,"stem":45,"icon":38},"Cloud VPS Compute","\u002Finfrastructure\u002Fvps-compute","2.infrastructure\u002F1.vps-compute",{"title":47,"path":48,"stem":49,"icon":50},"Managed Databases","\u002Finfrastructure\u002Fmanaged-databases","2.infrastructure\u002F2.managed-databases","i-lucide-database",{"title":52,"path":53,"stem":54,"icon":55},"Networking & Cloud Firewall","\u002Finfrastructure\u002Fnetworking-firewall","2.infrastructure\u002F3.networking-firewall","i-lucide-shield",{"title":57,"path":58,"stem":59,"icon":60},"Block Storage & Volumes","\u002Finfrastructure\u002Fblock-storage","2.infrastructure\u002F4.block-storage","i-lucide-hard-drive",{"title":62,"icon":63,"path":64,"stem":65,"children":66,"page":35},"Services & APIs","i-lucide-cpu","\u002Fservices-api","3.services-api",[67,72,77,82],{"title":68,"path":69,"stem":70,"icon":71},"REST API Reference","\u002Fservices-api\u002Fapi-reference","3.services-api\u002F1.api-reference","i-lucide-terminal",{"title":73,"path":74,"stem":75,"icon":76},"URL Shortener API","\u002Fservices-api\u002Furl-shortener","3.services-api\u002F2.url-shortener","i-lucide-link",{"title":78,"path":79,"stem":80,"icon":81},"Temp Mail API","\u002Fservices-api\u002Ftemp-mail","3.services-api\u002F3.temp-mail","i-lucide-mail",{"title":83,"path":84,"stem":85,"icon":86},"Developer Utility APIs","\u002Fservices-api\u002Fdeveloper-utilities","3.services-api\u002F4.developer-utilities","i-lucide-wrench",{"title":88,"icon":89,"path":90,"stem":91,"children":92,"page":35},"Guides & Tutorials","i-lucide-book-open","\u002Fguides","4.guides",[93,98,103,108],{"title":94,"path":95,"stem":96,"icon":97},"Deploy a Full-Stack App with VPS & PostgreSQL","\u002Fguides\u002Fdeploy-fullstack-app","4.guides\u002F1.deploy-fullstack-app","i-lucide-layers",{"title":99,"path":100,"stem":101,"icon":102},"Automated Backups & Webhook Alerts","\u002Fguides\u002Fautomated-backups-webhook","4.guides\u002F2.automated-backups-webhook","i-lucide-bell",{"title":104,"path":105,"stem":106,"icon":107},"E2E Auth Testing with Temp Mail in CI\u002FCD","\u002Fguides\u002Fci-cd-temp-mail-testing","4.guides\u002F3.ci-cd-temp-mail-testing","i-lucide-check-circle-2",{"title":109,"path":110,"stem":111,"icon":112},"Custom Domain & SSL Configuration","\u002Fguides\u002Fcustom-domain-setup","4.guides\u002F4.custom-domain-setup","i-lucide-globe",{"title":114,"icon":115,"path":116,"stem":117,"children":118,"page":35},"Account & Billing","i-lucide-credit-card","\u002Faccount-billing","5.account-billing",[119,124,129],{"title":120,"path":121,"stem":122,"icon":123},"Pricing & Hourly Billing","\u002Faccount-billing\u002Fpricing-billing","5.account-billing\u002F1.pricing-billing","i-lucide-receipt",{"title":125,"path":126,"stem":127,"icon":128},"Team Management & RBAC","\u002Faccount-billing\u002Fteam-rbac","5.account-billing\u002F2.team-rbac","i-lucide-users",{"title":130,"path":131,"stem":132,"icon":133},"Resource Quotas & Service Limits","\u002Faccount-billing\u002Fservice-limits","5.account-billing\u002F3.service-limits","i-lucide-sliders",{"id":135,"title":52,"body":136,"description":641,"extension":642,"links":643,"meta":644,"navigation":645,"path":53,"seo":646,"stem":54,"__hash__":649},"docs\u002F2.infrastructure\u002F3.networking-firewall.md",{"type":137,"value":138,"toc":634},"minimark",[139,143,147,150,155,158,186,188,192,195,200,205,551,553,557,560,630],[140,141,52],"h1",{"id":142},"networking-cloud-firewall",[144,145,146],"p",{},"1st Services provides a programmable software-defined network (SDN) layer that allows you to isolate infrastructure, balance traffic, and shield endpoints from DDoS threats.",[148,149],"hr",{},[151,152,154],"h2",{"id":153},"private-vpc-networks","Private VPC Networks",[144,156,157],{},"Virtual Private Clouds (VPCs) enable secure communication between your VPS instances, Managed Databases, and Block Storage without routing traffic through the public internet.",[159,160,161,169,175],"ul",{},[162,163,164,168],"li",{},[165,166,167],"strong",{},"Zero egress charges",": Traffic within a VPC in the same region is completely free.",[162,170,171,174],{},[165,172,173],{},"Microsecond latency",": Direct kernel-level routing across 100Gbps spine switches.",[162,176,177,180,181,185],{},[165,178,179],{},"Custom CIDR ranges",": Default ",[182,183,184],"code",{},"10.244.0.0\u002F16"," or configure your own subnets.",[148,187],{},[151,189,191],{"id":190},"cloud-firewall-rules","Cloud Firewall Rules",[144,193,194],{},"1st Cloud Firewalls filter traffic at the hypervisor level before packets reach your VPS operating system.",[196,197,199],"h3",{"id":198},"creating-firewall-rules-via-api","Creating Firewall Rules via API",[144,201,202],{},[182,203,204],{},"POST https:\u002F\u002Fapi.1st-services.com\u002Fv1\u002Ffirewalls",[206,207,212],"pre",{"className":208,"code":209,"language":210,"meta":211,"style":211},"language-json shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","{\n  \"name\": \"web-and-ssh-shield\",\n  \"inbound_rules\": [\n    {\n      \"protocol\": \"tcp\",\n      \"ports\": \"22\",\n      \"sources\": [\"198.51.100.0\u002F24\"] \u002F\u002F Restrict SSH to your office IP\n    },\n    {\n      \"protocol\": \"tcp\",\n      \"ports\": \"80,443\",\n      \"sources\": [\"0.0.0.0\u002F0\", \"::\u002F0\"] \u002F\u002F Public HTTP\u002FHTTPS\n    }\n  ],\n  \"outbound_rules\": [\n    {\n      \"protocol\": \"all\",\n      \"destinations\": [\"0.0.0.0\u002F0\", \"::\u002F0\"]\n    }\n  ],\n  \"applied_to\": [\"vps_8931274\"]\n}\n","json","",[182,213,214,223,251,266,272,295,316,345,351,356,375,395,430,436,442,456,461,481,512,517,522,545],{"__ignoreMap":211},[215,216,219],"span",{"class":217,"line":218},"line",1,[215,220,222],{"class":221},"sMK4o","{\n",[215,224,226,229,233,236,239,242,246,248],{"class":217,"line":225},2,[215,227,228],{"class":221},"  \"",[215,230,232],{"class":231},"spNyl","name",[215,234,235],{"class":221},"\"",[215,237,238],{"class":221},":",[215,240,241],{"class":221}," \"",[215,243,245],{"class":244},"sfazB","web-and-ssh-shield",[215,247,235],{"class":221},[215,249,250],{"class":221},",\n",[215,252,254,256,259,261,263],{"class":217,"line":253},3,[215,255,228],{"class":221},[215,257,258],{"class":231},"inbound_rules",[215,260,235],{"class":221},[215,262,238],{"class":221},[215,264,265],{"class":221}," [\n",[215,267,269],{"class":217,"line":268},4,[215,270,271],{"class":221},"    {\n",[215,273,275,278,282,284,286,288,291,293],{"class":217,"line":274},5,[215,276,277],{"class":221},"      \"",[215,279,281],{"class":280},"sBMFI","protocol",[215,283,235],{"class":221},[215,285,238],{"class":221},[215,287,241],{"class":221},[215,289,290],{"class":244},"tcp",[215,292,235],{"class":221},[215,294,250],{"class":221},[215,296,298,300,303,305,307,309,312,314],{"class":217,"line":297},6,[215,299,277],{"class":221},[215,301,302],{"class":280},"ports",[215,304,235],{"class":221},[215,306,238],{"class":221},[215,308,241],{"class":221},[215,310,311],{"class":244},"22",[215,313,235],{"class":221},[215,315,250],{"class":221},[215,317,319,321,324,326,328,331,333,336,338,341],{"class":217,"line":318},7,[215,320,277],{"class":221},[215,322,323],{"class":280},"sources",[215,325,235],{"class":221},[215,327,238],{"class":221},[215,329,330],{"class":221}," [",[215,332,235],{"class":221},[215,334,335],{"class":244},"198.51.100.0\u002F24",[215,337,235],{"class":221},[215,339,340],{"class":221},"]",[215,342,344],{"class":343},"sHwdD"," \u002F\u002F Restrict SSH to your office IP\n",[215,346,348],{"class":217,"line":347},8,[215,349,350],{"class":221},"    },\n",[215,352,354],{"class":217,"line":353},9,[215,355,271],{"class":221},[215,357,359,361,363,365,367,369,371,373],{"class":217,"line":358},10,[215,360,277],{"class":221},[215,362,281],{"class":280},[215,364,235],{"class":221},[215,366,238],{"class":221},[215,368,241],{"class":221},[215,370,290],{"class":244},[215,372,235],{"class":221},[215,374,250],{"class":221},[215,376,378,380,382,384,386,388,391,393],{"class":217,"line":377},11,[215,379,277],{"class":221},[215,381,302],{"class":280},[215,383,235],{"class":221},[215,385,238],{"class":221},[215,387,241],{"class":221},[215,389,390],{"class":244},"80,443",[215,392,235],{"class":221},[215,394,250],{"class":221},[215,396,398,400,402,404,406,408,410,413,415,418,420,423,425,427],{"class":217,"line":397},12,[215,399,277],{"class":221},[215,401,323],{"class":280},[215,403,235],{"class":221},[215,405,238],{"class":221},[215,407,330],{"class":221},[215,409,235],{"class":221},[215,411,412],{"class":244},"0.0.0.0\u002F0",[215,414,235],{"class":221},[215,416,417],{"class":221},",",[215,419,241],{"class":221},[215,421,422],{"class":244},"::\u002F0",[215,424,235],{"class":221},[215,426,340],{"class":221},[215,428,429],{"class":343}," \u002F\u002F Public HTTP\u002FHTTPS\n",[215,431,433],{"class":217,"line":432},13,[215,434,435],{"class":221},"    }\n",[215,437,439],{"class":217,"line":438},14,[215,440,441],{"class":221},"  ],\n",[215,443,445,447,450,452,454],{"class":217,"line":444},15,[215,446,228],{"class":221},[215,448,449],{"class":231},"outbound_rules",[215,451,235],{"class":221},[215,453,238],{"class":221},[215,455,265],{"class":221},[215,457,459],{"class":217,"line":458},16,[215,460,271],{"class":221},[215,462,464,466,468,470,472,474,477,479],{"class":217,"line":463},17,[215,465,277],{"class":221},[215,467,281],{"class":280},[215,469,235],{"class":221},[215,471,238],{"class":221},[215,473,241],{"class":221},[215,475,476],{"class":244},"all",[215,478,235],{"class":221},[215,480,250],{"class":221},[215,482,484,486,489,491,493,495,497,499,501,503,505,507,509],{"class":217,"line":483},18,[215,485,277],{"class":221},[215,487,488],{"class":280},"destinations",[215,490,235],{"class":221},[215,492,238],{"class":221},[215,494,330],{"class":221},[215,496,235],{"class":221},[215,498,412],{"class":244},[215,500,235],{"class":221},[215,502,417],{"class":221},[215,504,241],{"class":221},[215,506,422],{"class":244},[215,508,235],{"class":221},[215,510,511],{"class":221},"]\n",[215,513,515],{"class":217,"line":514},19,[215,516,435],{"class":221},[215,518,520],{"class":217,"line":519},20,[215,521,441],{"class":221},[215,523,525,527,530,532,534,536,538,541,543],{"class":217,"line":524},21,[215,526,228],{"class":221},[215,528,529],{"class":231},"applied_to",[215,531,235],{"class":221},[215,533,238],{"class":221},[215,535,330],{"class":221},[215,537,235],{"class":221},[215,539,540],{"class":244},"vps_8931274",[215,542,235],{"class":221},[215,544,511],{"class":221},[215,546,548],{"class":217,"line":547},22,[215,549,550],{"class":221},"}\n",[148,552],{},[151,554,556],{"id":555},"anycast-floating-ips","Anycast Floating IPs",[144,558,559],{},"Floating IPs allow you to instantly redirect public traffic between VPS instances in an active-passive or blue-green failover setup without updating DNS records.",[206,561,566],{"className":562,"code":563,"filename":564,"language":565,"meta":211,"style":211},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","curl -X POST https:\u002F\u002Fapi.1st-services.com\u002Fv1\u002Fnetworking\u002Ffloating-ips\u002Ffip_48219\u002Fassign \\\n  -H \"Authorization: Bearer $FIRST_API_KEY\" \\\n  -H \"Content-Type: application\u002Fjson\" \\\n  -d '{\"target_vps_id\": \"vps_8931275\"}'\n","cURL Reassign Floating IP","bash",[182,567,568,586,603,616],{"__ignoreMap":211},[215,569,570,573,576,579,582],{"class":217,"line":218},[215,571,572],{"class":280},"curl",[215,574,575],{"class":244}," -X",[215,577,578],{"class":244}," POST",[215,580,581],{"class":244}," https:\u002F\u002Fapi.1st-services.com\u002Fv1\u002Fnetworking\u002Ffloating-ips\u002Ffip_48219\u002Fassign",[215,583,585],{"class":584},"sTEyZ"," \\\n",[215,587,588,591,593,596,599,601],{"class":217,"line":225},[215,589,590],{"class":244},"  -H",[215,592,241],{"class":221},[215,594,595],{"class":244},"Authorization: Bearer ",[215,597,598],{"class":584},"$FIRST_API_KEY",[215,600,235],{"class":221},[215,602,585],{"class":584},[215,604,605,607,609,612,614],{"class":217,"line":253},[215,606,590],{"class":244},[215,608,241],{"class":221},[215,610,611],{"class":244},"Content-Type: application\u002Fjson",[215,613,235],{"class":221},[215,615,585],{"class":584},[215,617,618,621,624,627],{"class":217,"line":268},[215,619,620],{"class":244},"  -d",[215,622,623],{"class":221}," '",[215,625,626],{"class":244},"{\"target_vps_id\": \"vps_8931275\"}",[215,628,629],{"class":221},"'\n",[631,632,633],"style",{},"html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}",{"title":211,"searchDepth":225,"depth":225,"links":635},[636,637,640],{"id":153,"depth":225,"text":154},{"id":190,"depth":225,"text":191,"children":638},[639],{"id":198,"depth":253,"text":199},{"id":555,"depth":225,"text":556},"Private VPCs, Anycast floating IPs, automated DDoS filtering, and stateful cloud firewall rules.","md",null,{},{"icon":55},{"title":647,"description":648},"Networking & Cloud Firewall - 1st Services","Configure private subnets, floating IPs, and network security policies.","BqgMKGmgghyLyVzP5IzUGjHeCuKH6pPcVABIt0jVwwQ",[651,653],{"title":47,"path":48,"stem":49,"description":652,"icon":50,"children":-1},"Production-ready PostgreSQL, MySQL, Redis, and MongoDB clusters with automated replication, backups, and metrics.",{"title":57,"path":58,"stem":59,"description":654,"icon":60,"children":-1},"High-performance NVMe block storage volumes scalable up to 32TB with live volume resizing.",1787568615158]