Python脚本同步AD域控账号密码 - 简化域管理
以下是一个示例脚本,用于将AD域控中的账号和密码同步到另一个域控中:
import ldap
# 配置源域控服务器连接参数
src_server = 'ldap://src_domain_controller'
src_base_dn = 'DC=src_domain,DC=com'
src_user = 'src_admin_username'
src_password = 'src_admin_password'
# 配置目标域控服务器连接参数
dst_server = 'ldap://dst_domain_controller'
dst_base_dn = 'DC=dst_domain,DC=com'
dst_user = 'dst_admin_username'
dst_password = 'dst_admin_password'
# 连接源域控服务器
src_conn = ldap.initialize(src_server)
src_conn.simple_bind_s(src_user, src_password)
# 连接目标域控服务器
dst_conn = ldap.initialize(dst_server)
dst_conn.simple_bind_s(dst_user, dst_password)
# 查询源域控服务器上的所有账号
search_filter = '(objectClass=user)'
src_result_id = src_conn.search(src_base_dn, ldap.SCOPE_SUBTREE, search_filter, None)
while True:
# 获取源域控服务器上的账号信息
result_type, result_data = src_conn.result(src_result_id, 0)
if not result_data:
break
# 遍历账号信息并同步到目标域控服务器
for dn, entry in result_data:
# 获取账号的属性信息
attrs = entry.items()
# 将账号同步到目标域控服务器
dst_conn.add_s(dn.replace(src_base_dn, dst_base_dn), attrs)
# 关闭连接
src_conn.unbind_s()
dst_conn.unbind_s()
print('同步完成!')
使用说明:
- 将脚本中的源域控服务器连接参数和目标域控服务器连接参数替换为实际的参数。
- 运行脚本,脚本将在源域控服务器上查询所有账号,并将账号同步到目标域控服务器上。
- 同步完成后,脚本将输出“同步完成!”。
注意事项:
- 请确保在运行脚本之前已经在目标域控服务器上创建好了相应的OU和组织结构。
- 请确保脚本运行的用户具有足够的权限来操作源域控服务器和目标域控服务器。
原文地址: https://www.cveoy.top/t/topic/ogux 著作权归作者所有。请勿转载和采集!