WebFTP authentication failed with search and multiple items delete

Hi

I’m having a problem with WebFTP setup (dynamic FTP) on Pydio 8.0.1
I’m not sure if this is a problem related to the configuration or Pydio itself, so i’m looking for some help here.

Holding down shift key it is possible to select for example multiple folders and when i try to delete them i get “Launching task Delete in background” which instantly results in error “Authentication Failed”. If i select and delete these folders one by one, everything works.

Exactly the same problem appears with search. When i use “Index Content”, Pydio says “Indexation launched” and shows launched in background + “Authentication Failed” error.

Inside conf/bootstrap_repositories.php i have set up the Workspace like this:

$REPOSITORIES["ftp"] = array(
    "DISPLAY"       => "FTP",
    "DRIVER"        => "ftp",
    "DRIVER_OPTIONS"=> array(
        "DYNAMIC_FTP" => true,
        "DEFAULT_RIGHTS" => "rw",
        "USE_SESSION_CREDENTIALS" => true,
        "FIX_PERMISSIONS" => "user",
        "META_SOURCES" => array(
            "metastore.serial"=> array(
                "METADATA_FILE" => ".ajxp_meta",
                "METADATA_FILE_LOCATION" => "outside",
                "USE_AUTH_STREAM" => true
            ),
            "meta.filehasher" => array(),
            "index.lucene" => array(
                "index_content" => true,
                "USE_AUTH_STREAM" => true
            )
        )
    )
);

data/plugins/boot.conf/bootstrap.json

{
  "core.conf":{
    "SAVE_GUEST_PREFERENCES":false,
    "SKIP_USER_HISTORY":true,
    "USER_CREATE_REPOSITORY":false,
    "USERS_LIST_COMPLETE_LIMIT":"40",
    "USERS_LIST_COMPLETE_MIN_CHARS":"0",
    "USERS_LIST_REGEXP_MANDATORY":false,
    "USERS_LIST_HIDE_LOGIN":false,
    "ALLOW_CROSSUSERS_SHARING":false,
    "CROSSUSERS_ALLGROUPS":false,
    "CROSSUSERS_ALLGROUPS_DISPLAY":true,
    "GROUP_OR_ROLE":{
      "USER":"user",
      "group_switch_value":"Users"
    },
    "USER":"user",
    "GROUP":"group",
    "ROLE":"role",
    "GROUP_AND_ROLE":"rolegroup",
    "ADDRESSBOOK_GROUP_OR_USERS":{
      "ABOOK_SEARCH":"search",
      "group_switch_value":"search"
    },
    "ABOOK_BOTH":"both",
    "ABOOK_GROUPS":"groups",
    "ABOOK_USERS":"users",
    "ABOOK_SEARCH":"search",
    "LIST_ROLE_BY":{
      "group_switch_value":"all"
    },
    "ALL_ROLES":"allrolls",
    "USER_ROLES_ONLY":"userroles",
    "PREFIX":"",
    "EXCLUDED":"",
    "INCLUDED":"",
    "USER_CREATE_USERS":false,
    "NEWUSERS_EDIT_PARAMETERS":"email,USER_DISPLAY_NAME,lang",
    "UNIQUE_INSTANCE_CONFIG":{
      "instance_name":"conf.sql",
      "SQL_DRIVER":{
        "core_driver":"core",
        "group_switch_value":"core"
      },
      "group_switch_value":"conf.sql"
    },
    "mysql_driver":"mysql",
    "mysql_host":"localhost",
    "mysql_database":"pydio",
    "mysql_username":"",
    "mysql_password":"",
    "mysql_use_mysqli":"true",
    "sqlite3_driver":"sqlite3",
    "sqlite3_formatDate":"'Y-m-d'",
    "sqlite3_formatDateTime":"'Y-m-d H:i:s'",
    "sqlite3_database":"AJXP_DATA_PATH\/plugins\/conf.sql\/pydio.db",
    "postgre_driver":"postgre",
    "postgre_host":"localhost",
    "postgre_database":"pydio",
    "postgre_username":"",
    "postgre_password":"",
    "AJXP_CLI_SECRET_KEY":"--secret--",
    "DIBI_PRECONFIGURATION":{
      "mysql_username":"web_ftp",
      "mysql_use_mysqli":"true",
      "mysql_password":"--mysql-pass--",
      "mysql_host":"localhost",
      "mysql_driver":"mysql",
      "mysql_database":"web_ftp",
      "group_switch_value":"mysql"
    }
  },
  "core.auth":{
    "ENABLE_USERS":true,
    "CASE_SENSITIVE":false,
    "ALLOW_GUEST_BROWSING":false,
    "PASSWORD_MINLENGTH":"8",
    "SESSION_SET_CREDENTIALS":false,
    "SECURE_LOGIN_FORM":false,
    "ENABLE_FORGOT_PASSWORD":false,
    "FORGOT_PASSWORD_ACTION":"reset-password-ask",
    "DISABLE_BRUTE_FORCE_CHECK":false,
    "MASTER_INSTANCE_CONFIG":{
      "instance_name":"auth.ftp",
      "TEST_CONNEXION":"auth.ftp",
      "REPOSITORY_ID":"ftp",
      "FTP_LOGIN_SCREEN":true,
      "AUTO_APPLY_ROLE":"",
      "AJXP_ADMIN_LOGIN":"ftp_username",
      "group_switch_value":"auth.ftp"
    },
    "MULTI_MODE":{
      "instance_name":"MASTER_SLAVE",
      "group_switch_value":"MASTER_SLAVE"
    },
    "instance_name":"USER_CHOICE",
    "CACHE_MASTER_USERS_TO_SLAVE":true,
    "MULTI_USER_ID_SEPARATOR":"_-_",
    "MULTI_MASTER_LABEL":"Company Users",
    "MULTI_SLAVE_LABEL":"Guest Users",
    "SLAVE_INSTANCE_CONFIG":[
      
    ],
    "SLAVE_INSTANCE_CONFIG_group_switch":""
  },
  "core.cache":{
    "UNIQUE_INSTANCE_CONFIG":[
      
    ]
  },
  "auth.ldap":{
    "AJXP_PLUGIN_ENABLED":false
  },
  "auth.ftp":{
    "AJXP_PLUGIN_ENABLED":true
  }
}

Running the action from commandline, gives the same error even when i pass the credentials that work in another FTP client. And with the same credentials i can log into pydio as well.

# php cmd.php -u=ftp_username -p=ftp_password -r=ftp -a=index
Authentication Failed

Am i supposed to change something in the configuration, because once i have logged into Pydio with some FTP user, the same credentials should be used by Pydio to run indexing or other actions.

Version: Pydio 8.0.1
OS: FreeBSD 11.1-STABLE
Pydio deployment type: contents copied from FreeBSD package

Thanks
Tanel

Hi Tanel,
It’s a limitation of the WebFTP config. You can simply disable command line in the main options settings, and the multiple delete and copy tasks will be run directly, not in background.
-c

Hey. Thanks, this solved the issue.