EnglishFrenchSpanish

Ad


OnWorks favicon

afclient - Online in the Cloud

Run afclient in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command afclient that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


afclient - active port forwarder client

SYNOPSIS


afclient [ options ] -n servername -p portnum

DESCRIPTION


Afclient is a port forwarding program designed to be efficient and easy
to use. It connects to afserver to listenport (default listenport is
50126) and after a successful authorization afclient redirects all the
data to the specified destination host:port.

EXAMPLES


afclient -n servername -p 22
program connects to servername:50126 and redirects data to local port
22 (becomes a daemon)

afclient -n servername -p 22 -v
the same as above, but verbose mode is enabled (program won't enter
daemon mode)

afclient -n servername -r
program connects to servername:50126 in remote administration mode

OPTIONS


Basic options

-n, --servername NAME
name of the host, where afserver is running (required)

-m, --manageport PORT
manage port number - server must be listening on it (default: 50126)

-d, --hostname NAME
the name of this host/remote host - the final destination of the
packets (default: the name returned by hostname function)

-p, --portnum PORT
the port we are forwarding connection to (required)

--localname NAME
local machine name for connection with afserver (used to bind socket
to different interfaces)

--localport NAME
local port name for connection with afserver (used to bind socket to
different addressees)

--localdesname NAME
local machine name for connections with destination application (used
to bind socket to different interfaces)

-V, --version
display version number

-h, --help
prints help screen

Authorization

-i, --id STRING
sends the id string to afserver

--pass PASSWORD
set the password used for client identification (default: no
password)

--ignorepkeys
ignore invalid server's public keys

Configuration

-k, --keyfile FILE
the name of the file with RSA key (default: client.rsa)

-c, --cerfile
the name of the file with certificate (default: no certificate used)

-f, --cfgfile FILE
the name of the file with the configuration for the afclient

-s, --storefile
the name of the file with stored public keys (default: known_hosts)

-D, --dateformat FORMAT
format of the date printed in logs (see 'man strftime' for details)
(default: %d.%m.%Y %H:%M:%S)

-K, --keep-alive N
send keepalive packets every N seconds (default: not send keepalive
packets)

Auto-reconnection

--ar-start
enable auto-reconnection when afserver is not reachable on start
(default: disabled)

--ar-quit
enable auto-reconnection after normal afserver quit (default:
disabled)

--noar
disable auto-reconnection after premature afserver quit (default:
enabled)

-A, --ar-tries N
try N times to reconnect (default: unlimited)

-T, --ar-delay N
wait N seconds between reconnect tries (default: 5)

Modes

-u, --udpmode
udp mode - client will use udp protocol to communicate with the
hostname:portnum

-U, --reverseudp
reverse udp forwarding. Udp packets will be forwarded from
hostname:portnum to the server name:manageport

-r, --remoteadmin
remote administration mode. (using '-p PORT' will force afclient to
use port rather than stdin-stdout)

Logging

-o, --log LOGCMD
log choosen information to file/socket

-v, --verbose
to be verbose - program won't enter the daemon mode (use several
times for greater effect)

IP family

-4, --ipv4
use ipv4 only

-6, --ipv6
use ipv6 only

Modules

-l, --load
load a module for user's packets filtering

-L, --Load
load a module for service's packets filtering

HTTP/HTTPS PROXY

-S, --use-https
use https proxy instead of http proxy

-P, --proxyname
the name of the machine with proxy server

-X, --proxyport
the port used by proxy server (default: 8080)

-C, --pa-cred U:P
the user (U) and password (P) used in proxy authorization

-B, --pa-t-basic
the Basic type of proxy authorization (default)

REMOTE ADMINISTRATION


Remote administration mode is enabled by '-r, --remoteadmin' option.
Required options: '-n, --servername NAME'

After successful authorization stdin/stdout are used to communicate
with user. All the commands parsing is done by afserver. Commands
guaranteed to be available:

help
display help

lcmd
lists available commands

quit
quit connection

For list of all available commands take a look at afserver(1).

When '-p, --portnum PORT' is used, afclient listens for connection from
user at NAME:PORT. NAME is set by '-d, --hostname' option or hostname()
function, when the option is missing.

When user quits (close the connection or send 'quit' command), afclient
exits.

LOGCMD FORMAT


LOGCMD has the following synopsis: target,description,msgdesc

Where target is file or sock

description is filename or host,port

and msgdesc is the subset of:

