Käytä Go's Gin -kehystä suojataksesi verkkosovelluksesi IP-valittujen luetteloiden avulla.

Internet-tekniikan nykyaikaisessa maailmassa on tärkeää varmistaa verkkosovellusten turvallisuus ja palvelimia ei voi yliarvioida, koska kyberhyökkäysten tiheys ja kehittyneisyys jatkuvat kohottaa. Tämän vuoksi tarve vankkaille ja huippuluokan tietoturvatoimille web-pohjaisille järjestelmille on myös lisääntymässä.

IP-osoitteiden lisääminen sallittujen luetteloon on yksi monista nykyaikaisista tekniikoista verkkosovellusten, palvelimien ja sovellusliittymien suojaamiseksi. Vaikka onkin käytetään vain joissakin erityistapauksissa, se on suositeltava tapa varmistaa pääsyn rajoittaminen Internetin resursseihin tarvittu.

Mikä on IP: n sallittujen luettelointi?

IP-osoitteiden lisääminen sallittujen luetteloon on yksinkertaisesti a sallittujen luettelon tyyppi jota voidaan kutsua web-suojaustoimenpiteeksi, jota käytetään rajoittamaan pääsy verkkoon tai resurssiin määritettyyn IP-osoitteeseen tai IP-osoitealueeseen, jonka katsotaan olevan valtuutettu käyttämään järjestelmää.

Kun IP-osoitteiden lisääminen on otettu käyttöön järjestelmässä, vain sallittujen luetteloon lisätyt IP-osoitteet pääsevät järjestelmään ja sen resursseihin, kun taas muut IP-osoitteet estetään.

IP-osoitteiden lisääminen sallittujen luetteloon on hyvin yleinen tapa suojata erittäin tärkeitä tietoja, joiden pitäisi olla vain yksittäisen henkilön tai tietyn ihmisjoukon saatavilla ja suojattu kaikilta hakkerointiyrityksiltä.

Yleinen esimerkki IP-osoitteiden lisäämisestä sallittujen luetteloon on MongoDB Atlas, jossa sinä perustaa Mongo-tietokantaklusterin pilveen ja sinua kehotetaan lisäämään nykyinen IP-osoitteesi luetteloon, jotta tietokantaan tai klusteriin kohdistuvat pyynnöt sallitaan vain, kun ne tulevat tietokoneeltasi.

Milloin IP-osoitteiden lisääminen pitäisi ottaa käyttöön?

IP-osoitteiden lisääminen sallittujen luetteloon ei ole jotain, jota jokainen järjestelmä tai sovellus tarvitsee. Joissakin tapauksissa on suositeltavaa ja tarkoituksenmukaista ottaa se käyttöön sovelluksessa tai järjestelmässä. Seuraavassa on esimerkkejä tilanteista, joissa sinun tulee harkita IP-osoitteiden sallittujen luettelon käyttöönottoa.

  • Kun sovellus on tarkoitettu vain tietyn käyttäjäryhmän, kuten tietyn yrityksen työntekijöiden tai asiakkaiden, käyttöön.
  • Kun haluat, että sovellus on käytettävissä vain tietystä sijainnista, voit lisätä sallittujen luetteloon IP-osoitteita, jotka koskevat vain tätä sijaintia.
  • Kun sovellusta käytetään luottamuksellisten tietojen tai immateriaaliomaisuuden, kuten tutkimustietokannan tai patentoidun ohjelmiston, käyttöoikeuden tarjoamiseen.
  • Kun sovellus on yksityinen, mutta saatavilla Internetin kautta ja se on suojattava ulkoisilta uhilta, kuten DDoS-hyökkäyksiltä tai haittaohjelmatartunnalta.
  • Kun sovellusta isännöidään julkisella pilvialustalla ja se on suojattava muiden vuokralaisten tai alustan käyttäjien luvattomalta käytöltä.
  • Kun sovellusta käytetään säännellyllä alalla, kuten terveydenhuollossa tai rahoituksessa, jossa vaaditaan turvallisuusstandardien noudattamista.

Tapauksia on monia muitakin, mutta pohjimmiltaan aina, kun sovelluksella on jokin yllä mainituista ominaisuuksista, sinun tulee harkita IP-valittujen luettelon käyttöönottoa.

IP: n sallittujen luettelon käyttöönotto Gossa

Go on suosittu moderni ohjelmointikieli verkkopalvelimien rakentamiseen ja API: t mukana kaikki mitä tarvitset standardin ja suojatun verkkosovelluksen rakentamiseen.

Tämä osio esittelee Go's Gin -kehyksen käytön esimerkkipalvelimen ja IP: n sallittujen luettelon logiikan toteuttamiseen, joka on väliohjelmistotoiminto. Voit asentaa Gin-kehyksen projektiin suorittamalla seuraavan komennon.

mene osoitteeseen github.com/gin-gonic/gin

