OXIESEC PANEL
- Current Dir:
/
/
usr
/
lib
/
python2.7
/
dist-packages
/
samba
/
netcmd
Server IP: 10.0.0.4
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
02/03/2022 06:37:41 AM
rwxr-xr-x
📄
__init__.py
7.89 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
__init__.pyc
8.33 KB
02/03/2022 06:37:40 AM
rw-r--r--
📄
common.py
2.38 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
common.pyc
2.28 KB
02/03/2022 06:37:40 AM
rw-r--r--
📄
dbcheck.py
6.49 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
dbcheck.pyc
5.25 KB
02/03/2022 06:37:40 AM
rw-r--r--
📄
delegation.py
10.88 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
delegation.pyc
9.22 KB
02/03/2022 06:37:40 AM
rw-r--r--
📄
dns.py
43.86 KB
11/02/2017 11:38:36 AM
rw-r--r--
📄
dns.pyc
38.13 KB
02/03/2022 06:37:40 AM
rw-r--r--
📄
domain.py
175.3 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
domain.pyc
108.8 KB
02/03/2022 06:37:40 AM
rw-r--r--
📄
drs.py
24.81 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
drs.pyc
22.57 KB
02/03/2022 06:37:40 AM
rw-r--r--
📄
dsacl.py
7.37 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
dsacl.pyc
6.67 KB
02/03/2022 06:37:40 AM
rw-r--r--
📄
fsmo.py
20.25 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
fsmo.pyc
14.39 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
gpo.py
39.7 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
gpo.pyc
33.57 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
group.py
18.49 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
group.pyc
16.74 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
ldapcmp.py
40.5 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
ldapcmp.pyc
31.22 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
main.py
2.31 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
main.pyc
2.22 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
nettime.py
1.96 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
nettime.pyc
1.81 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
ntacl.py
10.58 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
ntacl.pyc
9.65 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
processes.py
2.78 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
processes.pyc
2.08 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
rodc.py
5.76 KB
09/17/2017 07:15:34 PM
rw-r--r--
📄
rodc.pyc
5.61 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
sites.py
7.53 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
sites.pyc
7.2 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
spn.py
7.44 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
spn.pyc
6.08 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
testparm.py
8.26 KB
07/04/2017 10:05:25 AM
rw-r--r--
📄
testparm.pyc
6.14 KB
02/03/2022 06:37:41 AM
rw-r--r--
📄
user.py
104.51 KB
01/25/2022 03:20:03 PM
rw-r--r--
📄
user.pyc
82.91 KB
02/03/2022 06:37:41 AM
rw-r--r--
Editing: sites.py
Close
# sites management # # Copyright Matthieu Patou <mat@matws.net> 2011 # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. # from samba import sites, subnets from samba.samdb import SamDB import samba.getopt as options from samba.auth import system_session from samba.netcmd import ( Command, CommandError, SuperCommand, Option, ) class cmd_sites_create(Command): """Create a new site.""" synopsis = "%prog <site> [options]" takes_args = ["sitename"] takes_optiongroups = { "sambaopts": options.SambaOptions, "versionopts": options.VersionOptions, "credopts": options.CredentialsOptions, } takes_options = [ Option("-H", "--URL", help="LDB URL for database or target server", type=str, metavar="URL", dest="H"), ] def run(self, sitename, H=None, sambaopts=None, credopts=None, versionopts=None): lp = sambaopts.get_loadparm() creds = credopts.get_credentials(lp, fallback_machine=True) samdb = SamDB(url=H, session_info=system_session(), credentials=creds, lp=lp) samdb.transaction_start() try: sites.create_site(samdb, samdb.get_config_basedn(), sitename) samdb.transaction_commit() except sites.SiteAlreadyExistsException, e: samdb.transaction_cancel() raise CommandError("Error while creating site %s, error: %s" % (sitename, str(e))) self.outf.write("Site %s created !\n" % sitename) class cmd_sites_delete(Command): """Delete an existing site.""" synopsis = "%prog <site> [options]" takes_args = ["sitename"] takes_optiongroups = { "sambaopts": options.SambaOptions, "versionopts": options.VersionOptions, "credopts": options.CredentialsOptions, } takes_options = [ Option("-H", "--URL", help="LDB URL for database or target server", type=str, metavar="URL", dest="H"), ] def run(self, sitename, H=None, sambaopts=None, credopts=None, versionopts=None): lp = sambaopts.get_loadparm() creds = credopts.get_credentials(lp, fallback_machine=True) samdb = SamDB(url=H, session_info=system_session(), credentials=creds, lp=lp) samdb.transaction_start() try: sites.delete_site(samdb, samdb.get_config_basedn(), sitename) samdb.transaction_commit() except sites.SiteException, e: samdb.transaction_cancel() raise CommandError( "Error while removing site %s, error: %s" % (sitename, str(e))) self.outf.write("Site %s removed!\n" % sitename) class cmd_sites_subnet_create(Command): """Create a new subnet.""" synopsis = "%prog <subnet> <site-of-subnet> [options]" takes_args = ["subnetname", "site_of_subnet"] takes_optiongroups = { "sambaopts": options.SambaOptions, "versionopts": options.VersionOptions, "credopts": options.CredentialsOptions, } takes_options = [ Option("-H", "--URL", help="LDB URL for database or target server", type=str, metavar="URL", dest="H"), ] def run(self, subnetname, site_of_subnet, H=None, sambaopts=None, credopts=None, versionopts=None): lp = sambaopts.get_loadparm() creds = credopts.get_credentials(lp) samdb = SamDB(url=H, session_info=system_session(), credentials=creds, lp=lp) samdb.transaction_start() try: subnets.create_subnet(samdb, samdb.get_config_basedn(), subnetname, site_of_subnet) samdb.transaction_commit() except subnets.SubnetException, e: samdb.transaction_cancel() raise CommandError("Error while creating subnet %s: %s" % (subnetname, e)) self.outf.write("Subnet %s created !\n" % subnetname) class cmd_sites_subnet_delete(Command): """Delete an existing subnet.""" synopsis = "%prog <subnet> [options]" takes_args = ["subnetname"] takes_optiongroups = { "sambaopts": options.SambaOptions, "versionopts": options.VersionOptions, "credopts": options.CredentialsOptions, } takes_options = [ Option("-H", "--URL", help="LDB URL for database or target server", type=str, metavar="URL", dest="H"), ] def run(self, subnetname, H=None, sambaopts=None, credopts=None, versionopts=None): lp = sambaopts.get_loadparm() creds = credopts.get_credentials(lp) samdb = SamDB(url=H, session_info=system_session(), credentials=creds, lp=lp) samdb.transaction_start() try: subnets.delete_subnet(samdb, samdb.get_config_basedn(), subnetname) samdb.transaction_commit() except subnets.SubnetException, e: samdb.transaction_cancel() raise CommandError("Error while removing subnet %s, error: %s" % (subnetname, e)) self.outf.write("Subnet %s removed!\n" % subnetname) class cmd_sites_subnet_set_site(Command): """Assign a subnet to a site.""" synopsis = "%prog <subnet> <site-of-subnet> [options]" takes_args = ["subnetname", "site_of_subnet"] takes_optiongroups = { "sambaopts": options.SambaOptions, "versionopts": options.VersionOptions, "credopts": options.CredentialsOptions, } takes_options = [ Option("-H", "--URL", help="LDB URL for database or target server", type=str, metavar="URL", dest="H"), ] def run(self, subnetname, site_of_subnet, H=None, sambaopts=None, credopts=None, versionopts=None): lp = sambaopts.get_loadparm() creds = credopts.get_credentials(lp) samdb = SamDB(url=H, session_info=system_session(), credentials=creds, lp=lp) samdb.transaction_start() try: subnets.set_subnet_site(samdb, samdb.get_config_basedn(), subnetname, site_of_subnet) samdb.transaction_commit() except subnets.SubnetException, e: samdb.transaction_cancel() raise CommandError("Error assigning subnet %s to site %s: %s" % (subnetname, site_of_subnet, e)) print >> self.outf, ("Subnet %s shifted to site %s" % (subnetname, site_of_subnet)) class cmd_sites_subnet(SuperCommand): """Subnet management subcommands.""" subcommands = { "create": cmd_sites_subnet_create(), "remove": cmd_sites_subnet_delete(), "set-site": cmd_sites_subnet_set_site(), } class cmd_sites(SuperCommand): """Sites management.""" subcommands = {} subcommands["create"] = cmd_sites_create() subcommands["remove"] = cmd_sites_delete() subcommands["subnet"] = cmd_sites_subnet()