Bagaimana cara mengakses kedua subnet (dual NIC) di server Ubuntu dari subnet ketiga?


1

Ini adalah jaringan rumah saya yang sedang saya pelajari.

Silakan lihat detail relevan VLAN dan aturan firewall zona terkait di bagian bawah posting sebagai panjangnya

Saya telah berhasil menetapkan 2 NIC (Manajemen / DMZ) untuk masing-masing dari 6 server windows berhasil dan menggunakan laptop Windows saya di LAN untuk mengakses hal-hal di belakang manajemen untuk RDP / akses Web untuk switch / router dll. Saya dapat melakukan ping ke setiap server dari Windows saya Mesin LAN ke DMZ dan IP Manajemen mereka dan dapatkan pengembalian.

Jadi saya telah menambahkan server Ubuntu 16 LTS beberapa hari yang lalu dengan konfigurasi yang sama tetapi tidak dapat melakukan ping kedua IP dari laptop Windows.

Ini file / etc / network / interfaces saya

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
        address 192.168.67.100
        netmask 255.255.255.0
#       network 192.168.67.0
#       broadcast 192.168.67.255
        gateway 192.168.67.253
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 192.168.67.253
        dns-search on.fake.network

# Management network interface
auto eth1
iface eth1 inet static
        address 192.168.7.100
        netmask 255.255.255.0
#       network 192.168.7.0
        broadcast 192.168.7.255

#persistent static routes
up route add -net 192.168.1.0/24 gw 192.168.7.253 dev eth1

Tabel rute IP saya

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.67.253  0.0.0.0         UG    0      0        0 eth0
192.168.1.0     192.168.7.253   255.255.255.0   UG    0      0        0 eth1
192.168.7.0     0.0.0.0         255.255.255.0   U     0      0        0 eth1
192.168.67.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0

Jadi dengan konfigurasi ini saya bisa melakukan ping 192.168.7.100 tetapi tidak 192.168.67.100 saya mengambil rute statis persisten dan kebalikannya: /

Bagaimana saya bisa menang, ini cukup mudah di Windows, tetapi saya bingung di Ubuntu

* DETIL TAMBAHAN *

Router Ubiqiti ERL3 menciptakan VLANS

VLAN 7 - Management (192.168.7.0) - Router interface (GW) IP is 192.168.7.253
VLAN 13 - LAN (192.168.1.0) - Router interface (GW) IP is 192.168.1.253
VLAN 67 - DMZ (192.168.67.0) - Router interface (GW) IP is 192.168.67.253

Laptop Windows pada koneksi LAN

VLAN 13 - LAN (192.168.1.15)

Server Ubuntu (Melalui host Hyper-V) memiliki 2 NIC

eth0 - VLAN 67 - DMZ (192.168.67.100)
eth1 - VLAN 7 - Management (192.168.7.100)

Ping diinisiasi dari LAN 192.168.1.15 ke DMZ / MGMT 192.168.67.100/192.168.7.100

Berikut adalah aturan firewall terkondensasi saya yang relevan dengan skenario ini, menghapus tambahan seperti akses SSH / HTTP dll.

Memperhatikan "address-group mgmtfromlan" berisi beberapa IP dari LAN termasuk 192.168.1.15 (Laptop di LAN VLAN)

name lan-dmz {
    default-action drop
    enable-default-log
    rule 1 {
        action accept
        state {
            established enable
            related enable
        }
    }
    rule 2 {
        action drop
        log enable
        state {
            invalid enable
        }
    }
    rule 100 {
        action accept
        description "Allow ICMP"
        log enable
        protocol icmp
    }
}
name lan-mgmt {
    default-action drop
    enable-default-log
    rule 1 {
        action accept
        state {
            established enable
            related enable
        }
    }
    rule 2 {
        action drop
        log enable
        state {
            invalid enable
        }
    }
    rule 100 {
        action accept
        description "Allow ICMP"
        log enable
        protocol icmp
        source {
            group {
                address-group mgmtfromlan
            }
        }
    }
}
name dmz-lan {
    default-action drop
    enable-default-log
    rule 1 {
        action accept
        state {
            established enable
            related enable
        }
    }
    rule 2 {
        action drop
        log enable
        state {
            invalid enable
        }
    }
}
name mgmt-lan {
    default-action drop
    enable-default-log
    rule 1 {
        action accept
        state {
            established enable
            related enable
        }
    }
    rule 2 {
        action drop
        log enable
        state {
            invalid enable
        }
    }
    rule 100 {
        action accept
        description "Allow ICMP"
        log enable
        protocol icmp
    }
}

