At line 1 changed 2 lines |
!!!API Tool: (as of CrushFTP v8.1)\\ |
First launch the command line tool passing it the arguments as an amdin username and password (CrushTunnel.jar is located in your WebInterface folder):\\ |
(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):\\ |
At line 10 added one line |
user user_update MainUsers user3 email=support@CrushFTP.com first_name=John last_name=Doe |
At line 10 changed one line |
user vfs_delete MainUsers user3 home |
user vfs_delete MainUsers user3 path=/home/ name=home |
user user_delete MainUsers user3 |
user list MainUsers users |
user list MainUsers groups |
user list MainUsers inheritance |
At line 18 added 12 lines |
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. |
|
|
|
At line 40 added 8 lines |
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, |
|
|
At line 24 changed one line |
job remote MyFindJob |
job remote MyFindJob param1=test param2=test |
At line 52 added one line |
|
At line 63 added one line |
\\ |
At line 65 added 12 lines |
!Registering CrushFTP service from command line. |
---- |
|
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 |
|
{{{ |
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)'' |
\\ |
---- |
At line 88 added 7 lines |
!Delete a user |
---- |
{{{ |
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/ |
}}} |
\\ |
---- |
At line 105 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 107 added 6 lines |
{{{ |
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 78 changed one line |
curl -d command=setUserItem -d xmlItem=groups -d data_action=add -d group_name=MyGroup -d usernames=user1;user2 -u crushadmin:pass http://127.0.0.1:8080/ |
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/ |
At line 84 changed one line |
curl -d command=setUserItem -d xmlItem=groups -d data_action=delete -d group_name=MyGroup -d usernames=user1;user2 -u crushadmin:pass http://127.0.0.1:8080/ |
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/ |
At line 90 changed one line |
curl -d command=setUserItem -d xmlItem=groups -d data_action=delete -d group_name=MyGroup -u crushadmin:pass http://127.0.0.1:8080/ |
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/ |
At line 96 changed one line |
curl -d command=setUserItem -d xmlItem=inheritance -d data_action=add -d inheritance_name=AdmminTemplate -d usernames=user1;user2 -u crushadmin:pass http://127.0.0.1:8080/ |
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/ |
At line 102 changed one line |
curl -d command=setUserItem -d xmlItem=inheritance -d data_action=delete -d inheritance_name=AdmminTemplate -d usernames=user1;user2 -u crushadmin:pass http://127.0.0.1:8080/ |
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/ |
At line 108 changed one line |
curl -d command=setUserItem -d xmlItem=inheritance -d data_action=delete -d inheritance_name=AdmminTemplate -u crushadmin:pass http://127.0.0.1:8080/ |
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/ |
At line 111 changed one line |
|
\\ |
!!Job:\\ |
\\ |
At line 172 added 11 lines |
|
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; |
}}} |
At line 184 added 30 lines |
\\ |
!!IP Restrictions:\\ |
\\ |
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/ |
}}}\\ |
\\ |
\\ |
Modify IP restrictions (only for full admin users):\\ |
\\ |
{{{ |
curl -d command=modifyIpRestrictions -d start_ip=192.168.0.5 -d stop_ip=192.168.0.5 -d type=A -d method=add -u admin:pass http://127.0.0.1:9090 |
}}}\\ |
\\ |
{{{ |
curl -d command=modifyIpRestrictions -d start_ip=192.168.0.5 -d stop_ip=192.168.0.5 -d type=A -d method=delete -u admin:pass http://127.0.0.1:9090 |
}}}\\ |
\\ |
!!Update:\\ |
\\ |
Perform update: |
{{{ |
DMZ: |
curl -d command=updateNow -u crushadmin:pass https://myserver.com/dmz_instance_name/ |
|
INTERNAL: |
curl -d command=updateNow -u crushadmin:pass https://myserver.com/ |
}}} |