Az internetes technológia modern birodalmában a webalkalmazások és -kiszolgálók biztonságának biztosításának fontosságát nem lehet túlbecsülni, mivel a kibertámadások gyakorisága és kifinomultsága folyamatosan nő. Emiatt a webalapú rendszerek robusztus és élvonalbeli biztonsági intézkedéseinek szükségessége is növekszik.
MAKEUSEOF A NAP VIDEÓJA GÖRGÖZSEN A TARTALOM FOLYTATÁSHOZ
Az IP-címek engedélyezési listája a webalkalmazások, -kiszolgálók és API-k védelmére szolgáló számos modern technika egyike. Bár csak bizonyos esetekben használják, ajánlott módja annak, hogy szükség esetén korlátozzák az internetes erőforrásokhoz való hozzáférést.
hogyan lehet jailbreakolni az ios 11 -et számítógéppel
Mi az IP fehérlistázás?
Az IP fehérlistára helyezés egyszerűen a engedélyezési lista típusa amely webes biztonsági intézkedésnek nevezhető, amellyel a hálózathoz vagy erőforráshoz való hozzáférést korlátozzák egy meghatározott IP-címre vagy IP-címek tartományára, amelyek jogosultnak minősülnek a rendszerhez való hozzáférésre.
Amikor az IP-engedélyezési listát megvalósítják egy rendszerben, csak az engedélyezőlistára felvett IP-címek férhetnek hozzá a rendszerhez és a rajta lévő erőforrásokhoz, míg a többi IP-cím blokkolva van.
Az IP fehérlistára helyezés egy nagyon gyakori módja a nagyon kritikus adatok védelmének, amelyeknek csak egy személy vagy egy adott csoport számára kell hozzáférhetőek, és védve minden feltörési kísérlettől.
Az IP-engedélyezőlistára helyezés gyakori példája a MongoDB Atlas, ahol Ön állítson be egy Mongo adatbázis-fürtöt a felhőben és a rendszer arra kéri, hogy adja hozzá az aktuális IP-címét egy listához, így az adatbázisba vagy fürtbe irányuló kérések csak akkor engedélyezettek, ha azok a számítógépéről érkeznek.
megnézheti a helyi csatornákat a roku -on
Mikor érdemes bevezetni az IP engedélyezési listát?
Az IP-engedélyezőlistára nem minden rendszernek vagy alkalmazásnak szüksége van. Vannak esetek, amikor javasolt és célszerű alkalmazásban, rendszerben implementálni. Az alábbiakban bemutatunk néhány példát azokra a forgatókönyvekre, amelyekben érdemes megfontolni egy IP-engedélyezőlista bevezetését.
- Amikor az alkalmazást csak a felhasználók egy meghatározott csoportja, például egy adott vállalat alkalmazottai vagy ügyfelei használhatják.
- Ha azt szeretné, hogy az alkalmazás csak egy adott helyről legyen elérhető, engedélyezőlistára helyezheti az IP-címek tartományát, amelyek csak az adott helyhez tartoznak.
- Amikor az alkalmazást bizalmas információkhoz vagy szellemi tulajdonokhoz, például kutatási adatbázisokhoz vagy védett szoftverekhez való hozzáférés biztosítására használják.
- Amikor az alkalmazás privát, de az interneten keresztül elérhető, és védeni kell a külső fenyegetésektől, például a DDoS-támadásoktól vagy a rosszindulatú programfertőzésektől.
- Amikor az alkalmazást nyilvános felhőplatformon tárolják, és védeni kell a platform többi bérlőjének vagy felhasználóinak jogosulatlan hozzáférésétől.
- Ha az alkalmazást olyan szabályozott iparágban használják, mint például az egészségügy vagy a pénzügy, ahol megkövetelik a biztonsági előírások betartását.
Sokkal több eset létezik, de alapvetően, ha egy alkalmazás rendelkezik a fent említett tulajdonságok bármelyikével, akkor fontolóra kell vennie az IP-engedélyezőlista megvalósítását.
IP-címek engedélyezése a Go-ban
A Go egy népszerű modern programozási nyelv webszerverek építésére és API-k mindennel, amire szükséged van egy szabványos és biztonságos webalkalmazás elkészítéséhez.
Ez a szakasz bemutatja a Go's Gin keretrendszer használatát a mintaszerver és az IP-engedélyezési logika megvalósítására, amely egy köztes szoftver funkció. A Gin keretrendszert a következő parancs futtatásával telepítheti egy projektbe.
go get github.com/gin-gonic/gin
A Gin keretrendszer telepítése után megkezdheti az IP whitelisting middleware bevezetését. A projekt architektúrától függően bárhol létrehozhat új köztes szoftverfájlt. Íme a köztes szoftver funkció megvalósítása:
package middlewares
import (
"github.com/gin-gonic/gin"
"net/http"
)
func IPWhiteListMiddleware(whitelist map[string]bool) gin.HandlerFunc {
return func(c *gin.Context) {
userIP := c.ClientIP()
if !whitelist[userIP] {
c.AbortWithStatusJSON(http.StatusForbidden, gin.H{
"error": "You are not authorized to access this resource!",
})
} else {
c.Next()
}
}
}
A fenti kódban a IPWhiteListMiddleware A függvény úgy van definiálva, hogy argumentumként elfogadjon egy meghatározott IP-címek engedélyezési listáját. Az engedélyezési lista térképadat-struktúraként valósul meg, így az IP-címekhez könnyen hozzá lehet rendelni értékeit igaz és hamis hogy jelezzék elérhetőségüket.
legjobb ftp kliens Windows 10 -hez
Ezután a függvény a Gin keretrendszerét használja ClientIP funkció segítségével lekéri a kérelmet benyújtani próbáló felhasználó aktuális IP-címét, és ellenőrzi, hogy az szerepel-e az engedélyezőlistán és igaz érték. Ha nem található, vagy úgy találják, hogy értéke van hamis , a köztes szoftver megszakítja a kérést, és 403-as hibát ad vissza (Tiltott).
A funkció tesztelésére szolgáló mintavégpont implementálható, hogy megtudja, hogyan működik az IP-engedélyezőlista. A következő kód egy program, amely engedélyezőlistát határoz meg, és két végpontot (egy korlátozott és egy korlátlant) valósít meg.
package main
import (
"github.com/gin-gonic/gin"
"go-ip-whitelist/middlewares"
"net/http"
)
var IPWhitelist = map[string]bool{
"127.0.0.1": true,
"111.2.3.4": true,
"::1": true,
}
func main() {
router := gin.Default()
router.GET("/index", func(c *gin.Context) {
c.JSON(http.StatusOK, gin.H{
"message": "Welcome to my secure application!",
})
})
restrictedPage := router.Group("/")
restrictedPage.Use(middlewares.IPWhiteListMiddleware(IPWhitelist))
restrictedPage.GET("/adminZone", func(c *gin.Context) {
c.JSON(http.StatusOK, gin.H{
"message": "This endpoint is secured with IP whitelisting!",
})
})
router.Run(":3333")
}
Amikor az alkalmazás fut a menj fuss fő.go , a szerver a 3333-as porton indul, és tesztkéréseket futtathat a /adminZone végpont, hogy megtudja, hogyan működik a köztes szoftver. Az engedélyezési listában a localhost IP értékét is átkapcsolhatja igaz és hamis .
Íme egy minta kérés, amely megmutatja, ha az IP-cím nincs engedélyezőlistán, vagy ha értéke az engedélyezési listán a következőre van állítva hamis :
Íme egy másik kérés arra vonatkozóan, hogy az IP-cím mikor szerepel az IP-engedélyezőlistában, értéke pedig a következőre van állítva igaz :