Mengonfigurasi firewall untuk Microsoft AD Terkelola

Pengontrol domain yang dioperasikan oleh Layanan Terkelola untuk Microsoft Active Directory menampilkan sejumlah layanan, termasuk LDAP, DNS, Kerberos, dan RPC. Bergantung pada kasus penggunaan Anda, Virtual Machine (VM) yang di-deploy di Google Cloud, serta mesin yang berjalan secara lokal, mungkin memerlukan akses ke layanan ini untuk memanfaatkan Active Directory.

Untuk mengurangi permukaan serangan pengontrol domain dan VM, Anda harus menggunakan firewall untuk melarang komunikasi jaringan apa pun yang tidak terlalu dibutuhkan. Artikel ini menjelaskan cara mengonfigurasi firewall untuk mengakomodasi kasus penggunaan Active Directory umum sekaligus melarang komunikasi jaringan lainnya.

Login versus autentikasi

Meskipun istilah login dan autentikasi sering digunakan secara bergantian, keduanya memiliki arti yang berbeda dalam konteks keamanan Windows. Login menjelaskan proses yang terjadi di sistem yang diakses pengguna. Sebaliknya, autentikasi dilakukan oleh komputer tempat akun pengguna berada.

Saat Anda menggunakan akun lokal untuk login ke komputer, login dan autentikasi ditangani oleh komputer target. Di lingkungan Active Directory, pengguna domain lebih sering digunakan untuk login. Dalam hal tersebut, login ditangani oleh mesin target, sedangkan autentikasi dilakukan oleh pengontrol domain.

Untuk melakukan autentikasi, klien dapat menggunakan Kerberos atau NTLM . Setelah klien melakukan autentikasi, mesin target perlu memproses login. Bergantung pada jenis login yang diminta klien, hal ini mungkin memerlukan interaksi tambahan dengan pengontrol domain menggunakan protokol seperti Kerberos, NTLM, LDAP , RPC , atau SMB .

Karena autentikasi dan pemrosesan login memerlukan protokol yang berbeda, sebaiknya bedakan kedua konsep tersebut saat mengidentifikasi konfigurasi firewall yang tepat.

Kasus penggunaan umum

Bagian berikut menjelaskan kasus penggunaan umum untuk mengakses Managed Microsoft AD dan menunjukkan aturan firewall yang perlu Anda konfigurasikan untuk setiap kasus penggunaan.

Jika tidak berencana mengintegrasikan Managed Microsoft AD dengan Active Directory on-premise, Anda hanya perlu membaca bagian pertama artikel ini, Mengakses Managed Microsoft AD dari dalam VPC. Jika Anda ingin membuat hubungan kepercayaan antara Microsoft AD Terkelola dan Active Directory lokal, seluruh artikel ini berlaku.

Anda dapat menggunakan log aturan firewall untuk menganalisis apakah port tambahan mungkin diperlukan. Karena logging di aturan implied deny ingress dinonaktifkan, Anda harus membuat aturan firewall kustom dengan prioritas rendah terlebih dahulu yang menolak semua traffic masuk, tetapi mengaktifkan logging firewall. Dengan aturan ini, setiap upaya koneksi yang gagal akan menyebabkan entri log dipublikasikan ke Stackdriver. Karena aturan firewall dapat menghasilkan log dalam jumlah yang signifikan, sebaiknya nonaktifkan logging firewall lagi setelah Anda menyelesaikan analisis.

Mengakses Microsoft AD Terkelola dari dalam VPC

Saat Anda menggunakan jaringan default untuk men-deploy AD Microsoft Terkelola, tidak diperlukan konfigurasi lebih lanjut untuk mengaktifkan VM di VPC agar dapat mengakses Active Directory.

Jika telah menyesuaikan konfigurasi VPC atau aturan firewall, Anda harus memastikan konfigurasi firewall masih mengizinkan komunikasi dengan Managed Microsoft AD. Bagian berikut menjelaskan aturan firewall yang mungkin perlu Anda buat.

Resolusi nama domain