Gin-kehyksen asentamisen jälkeen voit nyt ottaa käyttöön IP-osion väliohjelmiston. Voit luoda uuden väliohjelmistotiedoston missä tahansa projektissasi projektisi arkkitehtuurista riippuen. Tässä on väliohjelmistotoiminnon toteutus:

paketti väliohjelmistot

tuonti (
"github.com/gin-gonic/gin"
"net/http"
)

funcIPWhiteListMiddleware(valkoinen lista kartta[merkkijono]bool)gin.HandlerFunc {
palatafunc(c *gin. konteksti) {
käyttäjätunnus := c. ClientIP()

jos !whitelist[käyttäjä-IP] {
c. AbortWithStatusJSON(http. Tila Kielletty, gin. H{
"virhe": "Sinulla ei ole lupaa käyttää tätä resurssia!",
})
} muu {
c. Seuraava()
}
}
}

Yllä olevassa koodissa IPWhiteListMiddleware funktio on määritetty hyväksymään määritetty IP-osoitteiden sallittujen luettelo argumentiksi. Valkoinen lista on toteutettu karttatietorakenteena, jotta IP-osoitteille voidaan helposti määrittää arvoja totta ja väärä ilmoittaakseen niiden saavutettavuuden.

Sitten funktio käyttää Gin-kehystä Asiakas-IP toiminto hakee pyyntöä tekevän käyttäjän nykyisen IP-osoitteen ja tarkistaa, onko se sallittujen luettelossa ja totta arvo. Jos sitä ei löydy tai sen todetaan olevan arvo väärä, väliohjelmisto keskeyttää pyynnön ja palauttaa 403-virheen (kielletty).

Esimerkkipäätepiste tämän toiminnon testaamiseksi voidaan toteuttaa, jotta näet, kuinka IP-osallistujaluettelo toimii. Seuraava koodi on ohjelma, joka määrittää sallittujen luettelon ja toteuttaa kaksi päätepistettä (rajoitetun ja rajoittamattoman).

paketti pää

tuonti (
"github.com/gin-gonic/gin"
"go-ip-whitelist/middlewares"
"net/http"
)

var IPWhitelist = kartta[merkkijono]bool{
"127.0.0.1": totta,
"111.2.3.4": totta,
"::1": totta,
}

funcpää() {
reititin := gin. Oletus()

reititin. SAADA("/indeksi", func(c *gin. konteksti) {
c. JSON(http. Tila OK, gin. H{
"viesti": "Tervetuloa suojattuun sovellukseeni!",
})
})

rajoitettu sivu := reititin. Ryhmä("/")
rajoitettu sivu. Käytä (välilaitteet. IPWhiteListMiddleware (IPWhitelist))

rajoitettu sivu. SAADA("/adminZone", func(c *gin. konteksti) {
c. JSON(http. Tila OK, gin. H{
"viesti": "Tämä päätepiste on suojattu IP-osoitteiden lisäämisellä!",
})
})

reititin. Juosta(":3333")
}

Kun sovellus ajetaan kanssa mene juoksemaan main.go, palvelin käynnistyy portista 3333, ja voit suorittaa testipyyntöjä palvelimelle /adminZone päätepisteen, jotta näet, kuinka väliohjelmisto toimii. Voit myös vaihtaa localhost IP: n arvon sallittujen luettelossa välillä totta ja väärä.

Tässä on esimerkkipyyntö näyttää, kun IP-osoite ei ole sallittujen luettelossa tai kun sen arvo sallittujen luettelossa on asetettu väärä:

Tässä on toinen pyyntö siitä, milloin IP-osoite on sallittujen IP-osoitteiden luettelossa sen arvona totta:

Saatat saada 403-virhevastauksen (kielletty), jos testaat ohjelmaa lisäämällä yleisen localhost IP-osoitteen (127.0.0.1) sallittujen luetteloon. IP-osoite, joka todennäköisesti toimii paikallisesti ::1 joka vastaa IPv6:ta 127.0.0.1:tä (Ipv4). Kokeile lisäämistä sallittujen luetteloon ::1 jos 127.0.0.1 kieltäytyy toimimasta, ja voit myös yrittää kirjautua sisään userIP muuttuja konsolissa nähdäksesi tarkan käytetyn osoitteen.

Verkkosovellusten suojaaminen IP-valittujen luetteloiden avulla

Nykymaailmassa verkkosovellusten ja -järjestelmien turvallisuus on äärimmäisen tärkeää tekniikan kehittyessä. IP-osoitteiden lisääminen sallittujen luetteloon on erittäin yksinkertainen ja tehokas tapa rajoittaa pääsy Internetin resursseihin vain luotettaviin lähteisiin.

Tähän mennessä tässä artikkelissa on käsitelty yksityiskohtaisesti IP-osoitteiden lisäämisen käsitettä, milloin se tulee ottaa käyttöön ja miten se toteutetaan Gossa Gin-kehyksen avulla. On suositeltavaa ottaa IP-osallistuminen käyttöön vain tarvittaessa, jotta vältytään tarpeettomilta teknisiltä kustannuksilta.