AWS lambda : PortScannerError: 'nmap program was not found in path'

Viewed 166

When I'm running nmap from AWS lambda function, I'm getting below mentioned error.

[ERROR] PortScannerError: 'nmap program was not found in path. PATH is : /var/lang/bin:/usr/local/bin:/usr/bin/:/bin:/opt/bin'
Traceback (most recent call last):
  File "/var/lang/lib/python3.7/imp.py", line 234, in load_module
    return load_source(name, filename, file)
  File "/var/lang/lib/python3.7/imp.py", line 171, in load_source
    module = _load(spec)
  File "<frozen importlib._bootstrap>", line 696, in _load
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/var/task/lambda_function.py", line 38, in <module>
    nmScan = nmap.PortScanner()
  File "/var/task/nmap/nmap.py", line 134, in __init__
    os.getenv('PATH')

Please help me solve this error.

1 Answers

Lambda environment does not have nmap. Probably the easiest way to make use of it would be to deploy your function as Lambda container image. You would construct your own image with would come with nmap.

Related