* ROUTING TABLE ON WINDOWS LAPTOP 192.168.1.15 *

===========================================================================
Interface List
 15...b8 ca 3a d4 bb bc ......Intel(R) 82579LM Gigabit Network Connection #2
  5...3c a9 f4 03 73 ed ......Microsoft Wi-Fi Direct Virtual Adapter #2
 19...00 ff d4 0e 47 e9 ......TAP-Windows Adapter V9
  7...3c a9 f4 03 73 ec ......Intel(R) Centrino(R) Ultimate-N 6300 AGN #2
  1...........................Software Loopback Interface 1
 12...00 00 00 00 00 00 00 e0 Microsoft Teredo Tunneling Adapter
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0    192.168.1.253     192.168.1.15    291
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    331
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    331
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    331
      192.168.1.0    255.255.255.0         On-link      192.168.1.15    291
     192.168.1.15  255.255.255.255         On-link      192.168.1.15    291
    192.168.1.255  255.255.255.255         On-link      192.168.1.15    291
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    331
        224.0.0.0        240.0.0.0         On-link      192.168.1.15    291
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    331
  255.255.255.255  255.255.255.255         On-link      192.168.1.15    291
===========================================================================
Persistent Routes:
  Network Address          Netmask  Gateway Address  Metric
          0.0.0.0          0.0.0.0    192.168.1.253  Default
          0.0.0.0          0.0.0.0    192.168.1.253  Default
===========================================================================

IPv6 Route Table
===========================================================================
Active Routes:
 If Metric Network Destination      Gateway
  1    331 ::1/128                  On-link
  1    331 ff00::/8                 On-link
===========================================================================
Persistent Routes:
  None

Terima kasih sebelumnya


1
Tidak cukup informasi. Anda memberikan pengaturan Anda, itu tidak berfungsi, sehingga mereka tidak dapat dianggap andal untuk mengetahui topologi Anda. Anda harus memiliki deskripsi eksplisit dari semua topologi Anda, untuk misalnya dengan ascii art, termasuk ketika relevan kedua ips dari setiap node yang terlibat. Contoh hasil ping -v, hasil arp -an (apa yang melakukan ping?) ... Bisa jadi misalnya perutean asimetris dengan masalah penyaringan jalur balik atau apa pun
AB

Saya telah memperluas posting asli dengan lebih banyak info yang saya harap. Termasuk lebih banyak informasi tentang firewall pada Ubiquiti yang relevan dengan pertanyaan ini dan mengklarifikasi semuanya sebanyak mungkin. Terima kasih
Guy Incognito

Apa tabel routing dari 192.168.1.15? Apakah 192.168.67.253 dan 192.168.7.253 router yang sama yaitu ERL3 dan juga memiliki misalnya ip 192.168.1.253? atau ada router lain yang tidak terlihat? Sebuah gambar akan sangat membantu, karena kalau tidak saya harus mengubah konfigurasi mental Anda (dari router saya tidak tahu) menjadi gambar ini. Saya tidak berpikir Anda memiliki masalah firewall karena Anda dapat membuat keduanya berfungsi secara terpisah. Saya pikir ini terkait dengan perutean asimetris. ping / ping balasan yang diterima pada satu antarmuka saat diharapkan pada antarmuka lainnya atau sama Tetapi ini bisa terjadi pada router atau pada kotak ubuntu.
AB

