我尝试了以下规则来允许FTP:
# The following two rules allow the inbound FTP connection
iptables -A INPUT -p tcp --sport 21 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT
# The next 2 lines allow active ftp connections
iptables -A INPUT -p
下面是一个函数(归功于用户Abbot,在另一个问题中提供了它)
def traverse(ftp):
level = {}
for entry in (path for path in ftp.nlst() if path not in ('.', '..')):
ftp.cwd(entry)
level[entry] = traverse(ftp)
ftp.cwd('..')
return level
下面是我不理解的地方:当python进入函数时,它会创建一个空字典(
我需要在ftp期间允许用户输入,这样用户就可以定义由$HERE表示的最终目录。我的ftp在一个脚本中,然后由另一个脚本运行。我已经试过把一个论证传递给scritp,但是它说非法的争论数量。
我的ftp很简单:
ftp -in <my.ftp #which runs the script my.ftp which looks like this bellow:
open server
user user passwd1
cd /u/place/userarea/$HERE
mget FILE.FLE
quit
当我运行ftp脚本时,我希望