Saat mencoba me-resolve nama DNS, VM tidak langsung mengkueri pengontrol domain. Sebagai gantinya, kueri DNS dikirim ke server metadata, yang merupakan server DNS default yang dikonfigurasi untuk VM Compute Engine. Server metadata kemudian meneruskan kueri ke zona penerusan DNS pribadi Cloud DNS yang dibuat oleh Managed Microsoft AD. Zona penerusan ini kemudian meneruskan kueri ke pengontrol domain yang sesuai.

Anda tidak perlu mengonfigurasi aturan firewall apa pun untuk mengaktifkan kasus penggunaan ini. Komunikasi ke Cloud DNS selalu diizinkan untuk VM di VPC dan Managed Microsoft AD mengizinkan permintaan DNS yang diteruskan dari Cloud DNS Cloud DNS secara default.

Mengautentikasi ke VM menggunakan Kerberos

Pengguna yang telah login ke satu VM mungkin memerlukan akses ke layanan yang disediakan oleh VM lain. Misalnya, pengguna mungkin mencoba membuka koneksi RDP, mengakses berbagi file, atau mengakses resource HTTP yang memerlukan autentikasi.

Agar pengguna dapat melakukan autentikasi ke VM server menggunakan Kerberos, VM klien harus mendapatkan tiket Kerberos yang sesuai dari salah satu pengontrol Microsoft AD Terkelola terlebih dahulu.

Agar VM dapat mengautentikasi ke VM lain menggunakan Kerberos, komunikasi berikut harus diizinkan oleh aturan firewall:

Tindakan Dari Ke Protokol
1 Izinkan VM Klien Subnet Microsoft AD Terkelola Kerberos (UDP/88, TCP/88)
LDAP (UDP/389, TCP/389)
2 Izinkan VM Klien VM Server Protokol yang digunakan untuk mengakses VM, seperti HTTP (TCP/80, TCP/443) atau RDP (TCP/3389)
3 Izinkan VM Server Subnet Microsoft AD Terkelola Lihat memproses login.

Mengautentikasi ke VM menggunakan NTLM

Meskipun Windows lebih memilih Kerberos daripada NTLM dalam sebagian besar kasus, klien terkadang mungkin perlu kembali menggunakan NTLM untuk autentikasi. NTLM mengandalkan autentikasi pass-through, sehingga mengharuskan server berkomunikasi dengan salah satu pengontrol domain Microsoft AD Terkelola untuk mengautentikasi pengguna.

Agar VM dapat mengautentikasi VM lain menggunakan NTLM, komunikasi berikut harus diizinkan oleh aturan firewall:

Tindakan Dari Ke Protokol
1 Izinkan VM Klien VM Server Protokol yang digunakan untuk mengakses VM, seperti HTTP (TCP/80, TCP/443) atau RDP (TCP/3389)
2 Izinkan VM Klien Subnet Microsoft AD Terkelola Lihat memproses login.

Penggabungan domain dan pemrosesan login

Untuk beroperasi sebagai anggota domain dan memproses login dari pengguna, mesin harus dapat berinteraksi dengan Active Directory. Kumpulan protokol yang digunakan bergantung pada jenis login yang diminta oleh setiap klien. Untuk mendukung semua skenario umum, Anda harus mengizinkan kombinasi protokol berikut.

Tindakan Dari Ke Protokol
1 Izinkan VM Server Subnet Microsoft AD Terkelola Kerberos (UDP/88, TCP/88)
NTP (UDP/123)
RPC (TCP/135, TCP/49152-65535)
LDAP (UDP/389, TCP/389)
SMB (UDP/445, TCP/445)
LDAP GC (TCP/3268)

Selain itu, bergantung pada kasus penggunaan yang tepat, Anda mungkin juga ingin mengizinkan protokol berikut:

Tindakan Dari Ke Protokol
1 Izinkan VM Server Subnet Microsoft AD Terkelola Perubahan sandi Kerberos (UDP/464, TCP/464)
LDAP Aman (TCP/636, TCP/3269)

Mengelola Microsoft AD Terkelola

Anda harus menggunakan VM yang tergabung ke domain untuk mengelola Microsoft AD Terkelola. Untuk menggunakan alat seperti Active Directory Administrative Center di VM ini, VM juga harus dapat mengakses Active Directory Web Services yang ditampilkan oleh pengontrol domain Microsoft AD Terkelola.