LOG_T_ALL, LOG_T_USER, LOG_T_CLIENT, LOG_T_INIT, LOG_T_MANAGE,
LOG_T_MAIN, LOG_I_ALL, LOG_I_CRIT, LOG_I_DEBUG, LOG_I_DDEBUG,
LOG_I_INFO, LOG_I_NOTICE, LOG_I_WARNING, LOG_I_ERR

written without spaces.

Example:

file,logfile,LOG_T_USER,LOG_T_CLIENT,LOG_I_INFO,LOG_I_NOTICE

MODULES


Afclient can use external modules for user's packets filtering ('-l,
--load') and service's packets filtering ('-L, --Load'). Module file
has to declare three functions:

char* info(void);

info() return values:
- info about module

Example:

char*
info(void)
{
return "Module tester v0.1";
}

int allow(char* host, char* port);

allow() return values:
0 - allow to connect
!0 - drop the connection

Example:

int
allow(char* host, char* port)
{
return 0; /* allow to connect */
}

int filter(char* host, unsigned char* message, int* length);

filter() return values:
0 - allow to transfer
1 - drop the packet
2 - drop the connection
3 - release the module
4 - drop the packet and release the module
5 - drop the connection and release the module

Example:

int
filter(char* host, unsigned char* message, int* length)
{
int i;
for (i = 1; i < *length; ++i) {
if (message[i-1] == 'M') {
if (message[i] == '1') {
return 1; /* ignored */
}
if (message[i] == '2') {
return 2; /* dropped */
}
if (message[i] == '3') {
return 3; /* release */
}
if (message[i] == '4') {
return 4; /* ignored + release */
}
if (message[i] == '5') {
return 5; /* dropped + release */
}
}
}
return 0; /* allow to transfer */
}

Modules have to be compiled with -fPIC -shared options.

Use afclient online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    XISMuS
    XISMuS
    ATTENTION: Cumulative update 2.4.3 has
    been released!! The update works for any
    previous 2.x.x version. If upgrading
    from version v1.x.x, please download and
    i...
    Download XISMuS
  • 2
    facetracknoir
    facetracknoir
    Modular headtracking program that
    supports multiple face-trackers, filters
    and game-protocols. Among the trackers
    are the SM FaceAPI, AIC Inertial Head
    Tracker ...
    Download facetracknoir
  • 3
    PHP QR Code
    PHP QR Code
    PHP QR Code is open source (LGPL)
    library for generating QR Code,
    2-dimensional barcode. Based on
    libqrencode C library, provides API for
    creating QR Code barc...
    Download PHP QR Code
  • 4
    Freeciv
    Freeciv
    Freeciv is a free turn-based
    multiplayer strategy game, in which each
    player becomes the leader of a
    civilization, fighting to obtain the
    ultimate goal: to bec...
    Download Freeciv
  • 5
    Cuckoo Sandbox
    Cuckoo Sandbox
    Cuckoo Sandbox uses components to
    monitor the behavior of malware in a
    Sandbox environment; isolated from the
    rest of the system. It offers automated
    analysis o...
    Download Cuckoo Sandbox
  • 6
    LMS-YouTube
    LMS-YouTube
    Play YouTube video on LMS (porting of
    Triode's to YouTbe API v3) This is
    an application that can also be fetched
    from
    https://sourceforge.net/projects/lms-y...
    Download LMS-YouTube
  • More »

Linux commands

  • 1
    a2crd
    a2crd
    a2crd - attempts the conversion of
    lyrics file into chordii input ...
    Run a2crd
  • 2
    a2j
    a2j
    a2j - Wrapper script to simulate
    a2jmidid's non-DBUS behaviour though
    a2jmidid actually being in DBUS mode ...
    Run a2j
  • 3
    coqdoc
    coqdoc
    coqdoc - A documentation tool for the
    Coq proof assistant ...
    Run coqdoc
  • 4
    coqide
    coqide
    coqide - The Coq Proof Assistant
    graphical interface ...
    Run coqide
  • 5
    g.gisenvgrass
    g.gisenvgrass
    g.gisenv - Outputs and modifies the
    user�s current GRASS variable settings.
    Prints all defined GRASS variables if no
    option is given. KEYWORDS: general,
    settin...
    Run g.gisenvgrass
  • 6
    g.guigrass
    g.guigrass
    g.gui - Launches a GRASS graphical user
    interface (GUI) session. Optionally
    updates default user interface settings.
    KEYWORDS: general, GUI, user interface ...
    Run g.guigrass
  • More »

Ad