Serverless-kehitys AWS Lambdalla · Oppitunti

Verkon tietoturvan parhaat käytännöt

Toteutatte vankan verkkotietoturvan Lambda-funktioille VPC:ssä suojausryhmien, verkon ACL:ien ja yksityisten päätepisteiden avulla hyökkäyspinta-alan minimoimiseksi

Oppitunti 3/412 vaihetta

Verkon tietoturvan parhaat käytännöt on ilmainen Serverless-kehitys AWS Lambdalla-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Serverless-kehitys AWS Lambdalla-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Serverless-kehitys AWS Lambdalla-kurssilla on yhteensä 4 oppituntia.

Lambdan suojaaminen VPC:ssä

Kun AWS Lambda -funktiosi toimii Virtual Private Cloudissa (VPC), se saa käyttöönsä yksityisiä resursseja, kuten tietokantoja. Tämä tarkoittaa myös, että sen verkkoviestintä on suojattava.

Verkkoturvallisuus on ratkaisevan tärkeää palvelimettomien sovellustesi luvattoman käytön ja tietomurtojen estämiseksi.

Security Groups selitettynä

Security Groups (SGs) toimivat VPC:n Lambda-funktion verkkoliitäntöjen virtuaalisina palomuureina.

  • Ne hallitsevat saapuvaa ja lähtevää liikennettä instanssin (ENI) tasolla.
  • SG:t ovat tilallisia: jos sallitte lähtevän liikenteen, paluuliikenne sallitaan automaattisesti.
  • Liitätte SG:t suoraan Lambda-funktion ENI-verkkoliitäntöihin, kun funktio on määritetty VPC:hen.

SG-säännöt: vähimpien oikeuksien periaate

Kun määritätte Security Group -sääntöjä, noudattakaa aina vähimpien oikeuksien periaatetta.

  • Saapuvan liikenteen säännöt: Määrittäkää, mikä liikenne sallitaan Lambda-funktioonne (esimerkiksi tietokannasta).
  • Lähtevän liikenteen säännöt: Määrittäkää, mitä liikennettä Lambda-funktionne saa lähettää ulospäin (esimerkiksi S3:een tai tietokantaan).

Avatkaa vain tarvittavat portit ja sallikaa liikenne vain luotetuista lähteistä tai välttämättömiin kohteisiin.

Verkon ACL:t (NACL:t)

Network Access Control Lists (NACLs) tarjoavat ylimääräisen suojauskerroksen VPC:n aliverkkotasolla.

  • NACL:t ovat tilattomia: sekä saapuva että lähtevä paluuliikenne on sallittava erikseen.
  • Ne voivat sisältää sekä sallimis- että estämissääntöjä, jotka käsitellään sääntönumeron mukaisessa järjestyksessä.
  • NACL:t koskevat kaikkia aliverkon resursseja, mukaan lukien Lambdan ENI-verkkoliitännät.

SG:iden ja NACL:ien vertailu

Sekä Security Groupit että NACL:t suodattavat verkkoliikennettä, mutta ne toimivat eri tasoilla:

  • Security Groupit: instanssitaso (ENI), tilallisia, sisältävät vain sallimissääntöjä.
  • NACL:t: aliverkkotaso, tilattomia, sisältävät sallimis- ja estämissääntöjä, jotka käsitellään sääntönumeron mukaan.

Yleensä käytätte SG:itä tiettyjen resurssien tarkkaan hallintaan ja NACL:itä aliverkkojen laajempana ja karkeampana suojauskerroksena.

AWS-palvelujen käyttäminen yksityisesti

Kun Lambda-funktionne on VPC:ssä, sen liikenne julkisiin AWS-palveluihin, kuten S3:een, DynamoDB:hen ja CloudWatchiin, poistuisi normaalisti VPC:stä NAT Gatewayn tai Internet Gatewayn kautta.

Tämä voi aiheuttaa tietoturvariskejä ja lisäkustannuksia. VPC Endpoints mahdollistavat yksityisen ja suojatun yhteyden näihin palveluihin VPC:n sisällä.

Interface Endpoints selitettynä

Interface Endpoints (AWS PrivateLinkin toteuttamina) tarjoavat yksityisen yhteyden palveluihin VPC:hen luodun Elastic Network Interface (ENI) -verkkoliitännän kautta.

  • Niiden avulla Lambda voi käyttää esimerkiksi S3:a, DynamoDB:tä ja CloudWatch Logsia ilman julkisen internetin kautta kulkemista.
  • Liikenne pysyy kokonaan AWS-verkossa, mikä parantaa tietoturvaa ja voi pienentää viivettä.

Päätepisteiden suojaus

