本地freebsd监狱绑定libc。
jail的Python项目详细描述
PY监狱
使用libc的freebsd监狱的本地python包装器。
用法
坐牢
>>>importjail>>>jiov=jail.Jiov(dict(persist=None,jid=23,path="/rescue"))>>>jail.dll.jail_set(jiov.pointer,len(jiov),1)23
越狱
>>>importjail>>>jiov=jail.Jiov(dict(persist=None,jid=23,path="/rescue"))>>>jail.dll.jail_remove(23)-1>>>jail.dll.jail_set(jiov.pointer,len(jiov),1)23>>>jail.dll.jail_set(jiov.pointer,len(jiov),1)-1>>>jiov.errmsg.valueb'jail 23 already exists'>>>jail.dll.jail_remove(23)0>>>jail.dll.jail_set(jiov.pointer,len(jiov),1)23
参数
联网
非vnet监狱接受ip.addr
和ip6.addr
参数。
这些可以从pythonipaddress.IPv4Address和ipaddress.IPv6Address中定义。
ifconfig bridge create inet 192.168.1.42/24 inet6 add 2001:db8:10C::42/64
importipaddressimportjailjiov=jail.Jiov({"persist":None,"jid":23,"path":"/rescue","ip4.addr":ipaddress.IPv4Address("192.168.1.42")"ip6.addr":ipaddress.IPv6Address("2001:db8:10C::42")})jail.dll.jail_set(jiov.pointer,len(jiov),1)