diff --git a/build_debian.sh b/build_debian.sh index 346bf969af9b..fb37ce2042e5 100755 --- a/build_debian.sh +++ b/build_debian.sh @@ -483,7 +483,7 @@ fi sudo cp -f files/image_config/ebtables/ebtables.default $FILESYSTEM_ROOT/etc/default/ebtables sudo cp -f files/image_config/ebtables/ebtables.init $FILESYSTEM_ROOT/etc/init.d/ebtables sudo cp -f files/image_config/ebtables/ebtables.service $FILESYSTEM_ROOT/lib/systemd/system/ebtables.service -sudo cp files/image_config/ebtables/ebtables.filter ${FILESYSTEM_ROOT}/etc +sudo cp files/image_config/ebtables/ebtables.filter.cfg ${FILESYSTEM_ROOT}/etc sudo LANG=C chroot $FILESYSTEM_ROOT update-alternatives --set ebtables /usr/sbin/ebtables-legacy sudo LANG=C chroot $FILESYSTEM_ROOT systemctl enable ebtables.service diff --git a/files/image_config/ebtables/ebtables.filter b/files/image_config/ebtables/ebtables.filter deleted file mode 100644 index dfe55672769d..000000000000 Binary files a/files/image_config/ebtables/ebtables.filter and /dev/null differ diff --git a/files/image_config/ebtables/ebtables.filter.cfg b/files/image_config/ebtables/ebtables.filter.cfg new file mode 100644 index 000000000000..7a2dc5c8b6ec --- /dev/null +++ b/files/image_config/ebtables/ebtables.filter.cfg @@ -0,0 +1,11 @@ +# SONiC ebtables filter table configuration +# Generated using ebtables-save + +*filter +:INPUT ACCEPT +:FORWARD ACCEPT +:OUTPUT ACCEPT +-A FORWARD -d BGA -j DROP +-A FORWARD -p ARP -j DROP +-A FORWARD -p 802_1Q --vlan-encap ARP -j DROP + diff --git a/files/image_config/platform/rc.local b/files/image_config/platform/rc.local index bf4e0b631cd9..a58d6197558f 100755 --- a/files/image_config/platform/rc.local +++ b/files/image_config/platform/rc.local @@ -123,6 +123,13 @@ program_console_speed() systemctl daemon-reload } +ebtables_config() +{ + # Generate atomic config file and save it persistent + /usr/sbin/ebtables-restore < /etc/ebtables.filter.cfg + /usr/sbin/ebtables -t filter --atomic-file /etc/ebtables.filter --atomic-save +} + #### Begin Main Body #### logger "SONiC version ${SONIC_VERSION} starting up..." @@ -341,6 +348,9 @@ if [ -f $FIRST_BOOT_FILE ]; then # Create dir where following scripts put their output files mkdir -p /var/platform + # Firsttime ebtables configuration + ebtables_config + firsttime_exit fi