Tindakan Dari Ke Protokol
1 Izinkan VM Admin Subnet Microsoft AD Terkelola Layanan Web AD (TCP/9389)

Menghubungkan Microsoft AD Terkelola ke Active Directory lokal

Untuk menghubungkan Microsoft AD Terkelola ke Active Directory lokal, Anda harus membuat hubungan kepercayaan antar-forest. Selain itu, Anda harus mengaktifkan resolusi nama DNS antara Google Cloud dan lingkungan lokal Anda.

Pembuatan dan verifikasi kepercayaan

Untuk membuat dan memverifikasi kepercayaan forest, pengontrol domain AD Terkelola dan pengontrol domain root dari forest lokal Anda harus dapat berkomunikasi secara dua arah.

Untuk mengaktifkan pembuatan dan verifikasi kepercayaan, konfigurasikan firewall lokal Anda untuk mengizinkan traffic masuk dan keluar yang cocok dengan karakteristik berikut:

Tindakan Dari Ke Protokol
1 Izinkan AD lokal Microsoft AD Terkelola DNS (UDP/53, TCP/53)
Kerberos (UDP/88, TCP/88)
Perubahan sandi Kerberos (UDP/464, TCP/464)
RPC (TCP/135, TCP/49152-65535)
LDAP (UDP/389, TCP/389)
SMB (UDP/445, TCP/445)
2 Izinkan Microsoft AD Terkelola AD lokal DNS (UDP/53, TCP/53)
Kerberos (UDP/88, TCP/88)
Perubahan sandi Kerberos (UDP/464, TCP/464)
RPC (TCP/135, TCP/49152-65535)
LDAP (UDP/389, TCP/389)
SMB (UDP/445, TCP/445)

Managed Microsoft AD telah dikonfigurasi sebelumnya untuk mengizinkan traffic yang cocok dengan karakteristik ini, sehingga Anda tidak perlu mengonfigurasi aturan firewall tambahan di Google Cloud.

Me-resolve nama Google Cloud DNS dari infrastruktur lokal

Ada dua cara untuk mengizinkan mesin lokal me-resolve nama DNS di Managed Microsoft AD: delegasi DNS dan penerusan DNS bersyarat.

Delegasi DNS

Domain DNS yang digunakan oleh Microsoft AD Terkelola mungkin merupakan subdomain dari domain DNS yang digunakan di infrastruktur lokal. Misalnya, Anda dapat menggunakan cloud.example.com untuk AD Microsoft yang Terkelola saat menggunakan example.com di lokal. Untuk mengizinkan klien lokal me-resolve nama DNS resource Google Cloud, Anda dapat menyiapkan delegasi DNS.

Saat menggunakan delegasi DNS, upaya untuk me-resolve nama DNS resource Google Cloud terlebih dahulu mengkueri server DNS lokal. Server DNS kemudian mengalihkan klien ke Cloud DNS, yang kemudian meneruskan permintaan ke salah satu pengontrol domain Managed Microsoft AD Anda.

Mengekspos Cloud DNS ke jaringan lokal memerlukan pembuatan dan kebijakan server masuk. Tindakan ini akan membuat alamat IP penerusan masuk yang merupakan bagian dari VPC Anda.

Untuk menggunakan alamat penerusan dari lokal, konfigurasikan firewall lokal Anda untuk mengizinkan traffic keluar yang cocok dengan karakteristik di bawah.

Tindakan Dari Ke Protokol
1 Izinkan AD lokal Microsoft AD Terkelola DNS (UDP/53, TCP/53)
Kerberos (UDP/88, TCP/88)
Perubahan sandi Kerberos (UDP/464, TCP/464)
RPC (TCP/135, TCP/49152-65535)
LDAP (UDP/389, TCP/389)
SMB (UDP/445, TCP/445)
2 Izinkan Microsoft AD Terkelola AD lokal DNS (UDP/53, TCP/53)
Kerberos (UDP/88, TCP/88)
Perubahan sandi Kerberos (UDP/464, TCP/464)
RPC (TCP/135, TCP/49152-65535)
LDAP (UDP/389, TCP/389)
SMB (UDP/445, TCP/445)