Jika Anda melakukan beberapa tangkapan seperti tcpdump (pada router, satu-satunya yang dapat melihat semuanya) yang akan sangat membantu. Idealnya beberapa apture, satu per antarmuka, mengetahui apakah itu "dalam" atau "keluar".
AB

Menambahkan tabel routing ke bagian bawah posting asli. Semua gateway yaitu .67.253, 7.253 dan 1.253 berasal dari router yang sama Ubiquiti ERL3. Saya juga tidak mencurigai firewall, mencurigai kurangnya pengalaman saya dengan Ubuntu / Linux dalam hal ini. Saya pikir langkah selanjutnya adalah mencari tahu detail log dari router. Semua aturan firewall menerima / menolak / menjatuhkan dll dicatat saat ini. Terima kasih
Guy Incognito

Jawaban:


0

Dengan set rute default, VM ubuntu menerima paket pada eth1 (dari 192.168.1.15: ping 192.168.7.100). Ini akan:

  • jatuhkan paket karena penyaringan jalur balik: paket diterima pada antarmuka di mana tidak ada rute ke sumber paket ini.
  • jawab melalui eth0 karena 192.168.1.15 cocok dengan rute default via 192.168.1.253 pada eth0

Perilaku tergantung pada /proc/sys/net/ipv4/conf/{all,eth1}/rp_filternilai, tetapi drop adalah default: all / rp_filter = 1 dan eth1 / rp_filter = 1

Dalam kasus di mana itu tidak dijatuhkan: router ERL3 melihat paket balasan dari 192.168.1.7.100 yang seharusnya dalam lan-mgmt, tetapi transit dari lan-dmz. Tergantung pada pengaturan yang mungkin dijelaskan dalam konfigurasi router Anda yang Anda tulis, tetapi saya tidak tahu:

  • akan menjatuhkannya, kurang lebih karena alasan yang sama ubuntu menjatuhkannya ketika rp_filter diaktifkan: rute untuk itu ada di tempat lain
  • akan menerimanya.

Mari kita pertimbangkan bahwa ERL3 menerimanya. Maka "memperbaiki" sederhana: keamanan yang lebih rendah di ubuntu dengan menonaktifkan pemfilteran jalur balik:

echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter

ref: https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt (rp_filter)

(Cara kerjanya, eth0 tetap terlindungi, tapi itu tidak relevan di sini)

Coba dulu, jika berhasil, masalah terpecahkan. Pertimbangkan untuk mengganti keduanya echo 0dengan echo 2hanya untuk eth1 (mode longgar). Tetapi pertimbangkan itu masih menjadi masalah: routing asimetris dapat menciptakan masalah lain terutama dengan firewall.

Jika router ERL3 juga memfilter (yaitu: di atas tidak berfungsi): ubuntu harus mengetahui keberadaan 192.168.1.0/24 untuk kedua antarmuka dan penggunaan tableserta rulepengaturan untuk perutean yang benar. Itu agak sulit untuk menjelaskan semua alasan selain bagaimana, inilah rujukan, yang tidak tepat untuk kasus ini tetapi sebagian besar didasarkan pada (yang saya lakukan di sini):

ref: http://lartc.org/howto/lartc.rpdb.multiple-links.html

Saya memilih tabel acak 7 dan 67 untuk mencocokkan 192.168.7.0/24 dan 192.168.67.0/24. Mulai dari rute kosong (di sebelah rute lan lokal dibuat secara otomatis) dan:

ip route add 192.168.67.0/24 dev eth0 src 192.168.67.100 table 67
ip route add default via 192.168.67.253 table 67
ip route add 192.168.7.0/24 dev eth1 src 192.168.7.100 table 7
ip route add 192.168.1.0/24 via 192.168.7.253 table 7 #enable only LAN to have a route to access MGMT. Feel free to replace 192.168.1.0/24 with default, you have a firewall too.

Saya tidak tahu apakah ini benar-benar diperlukan, tapi itu ada dalam dokumentasi jadi ...:

