使用ansible期望创建nessus用户(nessuscli)

问题描述 投票:0回答:1

我正在使用ansible期望为我的nessus创建一个用户(通过使用nessuscli)。期望应该回答以下几个问题(我添加了数字1-5)。我的期望卡在数字5上。数字5的最后一个字母是“(用户可以设置空规则集)”,然后是下一行(回车)。由于我不知道如何告诉您期望有一个短语后接下一行,因此出现了问题。我尝试了\ r \ n,但没有一个起作用!任何治疗都值得赞赏。

此外,您也可以在下面看到我的ansible代码。

谢谢

您可以在此处查看nessus cli propmt的屏幕截图:screenshot of nessucli propmpt

============ Nessuscli adduser提示==========

1-登录:

2-登录密码:

3-登录密码(再次):

4-您是否希望该用户成为Nessus的“系统管理员”用户(可以上传插件等)? (y / n)[n]:y

5-用户规则

nessusd具有规则系统,可用于限制主机该测试有权进行测试。例如,您可能想要他只能扫描自己的主机。

请参阅Nessus命令行参考以获取规则语法

输入此用户的规则,并在完成后输入空白行:(用户可以设置一个空规则)

================================================ ===

我的Ansible代码:

名称:创建nessus用户

expect:
  command: /opt/nessus/sbin/nessuscli adduser
  responses:
    'Login: ': "{{nessus_username}}" # answer number 1
    'Login password: ': "{{nessus_pass}}" # answer number 2
    'Login password \(again\): ': "{{nessus_pass}}" # answer number 3
    '\[n\]: ': 'y' # answer number 4
    'set\)\\n ': "\n" # answer number 5 which doesnt work
    '\[n\]: ': 'y' # answer the next propmpt (not in question and works)
python automation ansible pexpect
1个回答
0
投票

经过大量修补,这对我有用:

  - name: Add user
    expect:
      echo: yes
      timeout: 5
      command: "{{ nessus_cli_bin }} adduser"
      responses:
        (.*)Login(.*): "{{ nessus_user }}"
        (.*)Login password(.*): "{{ nessus_pass }}"
        (.*)Login password(.*): "{{ nessus_pass }}"
        (.*)system administrator(.*): "y"
        (.*)rules set(.*): "\n"
        (.*)ok(.*): "y"
© www.soinside.com 2019 - 2024. All rights reserved.