Penerusan DNS kondisional

Domain DNS yang digunakan oleh Microsoft AD Terkelola mungkin bukan subdomain dari domain DNS yang digunakan di lokasi. Misalnya, Anda dapat menggunakancloud.example.com untuk Microsoft AD Terkelola saat menggunakan corp.example.local di lokal.

Dalam skenario saat domain DNS tidak terkait, Anda dapat menyiapkan penerusan DNS bersyarat di DNS Active Directory lokal. Semua kueri yang cocok dengan nama DNS yang digunakan oleh Managed Microsoft AD akan diteruskan ke Cloud DNS.

Untuk menggunakan penerusan DNS bersyarat, Anda harus menyiapkan kebijakan DNS yang mengaktifkan penerusan DNS masuk terlebih dahulu. Untuk menggunakan alamat penerusan yang dihasilkan dari lokal, konfigurasikan firewall lokal untuk mengizinkan traffic keluar yang cocok dengan karakteristik di bawah.

Tindakan Dari Ke Protokol
1 Izinkan AD lokal Alamat IP penerusan DNS DNS (UDP/53, TCP/53)

Di sisi Google Cloud, buat aturan firewall untuk mengizinkan traffic masuk yang cocok dengan kriteria ini.

Anda tidak perlu mengonfigurasi aturan firewall apa pun untuk mengaktifkan komunikasi dari Penerus DNS ke Cloud DNS (2).

Me-resolve nama DNS lokal dari Google Cloud

Managed Microsoft AD menggunakan penerusan DNS kondisional untuk me-resolve nama DNS di forest lokal Anda. Untuk mengizinkan klien yang berjalan di Google Cloud juga me-resolve nama DNS yang dikelola oleh Active Directory lokal, Anda dapat membuat zona penerusan pribadi di Cloud DNS yang meneruskan kueri ke pengontrol domain lokal.

Untuk mengaktifkan resolusi nama DNS lokal dari Google Cloud, konfigurasikan firewall lokal untuk mengizinkan traffic masuk sesuai tabel berikut.

Tindakan Dari Ke Protokol
1 Izinkan Microsoft AD Terkelola AD lokal DNS (UDP/53, TCP/53)
2 Izinkan Cloud DNS (35.199.192.0/19) AD lokal DNS (UDP/53, TCP/53)

Google Cloud mengizinkan traffic keluar yang sesuai secara default.

Mengakses resource Managed Microsoft AD dari lokal

Jika forest Microsoft AD Terkelola disiapkan untuk memercayai forest lokal, Anda mungkin ingin pengguna dan komputer lokal dapat mengakses resource di forest Microsoft AD Terkelola.

Melakukan autentikasi ke VM dari lokal menggunakan Kerberos

Pengguna yang telah login ke mesin lokal mungkin memerlukan akses ke layanan yang disediakan oleh VM yang berjalan di Google Cloud dan merupakan anggota forest Managed Microsoft AD. Misalnya, pengguna mungkin mencoba membuka koneksi RDP, mengakses berbagi file, atau mengakses resource HTTP yang memerlukan autentikasi.

Agar pengguna dapat melakukan autentikasi ke VM server menggunakan Kerberos, mesin klien harus mendapatkan tiket Kerberos yang sesuai. Hal ini memerlukan komunikasi dengan salah satu pengontrol domain lokal, serta dengan salah satu pengontrol domain Managed Microsoft AD.

Agar VM lokal dapat melakukan autentikasi menggunakan Kerberos, konfigurasikan firewall lokal untuk mengizinkan traffic keluar berikut.

Tindakan Dari Ke Protokol
1 Izinkan Mesin klien (di lokal) Subnet Microsoft AD Terkelola LDAP (UDP/389, TCP/389)
Kerberos (UDP/88, TCP/88)
2 Izinkan Mesin klien (di lokal) Server VM (Google Cloud) Protokol yang digunakan oleh aplikasi, seperti HTTP (TCP/80, TCP/443) atau RDP (TCP/3389)
3 Izinkan VM Server Subnet Microsoft AD Terkelola Lihat memproses login.

