Skip Headers
Oracle® Beehive Installation Guide
Release 2 (2.0.1.8) for Microsoft Windows x86

Part Number E16642-07
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

19 Configuring FTP

This chapter describes how to perform the following tasks:

Enabling Active Mode FTP

By default, active mode FTP (FTP in PORT mode) connections to your Oracle Beehive instances are disabled. Follow these steps to enable them:

  1. Set the ActiveModeEnabled property in the _FtpService property to true:

    list_properties --component _FtpService
     
    -----------------------+---------------------
    Property name          | Property value
    -----------------------+---------------------
    ActiveModeEnabled      | false
    -----------------------+---------------------
    Alias                  | _FtpService
    
    ...
    
    beectl modify_property
      --component _FtpService
      --name ActiveModeEnabled
      --value true
    
  2. Activate changes:

    beectl activate_configuration
    

    Note:

    If the beectl activate_configuration command asks you to run the beectl modify_local_configuration_files command, then run this command. It will then ask you do run the command on all your other instances. Run this command on all your instances.

Opening Ports Required by Oracle Beehive for FTP

If your Oracle Beehive instance is behind a firewall, ensure that the following ports are open in your firewall to enable FTP connections:

Table 19-1 Ports Required Open

Default Port Number Property Name Description

2121

Port

The FTP server listens at this port to accept new connections from clients.

2120

DefaultDataPort

Port used by the FTP server in PORT (ACTIVE) mode to make active connections (outbound connections) to clients.

12121

DataConnectionPort

In PASSIVE mode, the FTP server listens on a range of ports starting from DataConnectionPort to create new data connections, which will be used for data transfer operations.

The property MaxDCPortCount indicates the number of ports in the range.

For example, if the value of DataConnectionPort is 12121 and MaxDCPortCount is 10, then ensure that all the ports from 12121 to 12130 (inclusively) are open in your firewall.


You may change the value of these ports as well as the value of MaxDCPortCount.

To retrieve a list of all available ports, call the beectl list_ports command (the --format option is optional):

beectl list_ports --format xml

...
   <row>
      <column name="Protocol">FTP</column>
      <column name="Listening Port">2121</column>
      <column name="Virtual Port">2121</column>
      <column name="Defining Component">_FtpService</column>
      <column name="Property Name">Port</column>
      <column name="Listening Component">
        BTI_instance1.example.com</column>
   </row>
   <row>
      <column name="Protocol"></column>
      <column name="Listening Port">2120</column>
      <column name="Virtual Port"></column>
      <column name="Defining Component">_FtpService</column>
      <column name="Property Name">DefaultDataPort</column>
      <column name="Listening Component">
        BTI_instance1.example.com</column>
   </row>
   <row>
      <column name="Protocol"></column>
      <column name="Listening Port">12121</column>
      <column name="Virtual Port"></column>
      <column name="Defining Component">_FtpService</column>
      <column name="Property Name">DataConnectionPort</column>
      <column name="Listening Component">
        BTI_instance1.example.com</column>
   </row>
...

To retrieve a list of all the properties for the FTP service, call the beectl list_properties command:

beectl list_properties --component _FtpService

---------------------------+----------------------------------------------------
Property name              | Property value                                     
---------------------------+----------------------------------------------------
Alias                      | _FtpService                                        
---------------------------+----------------------------------------------------
ChannelSecurity            | PLAIN_AND_TLS                                      
---------------------------+----------------------------------------------------
DMSInstrumentation         | false                                              
---------------------------+----------------------------------------------------
DataConnectionPort         | 12121                                              
---------------------------+----------------------------------------------------
DefaultCommandCharacterset | UTF-8                                              
---------------------------+----------------------------------------------------
DefaultDataPort            | 2120                                               
---------------------------+----------------------------------------------------
FtpServerEnabled           | true                                               
---------------------------+----------------------------------------------------
InternalIP                 | DEFAULT                                            
---------------------------+----------------------------------------------------
LightweightThreadCount     |                                                    
---------------------------+----------------------------------------------------
ListeningPoint             | DEFAULT                                            
---------------------------+----------------------------------------------------
MaxDCPortCount             | 200                                                
---------------------------+----------------------------------------------------
Port                       | 2121                                               
---------------------------+----------------------------------------------------
ServiceApplication         | svcapp_ftp                                         
---------------------------+----------------------------------------------------
ServiceInstances           | instance_ftp_BEEAPP_site1.example.com
---------------------------+----------------------------------------------------
SessionTimeout             | 900000                                             
---------------------------+----------------------------------------------------
Site                       | _CURRENT_SITE                                      
---------------------------+----------------------------------------------------
Status                     | ENABLED                                            
---------------------------+----------------------------------------------------
UploadBufferSize           | 260096                                             
---------------------------+----------------------------------------------------

To change a property (such as the Port property), call the beectl modify_property command on all of your instances:

beectl modify_property
  --component _FtpService
  --name Port
  --value <new port value>

To save the changes and activate them, call the following command:

beectl activate_configuration

Note:

If the beectl activate_configuration command asks you to run the beectl modify_local_configuration_files command, then run this command. It will then ask you do run the command on all your other instances. Run this command on all your instances.

Configuring Passive Mode FTP

You can configure the Oracle Beehive FTP service so that the IP address it sends as a PASV response depends on where the client initiated the passive mode FTP connection, either from within your network (your intranet) or outside your enterprise (the Internet).

This involves configuring two network interface groups: an internal one and an external one. A network interface group is the point of interconnection between BTI Oracle Beehive Transport Interface) and a private or public network. A network interface group is mapped to a list of network interfaces.

Consequently, you may configure an internal network interface group and associate it with an IP address of your load balancer that is facing your intranet, and an external network interface group with another load balancer facing the Internet. If the FTP service accepts a client's passive mode FTP connection, the service will send the IP address of the appropriate load balancer, depending on where the client's FRP request originated (internally or externally).

Follow these steps to configure an internal and external network group and the FTP services so that it recognizes these groups:

  1. Specify the internal and external network groups with the following commands. This command assumes that 140.87.24.44 is the IP address of your Internet-facing load balancer and 127.0.0.1 the IP address of your intranet-facing load balancer:

    ./beectl list_components --type BtiRedirector
    
    ----------------+---------------------------------------------------------
    Component type  | Component identifier                            
    ----------------+---------------------------------------------------------
    BtiRedirector   | BTI_redirector_site1.example.com  
    ----------------+--------------------------------------------------------
    
    beectl modify_property
      --name AdditionalExecArgs
      --value ESCAPE:-interface-groups
      --value "EXTERNAL=140.87.26.44;INTERNAL=127.0.0.1"
      --component BTI_redirectory_site1.example.com
    
  2. Ensure that the BTI redirector is running with your new configuration with the ps command:

    ps -Afw | grep redir
    00:00:00 /my_oracle_home/beehive/bin/redirector -log-dir
    /my_oracle_home/beehive/logs/bti -log-level all -xsl-dir
    /my_oracle_home/beehive/xsl -ipc-path
    /tmp/BTI-f871faff-90d3-4d5f-a94d-b13124072092 -server-port 21300 -bp-id-base
    131072 -interface-groups EXTERNAL=140.87.26.44;INTERNAL=127.0.0.1
    -bti-process 0 -bti-marker @@f871faff-90d3-4d5f-a94d-b13124072092
    -btimon-port 3042 -btimon-token 1000000000000002
    
  3. Depending on your deployment, set one or more of the following parameters in the FTP service:

    Table 19-2 FTP Parameters

    Parameter Description

    DataconnectionPort

    Starting port number from which the FTP server accepts data connections in passive mode.

    MaxDcPortCount

    Maximum number of data ports used for passive mode listening.

    ListeningPoint

    Controls the response of the PASV command. Valid values for this parameter are INTERNAL, EXTERNAL, DEFAULT, and INTERNAL_AND_EXTERNAL.

    If ListeningPoint is set to DEFAULT, then the IP address of the application tier on which the FTP service is running is sent as the PASV response.

    If both ListeningPoint is set to INTERNAL and you configured a network interface group named "INTERNAL", then the IP address specified in the InternalIp address is sent as the PASV response. Otherwise, the IP address of the application tier on which the FTP service is running is sent.

    If both ListeningPoint is set to EXTERNAL and you configured a network interface group named "EXTERNAL", then the IP address specified in your virtual server is sent. Otherwise, the IP address of the application tier on which the FTP service is running is sent.

    Refer to "Installing Oracle Beehive in High Availability Environment" to configure the virtual server.

    If ListeningPoint is set to INTERNAL_AND_INTERNAL, the FTP service will behave as if ListeningPoint were set to both INTERNAL and EXTERNAL.

    InternalIp

    The IP address sent as the PASV response if ListeningPoint is set to INTERNAL (or INTERNAL_AND_EXTERNAL) and a network interface group named "INTERNAL" exists.


  4. Save the your changes and activate them, call the following command:

    beectl activate_configuration
    
  5. Redeploy the FTP service with the following commands:

    Note:

    If you change any of the FTP service parameters described in these steps (DataconnectionPort, MaxDcPortCount, ListeningPoint, or InternalIp) you must redeploy the FTP service (or restart the BEEAPP component) afterwards.
    beectl list_components --type FtpServiceInstance
     
    ---------------------+------------------------------------------------------
    Component type       | Component identifier                                
    ---------------------+------------------------------------------------------
    FtpServiceInstance   | instance_ftp_BEEAPP_site1.example.com
    ---------------------+------------------------------------------------------
     
    1 Record(s) displayed.
    
    beectl upgrade_service_instance
      --service_instance_id instance_ftp_BEEAPP_site1.example.com
    

Setting other FTP Parameters

You must redeploy the FTP service (or restart the BEEAPP component) if you change one of the following FTP service parameters:

  • DataconnectionPort

  • MaxDcPortCount

  • SessionTimeout: Amount of time between activity before the connection times out; default is 900 seconds or 15 minutes. Unit of measure is milliseconds.

  • Port

  • ListeningPoint

  • InternalIp