HOWTO: Getting Started with BulletProof FTP Server

Thank you for your interest in BulletProof FTP Server.

Below is a list of HOWTO articles that have been written over the years to help customers in getting up and running with BulletProof FTP Server.
Note: Some of the screen-shots show older versions of the software. The UI hasn’t changed much between different versions, but you might find some of the buttons labeled differently than what appears.

  • Download, Install and Adding First User
  • Opening Your Firewall
  • Licensing
  • Upgrading
  • Windows System Service
  •  

    Download, Install and Adding First User

    HOWTO: Downloading BPFTP Server 2010
    http://blog.builtbp.com/2010/09/howto-downloading-bpftp-server-2010/

    HOWTO: Installing BPFTP Server 2010
    http://blog.builtbp.com/2010/09/howto-installing-bpftp-server-2010/

    HOWTO: Adding a User
    http://blog.builtbp.com/2010/09/howto-adding-a-user/

     

    Opening Your Firewall

    It’s VERY common that people think only one-port is needed for ftp (default: tcp/ip 21). However, this is not true.

    FTP requires at least two ports, one for the control-port (used to login and issue commands, default tcp/ip 21) and a data-port (default tcp/ip 30000 to 30100). One data-port is needed for every concurrent data-connection, for this reason we suggest using a range of 100 ports which will handle most needs.

    HOWTO: Windows Firewall and BPFTP Server 2011
    http://blog.builtbp.com/2011/06/windows-firewall-and-bulletproof-ftp-server/

    HOWTO: Windows Firewall
    http://blog.builtbp.com/2010/09/howto-windows-firewall/

    HOWTO: Setting up NAT/Passive/Firewall Support
    http://blog.builtbp.com/2010/09/howto-setting-up-natpassivefirewall-support/

     

    Licensing

    HOWTO: Enter Your Subscription-Code
    http://blog.builtbp.com/2013/05/howto-enter-your-subscription-code/

    HOWTO: Purchase an Upgrade to your License
    http://blog.builtbp.com/2014/02/howto-purchase-an-upgrade-to-your-license/

    HOWTO: Remove Your License-Code
    http://blog.builtbp.com/2013/05/howto-remove-your-license-code/

     

    Upgrading

    FAQ: Can I Upgrade and retain all my Users, Groups and Settings?
    http://blog.builtbp.com/2011/12/faq-can-i-upgrade-and-retail-all-my-users-groups-and-settings/

    FAQ: Where does BPFTP Server store the Users, Groups and Settings?
    http://blog.builtbp.com/2011/12/faq-where-does-bpftp-server-store-the-users-groups-and-settings/

    HOWTO: Overridding the Storage-Path for Settings, Users and Groups
    http://blog.builtbp.com/2011/10/howto-override-storage-path-for-settings-users-and-groups/

     

    Windows System Service

    HOWTO: Windows System-Service
    http://blog.builtbp.com/2011/09/howto-windows-system-service/

     

    FEATURE: Event Manager and Email Variables

    BPS-Events Manager-Variables

    Listing of %VARS to be used in the Events Manager of BulletProof FTP Server for SMTP and HTTP Form-Post (NVP) event actions.

    REVISION HISTORY:
  • %FILETIME* and %FILEDATE* variables added in v2014.1.3.21 (Feb 2015)
  • %FILE was changed to %FILEFULLNAME in v2013.1.0.11 (Oct 2013)
    VariableDescriptionScopeContextUnits/Example
    %BDOWNData Transferred by FTP-AccountCurrent SessionDownloadBytes
    %BDOWNALLData Transferred by FTP-AccountAll SessionsDownloadBytes
    %BTOTData Transferred by FTP-AccountAll SessionsUp/DownBytes
    %BUPData Transferred by FTP-AccountCurrent SessionUploadBytes
    %BUPALLData Transferred by FTP-AccountAll SessionsUploadBytes
    %C24HNumber of Connections by FTP-AccountCurrent Session24 Hoursinteger-value
    %CALLNumber of Connections by FTP-AccountCurrent SessionForeverinteger-value
    %CLIENTGROUPGroup AccountCurrent SessionUser Manager -> Login -> Group Nameagroupname
    %CLIENTIPIP AddressCurrent SessionObtained from Network192.168.0.1
    %CLIENTIP_000IP Address (Zero Padded)Current SessionObtained from Network192.168.000.001
    %CLIENTLOGINUsername used to LoginCurrent SessionUser Manager -> Login -> Group Nameausername
    %CLIENTNAMEAccount-NameCurrent SessionUser Manager -> Login -> Group Nameaaccountname
    %CLIENTPASSWORDPassword used to LoginCurrent SessionUser Manager -> Login -> Group Nameapassword
    %CNOWNumber of Connections by FTP-AccountCurrent SessionCurrentinteger-value
    %DATECurrent DateSystemObtained from OSLocale-Specific
    %DATE_EXCurrent DateSystemObtained from OSmmddyyyy
    %DATE_EX_DMYCurrent DateSystemObtained from OSdd-mm-yyyy
    %DATE_EX_MDYCurrent DateSystemObtained from OSmm-dd-yyyy
    %DATE_EX_YMDCurrent DateSystemObtained from OSyyyy-mm-dd
    %DFREEDiskspace FreeCurrent SessionCurrent Working DirectoryBytes
    %DFREEGBDiskspace FreeCurrent SessionCurrent Working DirectoryGiBytes
    %DFREEKBDiskspace FreeCurrent SessionCurrent Working DirectoryKiBytes
    %DFREEMBDiskspace FreeCurrent SessionCurrent Working DirectoryMiBytes
    %DIR_8.3Directory Name of Target FTP CommandCurrent SessionsN/Astring (FAT32 shortened)
    %DIRCREATEDCreated Directory NameCurrent SessionsN/Astring
    %DIRDELETEDDeleted Directory NameCurrent SessionsN/Astring
    %DIRFULLNAMEDirectory Name of Target FTP CommandCurrent SessionsN/Astring
    %DIRTARGETDirectory Name of Target FTP CommandCurrent SessionsN/Astring
    %DIRTARGET_8.3Directory Name of Target FTP CommandCurrent SessionsN/Astring (FAT32 shortened)
    %DISKDrive LetterCurrent SessionCurrent Working DirectoryC (Single-Char, ex: C:\ drive)
    %FDOWNNumber of Files TransferredCurrent SessionDownloadedinteger
    %FDOWNALLNumber of Files TransferredAll SessionsDownloadedinteger
    %FILEDATEFile Creation DateCurrent SessionsUp/DownLocale Specific
    %FILEDATE_EXFile Creation DateCurrent SessionsUp/Downmmddyyyy
    %FILEDATE_EX_DMYFile Creation DateCurrent SessionsUp/Downdd-mm-yyyy
    %FILEDATE_EX_MDYFile Creation DateCurrent SessionsUp/Downmm-dd-yyyy
    %FILEDATE_EX_YMDFile Creation DateCurrent SessionsUp/Downyyyy-mm-dd
    %FILEDIRDirectory OnlyCurrent SessionUp/Down/Commandsstring (No Trailing Backslash)
    %FILEEXTExtension OnlyCurrent SessionUp/Down/Commandsstring
    %FILEFULLNAMEFully Qualified FilenameCurrent SessionUp/Down/Commandsstring (includes leading ".")
    %FILENAMEFilename OnlyCurrent SessionUp/Down/Commandsstring
    %FILENAME_8.3Filename Only (FAT32)Current SessionUp/Down/Commandsstring
    %FILENOEXTFilename without ExtensionCurrent SessionUp/Down/Commandsstring
    %FILEPATHDirectory OnlyCurrent SessionUp/Down/Commandsstring (Incl Trailing Slash)
    %FILEPATH_8.3Directory Only (FAT32)Current SessionUp/Down/Commandsstring
    %FILESIZESize of FileCurrent SessionUp/Down/CommandsBytes
    %FILETIMEFile Creation TimeCurrent SessionsUp/DownLocale Specific
    %FILETIME_24HFile Creation TimeCurrent SessionsUp/Downhh:mm:ss
    %FILETIME_EXFile Creation TimeCurrent SessionsUp/Downhhmmss
    %FTOTNumber of Files TransferredAll SessionsUp/Downinteger
    %FTOTALLNumber of Files TransferredAll SessionsUp/Downinteger
    %FUPNumber of Files TransferredCurrent SessionUploadedinteger
    %FUPALLNumber of Files TransferredAll SessionsUploadedinteger
    %GBDOWNData Transferred by FTP-AccountCurrent SessionDownloadGiBytes
    %GBDOWNALLData Transferred by FTP-AccountAll SessionsDownloadGiBytes
    %GBTOTData Transferred by FTP-AccountAll SessionsUp/DownGiBytes
    %GBUPData Transferred by FTP-AccountCurrent SessionUploadGiBytes
    %GBUPALLData Transferred by FTP-AccountAll SessionsUploadGiBytes
    %KBDOWNData Transferred by FTP-AccountCurrent SessionDownloadKiBytes
    %KBDOWNALLData Transferred by FTP-AccountAll SessionsDownloadKiBytes
    %KBTOTData Transferred by FTP-AccountAll SessionsUp/DownKiBytes
    %KBUPData Transferred by FTP-AccountCurrent SessionUploadKiBytes
    %KBUPALLData Transferred by FTP-AccountAll SessionsUploadKiBytes
    %LOCALIPIP AddressSystemObtained from Networkstring
    %LOGFILECurrent Log-FileSoftware SettingsManagement -> Logging -> Log Settingsstring
    %LOGFILEOLDPrevious Log-FileSoftware SettingsObtained from Softwarestring
    %MAXUSERSMax Number of FTP-ClientsSoftware SettingsManagement -> Settings -> Generalinteger
    %MBDOWNData Transferred by FTP-AccountCurrent SessionDownloadMiBytes
    %MBDOWNALLData Transferred by FTP-AccountAll SessionsUp/DownMiBytes
    %MBTOTData Transferred by FTP-AccountAll SessionsUp/DownMiBytes
    %MBUPData Transferred by FTP-AccountCurrent SessionUploadMiBytes
    %MBUPALLData Transferred by FTP-AccountAll SessionsUploadMiBytes
    %PCOSVEROS VersionSystemObtained from OSstring
    %PCPROCCPUSystemObtained from OSstring
    %PCRAMRAMSystemObtained from OSstring
    %S_IPServer IP delimited by commasSystemObtained from OSstring
    %SERVERDATECurrent DateSystemObtained from OSLocale Specific
    %SERVERDAYSUptime DaysSoftware StateObtained from Softwareinteger
    %SERVERGBALLData TransferredSoftware Install DateUp/DownGiBytes
    %SERVERGBDOWNData TransferredSoftware Install DateDownloadedGiBytes
    %SERVERGBUPData TransferredSoftware Install DateUploadedGiBytes
    %SERVERHOURSUptime HoursSoftware StateObtained from Softwareinteger
    %SERVERIPIP AddressSystemObtained from OSstring
    %SERVERKBALLData TransferredSoftware Install DateUp/DownKiBytes
    %SERVERKBDOWNData TransferredSoftware Install DateDownloadedKiBytes
    %SERVERKBUPData TransferredSoftware Install DateUploadedKiBytes
    %SERVERLOCALHOSTServer Local-HostnameSystemObtained from Networkstring
    %SERVERMBALLData TransferredSoftware Install DateUp/DownMiBytes
    %SERVERMBDOWNData TransferredSoftware Install DateDownloadedMiBytes
    %SERVERMBUPData TransferredSoftware Install DateUploadedMiBytes
    %SERVERMINSUptime MinutesSoftware StateObtained from Softwareinteger
    %SERVERSECSUptime SecondsSoftware StateObtained from Softwareinteger
    %SERVERSPEEDData TransferredSoftware Install DateUp/DownBytes/Sec
    %SERVERSPEEDKBData TransferredSoftware Install DateUp/DownKiBytes/Sec
    %SERVERSPEEDMBData TransferredSoftware Install DateUp/DownMiBytes/Sec
    %SERVERTIMECurrent TimeSystemObtained from OSHH:MM:SS
    %SERVERTIMEUPUptime Since RestartSoftware StateObtained from Software99days 23:59:59
    %SERVERTOTUPTIMETotal Uptime in SecondsSoftware StateObtained from Softwareinteger
    %SERVERVERSIONVersion of FTP-ServerSoftware StateAboutstring
    %SESSIONAVGAverage number of filesSoftware Restart DateUp/Downinteger
    %SESSIONFILESALLFiles TransferredSoftware Restart DateUp/Downinteger
    %SESSIONFILESDOWNFiles TransferredSoftware Restart DateDownloadedinteger
    %SESSIONFILESUPFiles TransferredSoftware Restart DateUploadedinteger
    %SESSIONGBALLData TransferredSoftware Restart DateUp/DownGiBytes
    %SESSIONGBDOWNData TransferredSoftware Restart DateDownloadedGiBytes
    %SESSIONGBTOTALData TransferredSoftware Restart DateAll Data + Protocol BytesGiBytes
    %SESSIONGBUPData TransferredSoftware Restart DateUploadedGiBytes
    %SESSIONKBALLData TransferredSoftware Restart DateUp/DownKiBytes
    %SESSIONKBDOWNData TransferredSoftware Restart DateDownloadedKiBytes
    %SESSIONKBTOTALData TransferredSoftware Restart DateAll Data + Protocol BytesKiBytes
    %SESSIONKBUPData TransferredSoftware Restart DateUploadedKiBytes
    %SESSIONMBALLData TransferredSoftware Restart DateUp/DownMiBytes
    %SESSIONMBDOWNData TransferredSoftware Restart DateDownloadedMiBytes
    %SESSIONMBTOTALData TransferredSoftware Restart DateAll Data + Protocol BytesMiBytes
    %SESSIONMBUPData TransferredSoftware Restart DateUploadedMiBytes
    %SITEWHOListing of other online clientsSoftware StateObtained from Softwarestring
    %TIMECurrent TimeSystemObtained from OSHH:MM:SS
    %TIME_24HCurrent TimeSystemObtained from OSHH:MM:SS
    %TIME_EXCurrent TimeSystemObtained from OSHHMMSS
    %TMINMinutes since connectedCurrent SessionObtained from Softwareinteger
    %TOPALLMost Frequently Accessed FilesAll TimeManagement -> Settings -> Stat Generatorinteger
    %TOPDAYMost Frequently Accessed FilesDayManagement -> Settings -> Stat Generatorinteger
    %TOPMONTHMost Frequently Accessed FilesMonthManagement -> Settings -> Stat Generatorinteger
    %TOPWEEKMost Frequently Accessed FilesWeekManagement -> Settings -> Stat Generatorinteger
    %TSECSeconds since connectedCurrent SessionObtained from Softwareinteger
    %UCURRENTDIRCurrent Working DirectoryCurrent SessionCurrent Working Directorystring
    %UFILESPEEDLast Transfer SpeedCurrent SessionObtained from SoftwareBytes
    %UFILESPEEDKBLast Transfer SpeedCurrent SessionObtained from SoftwareKiBytes
    %UFILESPEEDMBLast Transfer SpeedCurrent SessionObtained from SoftwareMiBytes
    %UHOMEUser Home DirectoryCurrent SessionObtained from Softwarestring
    %UHOSTNAMEHostname of IP AddressCurrent SessionObtained from Networkahost.adomain.com
    %UIADDRESSUser Account: AddressUser SettingsUser Manager -> Additional -> Contact Infostring
    %UICITYUser Account: CityUser SettingsUser Manager -> Additional -> Contact Infostring
    %UIDUser Account: IDUser SettingsUser Manager -> Additional -> Contact Infostring
    %UIEMAILUser Account: EmailUser SettingsUser Manager -> Additional -> Contact Infostring
    %UIFAXUser Account: FaxUser SettingsUser Manager -> Additional -> Contact Infostring
    %UINAMEUser Account: NameUser SettingsUser Manager -> Additional -> Contact Infostring
    %UINOTESUser Account: NotesUser SettingsUser Manager -> Additional -> Contact Infostring
    %UIPIP Address (same as %CLIENTIP)Current SessionObtained from Network192.168.0.1
    %UIPHONEHOMEUser Account: Phone (Home)User SettingsUser Manager -> Additional -> Contact Infostring
    %UIPHONEWORKUser Account: Phone (Work)User SettingsUser Manager -> Additional -> Contact Infostring
    %UNAMEAccount-Name (same as %CLIENTNAME)Current SessionUser Manager -> Login -> Group Nameaaccountname
    %UQUOTAQuota: Current UsageCurrent SessionUser Manager -> Private P2PBytes
    %UQUOTACURRENTGBQuota: Current UsageCurrent SessionUser Manager -> Private P2PGiBytes
    %UQUOTACURRENTKBQuota: Current UsageCurrent SessionUser Manager -> Private P2PKiBytes
    %UQUOTACURRENTMBQuota: Current UsageCurrent SessionUser Manager -> Private P2PMiBytes
    %UQUOTAMAXQuota: Max AvailCurrent SessionUser Manager -> Private P2PBytes
    %UQUOTAMAXGBQuota: Max AvailCurrent SessionUser Manager -> Private P2PGiBytes
    %UQUOTAMAXKBQuota: Max AvailCurrent SessionUser Manager -> Private P2PKiBytes
    %UQUOTAMAXMBQuota: Max AvailCurrent SessionUser Manager -> Private P2PMiBytes
    %URATIOPrivate P2P: Current RatioCurrent SessionUp/Downfloat
    %URATIOCREDITPrivate P2P: Current CreditCurrent SessionDownloadBytes
    %URATIOCREDITGBPrivate P2P: Current CreditCurrent SessionDownloadGiBytes
    %URATIOCREDITKBPrivate P2P: Current CreditCurrent SessionDownloadKiBytes
    %URATIOCREDITMBPrivate P2P: Current CreditCurrent SessionDownloadMiBytes
    %URATIODOWNPrivate P2P: Current RatioCurrent SessionDownloadfloat
    %URATIOUPPrivate P2P: Current RatioCurrent SessionUploadfloat
    %USPEEDLIMITMax Allowed BandwidthUser AccountUp/Downinteger
    %UTIMEOUTCurrent Timeout for User-AccountUser AccountN/Ainteger
  • FEATURE: “reload” command-line parameter

    This HOWTO video shows the process of executing the “reload” command at the command line to reload changes made to the USERS file.

    1) BPS currently running as a SERVICE
    2) Logging into BPS using “ftp.exe”
    3) While the ftp-client is still connected
    4) Change the “bpftpserver-users.ini” and edit the password
    5) Issue the “bpftpserver -reload” command
    6) BPS launches another instance to instruct the current instance to reload the configuration
    7) The original ftp-client is still connected
    8) Disconnect original ftp-client and try to login as old password (doesn’t work, since it was changed)
    9) Try to login as the new password, it works.

    HOWTO: Add Anonymous ftp-user to BPFTP Server

    1) Switch to "User Manager" 2) Click "Add User" 3) Enter the name for the account as "anonymous"
    1) Switch to “User Manager”
    2) Click “Add User”
    3) Enter the name for the account as “anonymous”
    1) Switch to "Login" 2) Turn OFF the requirement for a "Password" for the account...
    1) Switch to “Login”
    2) Turn OFF the requirement for a “Password” for the account…
    1) Switch to "Access" 2) Right-Click in the empty part of the window. 3) Click Add.
    1) Switch to “Access”
    2) Right-Click in the empty part of the window.
    3) Click Add.
    1) Choose the directory you want the anonymous user to access. Recommend: c:\ftp\anonymous
    1) Choose the directory you want the anonymous user to access.
    Recommend: c:\ftp\anonymous
    1) It's recommended that the anonymous user have the following rights to only allow the "uploading" of files to your ftp-server. TIP: This will keep people from using your ftp-server as a "dump-site" for trading of nefarious files. 2) Click "Save and Close"
    1) It’s recommended that the anonymous user have the following rights to only allow the “uploading” of files to your ftp-server.
    TIP: This will keep people from using your ftp-server as a “dump-site” for trading of nefarious files.
    2) Click “Save and Close”

    ROUTERS: Inactivity-Timeout and Keep-Alives

    Inactivity-Timeout and Keep-Alives

    426 Connection closed; transfer aborted. Error #10057

    During a data-transfer (directory-listings or file-transfers), the control-connection (tcp/ip default 21, used to login and issue commands) is IDLE.

    When this control-connection is IDLE, other pieces of networking-equipment between yourself and the ftp-client could choose to close idle connections with a function called “Inactivity Timeout”. This “Inactivity Timeout” can be found in the ftp-client’s first hop to the internet (their wifi/nat router), it could be found in the upstream routers through their ISPs, it can also be found in your own first-hop to the internet. Basically they are everywhere, but the first place is to set this value in your own hardware that provides routing to the internet (example below).

    To combat this, the NOOP command (aka Keep-Alive) was made for ftp-clients in the RFC spec. During lengthy transfers, the ftp-client needs to send a NOOP command across the ftp-control-connection; this will keep the connection active with periodic “chatter”.

    NOOP command listed in RFC spec of commands:
    http://en.wikipedia.org/wiki/List_of_FTP_commands

    Inactivity Timeout: OpenWRT
    Inactivity Timeout: OpenWRT
    Inactivity Timeout: OpenWRT (CONSOLE)
    Inactivity Timeout: OpenWRT (CONSOLE)

    FEATURE: Allow Multiple Instances

    “Allow Multiple Instances” is a new function as of v2014.1.0.15 that allows you to run multiple copies of the software, each with it’s own set of Settings, Users/Groups. This is very useful for organizations which provide ftp-services for their clients and would like to keep the groups of ftp-users in their own separate instance.

    It’s also very useful for controlling bandwidth used by each instances, as multiple IPs can be bound to the computer’s NIC, allowing for fine-grained control of bandwidth, traffic shapping, etc in their networking-hardware; each instance would then use the “Multi-IP” setting to only listen to specific IPs. (Management -> Settings -> Multi-IP)

    Allow Multiple Instances: Create Shortcut
    Allow Multiple Instances: Create Shortcut
    Allow Multiple Instances: Edit Shortcut
    Allow Multiple Instances: Edit Shortcut
    Allow Multiple Instances: Name Shortcut
    Allow Multiple Instances: Name Shortcut
    Allow Multiple Instances: Shortcut Properties
    Allow Multiple Instances: Shortcut Properties
    Allow Multiple Instances: Shortcut Double-Click to Start
    Allow Multiple Instances: Shortcut Double-Click to Start
    Allow Multiple Instances: Import, Automatic Search for Installations
    Allow Multiple Instances: Import, Automatic Search for Installations
    Allow Multiple Instances: Import, Manually from Specified Folder
    Allow Multiple Instances: Import, Manually from Specified Folder
    Allow Multiple Instances: Example Files for Import
    Allow Multiple Instances: Example Files for Import
    Allow Multiple Instances: Importing Example Files
    Allow Multiple Instances: Importing Example Files
    Allow Multiple Instances: Confirmation of Instance Storage-Path
    Allow Multiple Instances: Confirmation of Instance Storage-Path
    Allow Multiple Instances: Verification of Instance Storage-Path in Windows Explorer
    Allow Multiple Instances: Verification of Instance Storage-Path in Windows Explorer

    TIPS: Poor Network Performance in Windows under Virtual Machine

    TCP Chimney Offload, Receive Side Scaling, and Network Direct Memory Access

    Sounds super awesome huh?!? But what is it?

    I have around 20 virtual-machines, running under VMware Workstation, they allow me to test BulletProof FTP Server for Windows under all the different versions, editions and flavors of Windows that now exist. It’s exhausting actually, mostly because I need to perform Windows Updates every few months.

    The host for all these virtual-machines, as well as my development, runs on a custom built ASUS Rampage III with Intel Core i7 970 with 6/12 physical/logical cores, 24 GB DDR2 RAM, storage is via ARC-1880i in RAID0+1 of 4x Samsung SSD. Why does any of that matter? Because, I’m trying to underscore that it’s a blazing fast computer.

    But I noticed some network-speed problems, specially under Windows 2008 R1 and R2. Part of the issue was that “vmware tools” on the machines were not updated (do this asap, it will run much better), but Windows Update was taking almost an hour; just to see if there were updates. I dig some digging and found a bunch of articles, linked below. If you are having network-performance issues, please look to see if you are affected by this feature…

    NOTE: TCP Chimney Offload does not appear to be a feature that is unique to Windows 2008, as I’ve found it set to “automatic” in default installs of Windows 7, 8, Server 2008; “disabled” in Vista.

    HOWTO: Is the MAGIC on?

    c:\] netsh int tcp show global
    Querying active state...

    TCP Global Parameters
    ----------------------------------------------
    Receive-Side Scaling State : enabled
    Chimney Offload State : automatic
    NetDMA State : enabled
    Direct Cache Acess (DCA) : disabled
    Receive Window Auto-Tuning Level : normal
    Add-On Congestion Control Provider : none
    ECN Capability : disabled
    RFC 1323 Timestamps : disabled
    ** The above autotuninglevel setting is the result of Windows Scaling heuristics
    overriding any local/policy configuration on at least one profile.

    HOWTO: Turn Off the MAGIC

    c:\] netsh interface tcp set global rss=disabled chimney=disabled autotuninglevel=disabled
    Ok.

    Information about the TCP Chimney Offload, Receive Side Scaling, and Network Direct Memory Access features in Windows Server 2008
    http://support.microsoft.com/kb/951037

    Poor network performance on Windows 2008 Server virtual machine (1009517)
    http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1009517

    Windows Server 2008 R2 Windows updates very slow download time
    http://social.technet.microsoft.com/Forums/windowsserver/en-US/ca80c34c-a4e5-4027-880a-9646aa80b352/windows-server-2008-r2-windows-updates-very-slow-download-time

    NETSH to disable advanced features
    http://social.technet.microsoft.com/Forums/exchange/en-US/968afa2d-e326-49f2-b6a8-1f264e82beea/netsh-to-disable-advanced-features?forum=exchange2010

    The effect of TCP Chimney offload on viewing network traffic
    http://blogs.technet.com/b/networking/archive/2008/11/14/the-effect-of-tcp-chimney-offload-on-viewing-network-traffic.aspx

    HOWTO: Purchase an Upgrade to your License

    BulletProof FTP Server is licensed via different Editions and include unique features.

    As an example, while using the software you encounter a feature that isn’t available in your current license. You purchased the “Professional Edition”, but you recently discovered the very powerful “Management -> Events Manager”, and you’d like to email someone whenever a file is uploaded.

    No problem! We’ve built the software to allow upgrading your license and we’ll apply 100% of your original purchase towards the upgrade! This allows you the flexibility to scale up, at anytime, without a penalty!

    Upgrade License (Step 1 of 8)

    Upgrade License (Step 2 of 8)

    Upgrade License (Step 3 of 8)

    Upgrade License (Step 4 of 8)

    Upgrade License (Step 5 of 8)

    Upgrade License (Step 6 of 8)

    Upgrade License (Step 7 of 8)

    The "Technical Support Permission Key" is: 902djlx0qojs
    The “Technical Support Permission Key” is:
    902djlx0qojs

    KNOWN PROBLEM: Slow Startup after Several Weeks of Heavy Usage

    KNOWN PROBLEM: Slow Startup after Several Weeks of Heavy Usage

    In order to provide information on Server Monitor -> Files Uploaded/Downloaded, the software writes entries into secondary files stored in the Storage-Location directory. These files contain one-line per file uploaded/downloaded and as the usage of the program increases, these files get bigger and bigger. Start-Up of the program will be effected as these files increase in size and the time to load the file into memory increases (and the footprint in memory increases).

    Server Monitor -> Files Downloaded/Uploaded
    Server Monitor -> Files Downloaded/Uploaded

    To resolve this problem, it’s necessary to manually archive these files to another location; this will “reset” the statistics found in Server Monitor -> Files Uploaded/Downloaded.

    You can manually archive these files:
    1) Closing BulletProof FTP Server and ensure the SERVICE is not current running/active
    2) Use My Computer or a Command-Prompt and navigate to the Storage-Location.
    3) Locate the files named below and move them to some archive directory of your choosing (or delete them):

    bpftpserver-common-downloads.ini
    bpftpserver-common-uploads.ini

    4) Start BulletProof FTP Server

    NOTE: In a later version, this will be resolved with a re-organization and re-write of this function in order to save the information in a way that doesn’t affect performance.

    HOWTO: Enable Debug-Mode

    This graphics details a list of 4 steps used to toggle the "DEBUG-MODE" in BulletProof FTP Server.
    This graphics details a list of 4 steps used to toggle the “DEBUG-MODE” in BulletProof FTP Server. Using the DEBUG-MODE in BulletProof FTP Server will cause the program to write extensive debugging information to a file on the desktop. This file can then be emailed to us, along with a description of the exact steps used to produce the error. Using this information, we can trace through all of the logic in the program in order to identify the problem and provide a solution.