Di sisi Google Cloud, buat aturan firewall untuk mengizinkan traffic masuk untuk (1) dan (2). Traffic keluar ke Managed Microsoft AD (3) diizinkan secara default.

Mengautentikasi ke VM dari lokal menggunakan NTLM

Saat menggunakan NTLM untuk mengautentikasi pengguna dari forest Active Directory lokal ke VM server yang bergabung ke forest Microsoft AD yang Terkelola, pengontrol domain Microsoft AD yang Terkelola harus berkomunikasi dengan pengontrol domain lokal.

Agar VM lokal dapat melakukan autentikasi menggunakan NTLM, konfigurasikan firewall lokal Anda untuk mengizinkan traffic masuk dan keluar sebagai berikut.

Tindakan Dari Ke Protokol
1 Izinkan Mesin klien (di lokal) Server VM (Google Cloud) Protokol yang digunakan oleh aplikasi, seperti HTTP (TCP/80, TCP/443) atau RDP (TCP/3389)
2 Izinkan VM Server Subnet Microsoft AD Terkelola Lihat memproses login.
3 Izinkan Subnet Microsoft AD Terkelola AD lokal LDAP (UDP/389, TCP/389)
SMB (UDP/445, TCP/445)

Di sisi Google Cloud, buat aturan firewall untuk mengizinkan traffic masuk untuk (1). Traffic keluar untuk (2) dan (3) diizinkan secara default.

Memproses login untuk pengguna hutan lokal

Untuk memproses login bagi pengguna forest lokal, VM harus dapat berinteraksi dengan Active Directory lokal. Kumpulan protokol yang tepat yang digunakan bergantung pada jenis login yang diminta klien. Untuk mendukung semua skenario umum, konfigurasikan firewall on-premise untuk mengizinkan traffic masuk yang cocok dengan karakteristik ini.

Tindakan Dari Ke Protokol
1 Izinkan Server VM (Google Cloud) Subnet AD lokal Kerberos (UDP/88, TCP/88)
NTP (UDP/123)
RPC (TCP/135, TCP/49152-65535)
LDAP (UDP/389, TCP/389)
SMB (UDP/445, TCP/445)
LDAP GC (TCP/3268)

Bergantung pada kasus penggunaan yang tepat, Anda mungkin juga ingin mengizinkan protokol berikut.

  • Perubahan sandi Kerberos (UDP/464, TCP/464)
  • LDAP Aman (TCP/636, TCP/3269)

Di sisi Microsoft AD Terkelola, traffic egress yang sesuai diizinkan secara default.

Di VM administratif, Anda mungkin tidak berencana mengizinkan login dari pengguna forest lokal. Namun, satu aktivitas yang mungkin harus Anda lakukan di VM administratif adalah mengelola keanggotaan grup. Setiap kali Anda menggunakan pemilih objek untuk mereferensikan pengguna atau grup dari hutan lokal, pemilih objek akan memerlukan akses ke pengontrol domain lokal. Agar hal ini berfungsi, VM administratif memerlukan akses yang sama ke pengontrol domain Active Directory lokal Anda seperti yang diperlukan untuk memproses login bagi pengguna forest lokal.

Mengakses resource Active Directory lokal dari Google Cloud

Jika forest lokal Anda disiapkan untuk memercayai forest AD Microsoft Terkelola, Anda mungkin ingin pengguna dari forest AD Microsoft Terkelola dapat mengakses resource lokal.

Mengautentikasi ke VM lokal menggunakan Kerberos

Pengguna yang telah login ke VM yang berjalan di Google Cloud dan merupakan anggota forest Managed Microsoft AD mungkin memerlukan akses ke layanan yang disediakan oleh mesin lokal yang merupakan anggota forest lokal Anda. Misalnya, pengguna mungkin mencoba membuka koneksi RDP, mengakses berbagi file, atau mengakses resource HTTP yang memerlukan autentikasi.

Agar pengguna dapat melakukan autentikasi ke mesin lokal menggunakan Kerberos, VM harus mendapatkan tiket Kerberos yang sesuai. Hal ini mengharuskan Anda berkomunikasi terlebih dahulu dengan salah satu pengontrol Managed Microsoft AD, lalu dengan pengontrol domain lokal.

