Difference between revisions of "Create Custom NAT Instance in AWS VPC"
| Line 75: | Line 75: | ||
== Create Custom Route to Associate the Private Subnet == | == Create Custom Route to Associate the Private Subnet == | ||
| − | ; | + | ; Route |
| − | + | : Destination : 172.31.0.0/16 ; target : local | |
| − | + | : Destination : 0.0.0.0/0 ; target : nat instance | |
| − | + | ; Subnet association | |
| − | + | : 172.31.2.0/24 | |
| − | |||
In AWS VPC Dashboard >> Route Tables >> Create Route Table | In AWS VPC Dashboard >> Route Tables >> Create Route Table | ||
Revision as of 12:50, 14 November 2019
Contents
Purpose
Build a NAT instance using CentOS to propose internet access for private subnet in AWS VPC.
In this tutorial, we assume that we already have a VPC with public and prvate subnet like belo picture.
Preparation
[root@nat-server ~]# yum update
Dissable Source/Dest. Check for the NAT Server
Configure System
In /etc/sysctl.conf enable ip forwarding :
[root@nat-server ~]# vi /etc/sysctl.conf
Add this :
# For NAT Server net.ipv4.ip_forward = 1
Reboot now for good measure :
[root@nat-server ~]# reboot
Test our config :
[centos@nat-server ~]$ cat /proc/sys/net/ipv4/ip_forward 1
Set Iptables for Masquerade
Issue iptables command below :
[centos@nat-server ~]$ iptables -t nat -A POSTROUTING -o eth0 -s 172.31.158.0/24 -j MASQUERADE
Edit the /etc/rc.local file to make masquerade will automatically enable at boot time :
[centos@nat-server ~]$ vi /etc/rc.local
And add this iptables command before "exit 0" :
... iptables -t nat -A POSTROUTING -o eth0 -s 172.31.158.0/24 -j MASQUERADE exit 0 ...
Run 'chmod +x /etc/rc.d/rc.local' to ensure the script will be executed during boot :
[centos@nat-server ~]$ chmod +x /etc/rc.d/rc.local
Modify the NAT Instance Security Group
Create Custom Route to Associate the Private Subnet
- Route
- Destination : 172.31.0.0/16 ; target : local
- Destination : 0.0.0.0/0 ; target : nat instance
- Subnet association
- 172.31.2.0/24
In AWS VPC Dashboard >> Route Tables >> Create Route Table
PICTURE
Name tag : <name the route table> VPC : <choose the VPC>
In Route Table which early created >> Routes >> Edit Route >> Add Route
Destination : 0.0.0.0/0 Target : Instance <choose the nat instance>