ip route add 192.168.7.0/24 dev eth1 src 192.168.7.100
ip route add 192.168.67.0/24 dev eth0 src 192.168.67.100

Rute default Anda tetap sama, di sini lagi di ip routesintaks:

ip route add default via 192.168.67.253

Dan bagian yang sangat penting yang memberitahu untuk menggunakan antarmuka yang tepat:

ip rule add from 192.168.67.100 table 67
ip rule add from 192.168.7.100 table 7

Catatan akhir: pastikan ubuntu tidak merutekan, jika tidak, host DMZ yang dikompromikan mungkin berupaya mengelola yang lain melalui ubuntu:

echo 0 > /proc/sys/net/ipv4/conf/default/forwarding
echo 0 > /proc/sys/net/ipv4/conf/all/forwarding

memperbaiki rute default utama (67 bukan 7)
AB

Terima kasih atas informasi yang sangat terperinci. Saya akan mencoba kedua jawaban segera saya harap, tapi cara kerjanya sangat menarik :)
Guy Incognito

Terima kasih AB ini bekerja dengan baik! Bagian pertama tidak bekerja dengan sendirinya bagian gema 0, lalu lintas masih tidak mengalir. Melakukan bagian selanjutnya dengan add ip route langsung bekerja. Setelah saya menyelesaikan tes dari kedua jawaban saya menyadari mereka sangat mirip / sama dengan tautan thomas-krenn yang saya coba pertama kali untuk alasan apa pun. Hargai bantuan Anda kemarin untuk mempersempit masalah saya dan merespons dengan jawaban yang benar terlebih dahulu. Dihargai!
Guy Incognito

0

Rute statis Anda menimpa gateway default.

Ketika rute ada semua lalu lintas ke 192.168.1.x pergi melalui eth1 menggunakan 192.168.7.253 sebagai gateway.

Ketika rute tidak ada semua lalu lintas ke 192.168.1.x pergi melalui eth0 menggunakan 192.168.67.253 sebagai gateway.

Path dari pc Anda ke server ok, tetapi path kembali mengambil rute yang berbeda, tergantung pada antarmuka yang Anda ping. Ini disebut perutean asimetris dan biasanya tidak diizinkan oleh perangkat keamanan. Mungkin diblokir di firewall Anda. Intinya, lalu lintas kembali yang datang melalui rute yang berbeda adalah "tidak terkait" dan lalu lintas tidak dikenal, sehingga dibatalkan.

Saya pikir cara termudah untuk menyelesaikan masalah ini adalah untuk memastikan lalu lintas mengambil rute yang benar tergantung pada antarmuka mana yang menerima data. Itu bisa dilakukan dengan mengatur gateway default di kedua antarmuka.

Sayangnya ini tidak semudah kedengarannya. Anda harus membuat tabel routing alternatif dan aturan routing.

Lihat apakah penulisan ini akan membantu: https://www.thomas-krenn.com/en/wiki/Two_Default_Gateways_on_One_System

https://askubuntu.com/questions/310355/networking-with-multiple-nics


Terima kasih atas tautan dan informasinya. Saya menghabiskan banyak waktu sebelum mengajukan pertanyaan di sini hanya untuk menemukan tautan thomas-krenn melalui google selama percakapan dengan AB Cara yang sangat menarik dan akan menjawab setelah saya mendapatkan kesempatan untuk menguji kedua metode yang disediakan dalam kedua jawaban.
Guy Incognito

Tidak memerlukan waktu sama sekali untuk mengedit konfigurasi sesuai informasi dari thomas-krenn. IT berfungsi, saya sekarang dapat melakukan ping kedua antarmuka pada Server Ubuntu dan harus dapat bermain dengan port yang berbeda ke antarmuka yang berbeda. Firewall saya memblokir aturan secara default yang tidak dibuat atau terkait, jadi jika ping masuk pada satu antarmuka dan keluar yang lain ini harus diblokir oleh firewall ubiquiti saya / berfungsi seperti yang dirancang.
Guy Incognito
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.