-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSSH_Unban_template.py
More file actions
executable file
·49 lines (38 loc) · 1.06 KB
/
Copy pathSSH_Unban_template.py
File metadata and controls
executable file
·49 lines (38 loc) · 1.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/python3
ip='10.200.x.x'
user='webAPI'
pwd='1234567890'
import sys
if len(sys.argv) < 2:
print('Usage: '+sys.argv[0]+' <blocked IP>')
print('Used to remove given IP from SSH Block list on edge firewall')
exit()
from ftntlib import FortiManagerJSON
def main(argv):
me,objip = argv
addrgrp = 'Block_SSH'
package = 'Edge/edge-fw_ITS_Link'
adom = '54Devices'
urlpf = 'pm/config/adom/'+adom
api = FortiManagerJSON()
api.debug('on')
api.login(ip,user,pwd)
objname = 'h_'+objip
code,d = api.get(urlpf+'/obj/firewall/addrgrp/'+addrgrp)
if type(d['member']) is list:
member = d['member']
if objname not in member:
print('Host is not in block group!')
return
else:
member.remove(objname)
data = {'member':member}
api.update(urlpf+'/obj/firewall/addrgrp/'+addrgrp,data)
scope = [ {'name' : 'All_FortiGate'} ]
flags = ['install_chg','generate_rev']
ret_code, response = api.install_package(adom,package,scope,flags)
api.logout()
api.debug('off')
return
if __name__ == "__main__":
main(sys.argv)