VPC Endpoints -päätepisteet voidaan myös suojata:

  • Endpoint Policies: Voitte liittää IAM-resurssikäytäntöjä suoraan päätepisteeseen ja hallita, mitkä päämiehet voivat käyttää sitä ja mitä toimintoja he voivat suorittaa.
  • Security Groups: Interface Endpoints -päätepisteissä voitte liittää Security Groupin päätepisteen ENI-verkkoliitäntöihin. Tämä SG hallitsee päätepisteeseen tulevaa ja siitä lähtevää liikennettä.

Näin varmistetaan, että vain valtuutetut Lambda-funktiot tai resurssit voivat käyttää yksityistä yhteyttä.

Suojatun S3-yhteyden esimerkki

Kuvitellaan, että VPC:ssä oleva Lambda-funktio tarvitsee ladata tiedostoja S3-säilöön.

Voisitte tehdä tämän suojatusti ja yksityisesti seuraavasti:

  • Määrittäkää Lambda-funktio yksityiseen aliverkkoon ja määrittäkää sille tarkat Security Group -säännöt.
  • Määrittäkää S3 Interface Endpoint VPC:hen.
  • Ottakaa S3-päätepisteessä käyttöön Endpoint Policy ja liittäkää sen ENI-verkkoliitäntöihin Security Group.

Näin S3-liikenne ei koskaan poistu AWS:n yksityisestä verkosta.

Lambda-funktion ja S3:n välinen vuorovaikutus

Tämä Python-Lambda-funktio lataa yksinkertaisen tekstitiedoston S3-säilöön. Kun funktio otetaan käyttöön VPC:n sisällä, sen verkkoyhteyttä S3:een hallitsevat VPC:hen määritetyt Security Groupit, Network ACL:t ja VPC:n S3-päätepiste.

import boto3
import os

def lambda_handler(event, context):
    s3_client = boto3.client('s3')
    bucket_name = os.environ.get('BUCKET_NAME', 'your-secure-bucket-name')
    file_content = "Hello from a secure Lambda!"
    file_name = "secure_lambda_output.txt"

    try:
        s3_client.put_object(Bucket=bucket_name, Key=file_name, Body=file_content)
        return {
            'statusCode': 200,
            'body': f'Successfully uploaded {file_name} to {bucket_name}'
        }
    except Exception as e:
        print(f"Error uploading to S3: {e}")
        return {
            'statusCode': 500,
            'body': f'Failed to upload to S3: {str(e)}'
        }

Verkon tietoturvan tarkistus

Mitkä seuraavista VPC:ssä olevien Lambda-funktioiden verkkoturvallisuutta koskevista väitteistä ovat TOSIA?

Kertaus ja parhaat käytännöt

Olette oppineet suojaamaan Lambda-funktioitanne VPC:ssä!

  • Security Groupit tarjoavat tilallisen, instanssitasoisen liikenteenhallinnan.
  • Network ACL:t tarjoavat tilattoman, aliverkkotasoisen suodatuksen.
  • VPC Endpoints mahdollistavat yksityisen yhteyden muihin AWS-palveluihin, kuten S3:een ja DynamoDB:hen.

Noudattakaa aina vähimpien oikeuksien periaatetta hyökkäyspinta-alan pienentämiseksi ja palvelimettomien sovellustenne suojaamiseksi.

Aloita maksutta

Opi Serverless-kehitys AWS Lambdalla tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
12
Oppitunnit
48

Usein kysytyt kysymykset

Onko oppitunti ”Verkon tietoturvan parhaat käytännöt” ilmainen?

Kyllä – oppitunnin ”Verkon tietoturvan parhaat käytännöt” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Serverless-kehitys AWS Lambdalla-kurssin, päivitä CoddyKit PROhon. Serverless-kehitys AWS Lambdalla-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Verkon tietoturvan parhaat käytännöt”?

Toteutatte vankan verkkotietoturvan Lambda-funktioille VPC:ssä suojausryhmien, verkon ACL:ien ja yksityisten päätepisteiden avulla hyökkäyspinta-alan minimoimiseksi Harjoittelet Serverless-kehitys AWS Lambdalla-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Serverless-kehitys AWS Lambdalla-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Serverless-kehitys AWS Lambdalla-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.

Kuinka kauan ”Verkon tietoturvan parhaat käytännöt”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Serverless-kehitys AWS Lambdalla-oppitunnilla?

Kyllä. Jokainen Serverless-kehitys AWS Lambdalla-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Lambda VPC:ssä yksityisiä resursseja varten
  2. Tietokantojen käyttäminen VPC:ssä
  3. Verkon tietoturvan parhaat käytännöt
  4. NAT-yhdyskäytävät ja internet-yhteys VPC:stä
← Takaisin: Serverless-kehitys AWS Lambdalla