Add new attachment

Only authorized users are allowed to upload new attachments.

List of attachments

Kind Attachment Name Size Version Date Modified Author Change note
xml
permissions.xml 0.2 kB 1 29-Dec-2020 05:25 Ben Spink
xml
user.xml 0.2 kB 1 29-Dec-2020 05:25 Ben Spink
xml
vfs_items.xml 0.3 kB 1 29-Dec-2020 05:25 Ben Spink

This page (revision-36) was last changed on 01-Feb-2023 05:12 by Ben Spink

This page was created on 29-Dec-2020 05:25 by Ben Spink

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Difference between version and

At line 1 added 53 lines
(File Transfer API can be found here: [APIFileTransfer].)
!!!Admin API Tool: (as of CrushFTP v8.1)\\
First launch the command line tool passing it the arguments as an admin username and password (CrushTunnel.jar is located in your WebInterface folder):\\
{{{
java -jar CrushTunnel.jar https://crushamdin:password@yourserver.com/
}}}
Now you can issue the user command to add a user, assign a VFS.\\
{{{
user user_add MainUsers user3 password=password
user user_update MainUsers user3 email=support@CrushFTP.com first_name=John last_name=Doe
user vfs_add MainUsers user3 path=/home/ privs=(read)(write)(resume)(delete)(view) url=file://home/ name=home
user vfs_delete MainUsers user3 path=/home/ name=home
user user_delete MainUsers user3
}}}
Where:
"path" is the FTP style path to the folder, relative to the user's virtual root, "/". If it's single VFS , then path is to be "/" indeed, otherwise we'll create a Virtual root item, read only, the true VFS will be added below.
"privs" the user VFS folder permissions, can be any combination of (read)(write)(view)(delete)(deletedir)(makedir)(rename)(resume)(share)(slideshow)(invisible)(ratio)
(replicate)(locked) , for details see our user VFS related docs page.
"url" the true URL pointing to the folder itself.
You can also assign groups, and inheritance:\\
{{{
user group_add MainUsers user3 groupname
user inheritance_add MainUsers user3 groupname
}}}
Or remove a user from a group or inheritance:\\
{{{
user group_delete MainUsers user3 groupname
user inheritance_delete MainUsers user3 groupname
}}}
You can use the user API call in CrushTunnel.jar to set the field: allowed_protocols to configure Port restrictions
{{{
ftp:0,ftps:0,sftp:0,http:0,https:0,webdav:0,
}}}
That is the default, but if you only wanted to allow sftp and https, you could do:
sftp:0,https:0,
Its also possible to tell the server to run a Job if you want to remote control jobs:\\
{{{
job remote MyFindJob param1=test param2=test
}}}
\\
\\
\\
!!!Alternative methods using raw CURL commands:\\
At line 58 added 3 lines
''(The attachments tab at the top contains the sample files.)''\\
\\
\\
At line 6 changed one line
Making a new User for the User Manager
!Registering CrushFTP service from command line.
At line 9 changed one line
Builds a brand new user, or replaces and existing one entirely.
Uses a command to register the CrushFTP license key in case you need to deploy on multiple machines E3 specific, and need to automate the registration.
The spaces and special characters need to be URL encoded
At line 69 added 11 lines
curl -d command=registerCrushFTP -d registration_name=MY%2520NAME -d registration_email=MYNAME%2540MYEMAIL.COM.EXAMPLE -d registration_code=my_reg_code -u crushadmin:'password' http://127.0.0.1:8080/
}}}
''(long line, so get it all)''
\\
----
!Making a new User with VFS
----
Builds a brand new user, or replaces an existing one entirely.
{{{
At line 14 changed one line
(long line, so get it all)
''(long line, so get it all)''
At line 17 changed one line
Updating a user in the User Manager
!Delete a user
At line 87 added 7 lines
{{{
curl -d command=setUserItem -d data_action=delete -d xmlItem=user -d serverGroup=MainUsers -d username=curl_user http://crushadmin:pass@127.0.0.1:8080/
}}}
\\
----
!Updating a user
----
At line 25 changed one line
(long line, so get it all)
''(long line, so get it all)''
At line 102 added one line
Updating a user with certain properties, the missing/updated xml keys can be supplied in line, below example sets the password as the literal "thisismypass"
At line 28 changed one line
The attachments contain the sample files.\\
{{{
curl -d command=setUserItem -d data_action=update -d xmlItem=user -d serverGroup=MainUsers -d username=curl_user --data-urlencode 'user=<?xml+version="1.0"+encoding="UTF-8"?>+<user+type="properties"><password>thisismypass</password></user>' http://crushadmin:pass@127.0.0.1:8080/
}}}
''(long line, so get it all)''
At line 30 changed one line
!!Update/add to VFS of a user\\
\\
!Update/add to VFS of a user\\
At line 115 added one line
''(long line, so get it all)''
At line 36 changed one line
!!Delete VFS item from a user\\
!Delete VFS item from a user\\
At line 122 added 64 lines
''(long line, so get it all)''
\\
\\
!!Groups and Inheritance:\\
\\
Add some users into a group, it will make the group if it doesn't exist:\\
{{{
curl -d command=setUserItem -d xmlItem=groups -d serverGroup=MainUsers -d data_action=add -d group_name=MyGroup -d usernames="user1;user2" -u crushadmin:pass http://127.0.0.1:8080/
}}}
''(long line, so get it all)''\\
\\
Delete users from a group:\\
{{{
curl -d command=setUserItem -d xmlItem=groups -d serverGroup=MainUsers -d data_action=delete -d group_name=MyGroup -d usernames="user1;user2" -u crushadmin:pass http://127.0.0.1:8080/
}}}
''(long line, so get it all)''\\
\\
Delete an entire group:\\
{{{
curl -d command=setUserItem -d xmlItem=groups -d serverGroup=MainUsers -d data_action=delete -d group_name=MyGroup -u crushadmin:pass http://127.0.0.1:8080/
}}}
''(long line, so get it all)''\\
\\
Add some users to inheritance, it will make the inheritance if it doesn't exist:\\
{{{
curl -d command=setUserItem -d xmlItem=inheritance -d serverGroup=MainUsers -d data_action=add -d inheritance_name=AdminTemplate -d usernames="user1;user2" -u crushadmin:pass http://127.0.0.1:8080/
}}}
''(long line, so get it all)''\\
\\
Delete users from an inheritance item:\\
{{{
curl -d command=setUserItem -d xmlItem=inheritance -d serverGroup=MainUsers -d data_action=delete -d inheritance_name=AdminTemplate -d usernames="user1;user2" -u crushadmin:pass http://127.0.0.1:8080/
}}}
''(long line, so get it all)''\\
\\
Delete an entire inheritance:\\
{{{
curl -d command=setUserItem -d xmlItem=inheritance -d serverGroup=MainUsers -d data_action=delete -d inheritance_name=AdminTemplate -u crushadmin:pass http://127.0.0.1:8080/
}}}
''(long line, so get it all)''\\
Run a remote job on the server:\\
{{{
curl -d command=testJobSchedule -d scheduleName=MyFindJob -d async=false -d response_type=all -d myparam1=happy -u crushadmin:pass http://127.0.0.1:8080/
}}}
Run a job via command line:
{{{
java -jar CrushTunnel.jar inline_script "connect https://admin:pass@server.com/;job remote MyFindJob param1=test;quit;"
}}}
or from an execute task of CrushTask do:
{{{
separator: ~
command: java
Parameters: -jar~CrushTunnel.jar~inline_script~connect https://admin:pass@server.com/;job remote MyFindJob param1=test;quit;
}}}
''(long line, so get it all)''\\
\\
Unban an ip (only for full admin users):\\
\\
{{{
curl -d command=unban -d ip=192.168.0.5 -u crushadmin:pass http://127.0.0.1:8080/
}}}\\
\\
Version Date Modified Size Author Changes ... Change note
36 01-Feb-2023 05:12 8.276 kB Ben Spink to previous
35 12-Apr-2022 04:18 8.081 kB krivacsz to previous | to last
34 06-Apr-2022 11:38 7.929 kB Ben Spink to previous | to last
33 23-Mar-2021 03:50 7.838 kB Ben Spink to previous | to last
32 23-Mar-2021 03:50 7.837 kB Ben Spink to previous | to last
31 29-Dec-2020 05:25 7.429 kB Ada Csaba to previous | to last
30 29-Dec-2020 05:25 7.288 kB Ben Spink to previous | to last
29 29-Dec-2020 05:25 7.254 kB Ada Csaba to previous | to last
28 29-Dec-2020 05:25 6.999 kB Ada Csaba to previous | to last
27 29-Dec-2020 05:25 6.765 kB Ada Csaba to previous | to last
26 29-Dec-2020 05:25 6.759 kB Ada Csaba to previous | to last
25 29-Dec-2020 05:25 6.485 kB Halmágyi Árpád to previous | to last
24 29-Dec-2020 05:25 6.48 kB Halmágyi Árpád to previous | to last
23 29-Dec-2020 05:25 5.956 kB Ben Spink to previous | to last
22 29-Dec-2020 05:25 5.948 kB Ben Spink to previous | to last
21 29-Dec-2020 05:25 5.801 kB Ada Csaba to previous | to last
« This page (revision-36) was last changed on 01-Feb-2023 05:12 by Ben Spink
G’day (anonymous guest)
CrushFTP10 | What's New

Referenced by
LeftMenu

JSPWiki