Agar VM lokal dapat diautentikasi menggunakan Kerberos, konfigurasikan firewall lokal untuk mengizinkan traffic masuk yang cocok dengan karakteristik di bawah.

Tindakan Dari Ke Protokol
1 Izinkan VM Klien (Google Cloud) Subnet Microsoft AD Terkelola Kerberos (UDP/88, TCP/88)
LDAP (UDP/389, TCP/389)
Diisyaratkan oleh pemrosesan login
2 Izinkan VM Klien (Google Cloud) AD lokal Kerberos (UDP/88, TCP/88)
LDAP (UDP/389, TCP/389)
3 Izinkan VM Klien (Google Cloud) Mesin server (lokal) Protokol yang digunakan oleh aplikasi, seperti HTTP (TCP/80, TCP/443) atau RDP (TCP/3389)

Di sisi Google Cloud, traffic keluar yang sesuai diizinkan secara default.

Mengautentikasi ke VM lokal menggunakan NTLM

Saat menggunakan NTLM untuk mengautentikasi pengguna dari forest Microsoft AD Terkelola ke mesin server yang bergabung ke forest lokal, pengontrol domain lokal harus dapat berkomunikasi dengan pengontrol domain Microsoft AD Terkelola:

Agar VM lokal dapat diautentikasi menggunakan Kerberos, konfigurasikan firewall lokal untuk mengizinkan traffic masuk dan keluar yang cocok dengan karakteristik ini.

Tindakan Dari Ke Protokol
1 Izinkan VM Klien (Google Cloud) Mesin server (lokal) Protokol yang digunakan oleh aplikasi, misalnya HTTP (TCP/80, TCP/443) atau RDP (TCP/3389)
2 Izinkan AD lokal Subnet Microsoft AD Terkelola LDAP (UDP/389, TCP/389)
SMB (UDP/445, TCP/445)

Di sisi Google Cloud, traffic keluar untuk (1) dan traffic masuk untuk (2) diizinkan secara default.

Memproses login untuk pengguna forest Microsoft AD Terkelola

Untuk memproses login bagi pengguna forest Microsoft AD Terkelola, komputer yang berjalan di lokal harus dapat berinteraksi dengan pengontrol domain Microsoft AD Terkelola. Kumpulan protokol yang tepat yang digunakan bergantung pada jenis login yang diminta klien. Untuk mendukung semua skenario umum, Anda harus mengizinkan kombinasi protokol berikut.

Tindakan Dari Ke Protokol
1 Izinkan Mesin server (lokal) Subnet Microsoft AD Terkelola Kerberos (UDP/88, TCP/88)
NTP (UDP/123)
RPC (TCP/135, TCP/49152-65535)
LDAP (UDP/389, TCP/389)
SMB (UDP/445, TCP/445)
LDAP GC (TCP/3268)

Bergantung pada kasus penggunaan yang tepat, Anda mungkin juga ingin mengizinkan protokol berikut.

  • Perubahan sandi Kerberos (UDP/464, TCP/464)
  • LDAP Aman (TCP/636, TCP/3269)

Pastikan firewall lokal Anda mengizinkan traffic keluar yang cocok dengan karakteristik ini. Anda tidak perlu mengonfigurasi aturan firewall apa pun di Google Cloud untuk mengaktifkan traffic masuk yang sesuai ke Managed Microsoft AD.

Di komputer administratif, Anda mungkin tidak berencana mengizinkan login dari pengguna hutan Managed Microsoft AD. Salah satu aktivitas yang mungkin harus Anda lakukan di mesin administratif adalah mengelola keanggotaan grup. Setiap kali Anda menggunakan pemilih objek untuk mereferensikan pengguna atau grup dari hutan Managed Microsoft AD, pemilih objek akan memerlukan akses ke pengontrol domain Managed Microsoft AD. Agar berfungsi, komputer administratif memerlukan akses yang sama ke pengontrol domain Managed Microsoft AD seperti yang diperlukan untuk memproses login bagi pengguna forest Managed Microsoft AD.