Annotation of elwix/config/etc/default/vtund.conf.example, revision 1.1

1.1     ! misho       1: #
        !             2: # VTun - Virtual Tunnel over TCP/IP network.
        !             3: # Copyright (C) 1998-2008  Maxim Krasnyansky <max_mk@yahoo.com>
        !             4: #
        !             5: # Cleanup of English and spelling by 
        !             6: #   Ted Rolle <ted@acacia.datacomm.com>
        !             7: #
        !             8: # Configuration file example
        !             9: # $Id: vtund.conf.example,v 1.1.2.1 2010/05/07 21:41:02 misho Exp $
        !            10: #
        !            11: # 
        !            12: # Lines which begin with '#' are comments
        !            13: #
        !            14: # File format:
        !            15: #
        !            16: # XXXXX {
        !            17: #   option param; option param;
        !            18: #   option param;
        !            19: #   ......
        !            20: # }  
        !            21: # Where XXXXX:
        !            22: #   options - General options.
        !            23: #   default - default session options.
        !            24: #   session - Session options.     
        !            25: # 
        !            26: # Options _must_ be grouped by curly braces '{' '}'.
        !            27: # Each option _must_ end with ';' 
        !            28: #
        !            29: # -----------
        !            30: # General options: 
        !            31: #
        !            32: #   type - Server type.
        !            33: #      'stand' - Stand alone server (default).
        !            34: #       'inetd' - Started by inetd.
        !            35: #       Used only by the server.
        !            36: #
        !            37: # -----------
        !            38: #   port - Server TCP port number.
        !            39: #
        !            40: # -----------
        !            41: #   bindaddr - Server listen address. Used to force vtund to bind
        !            42: #      to the specific address and port in server mode.
        !            43: #    Format:     
        !            44: #       bindaddr {
        !            45: #         option .....;
        !            46: #       };
        !            47: #
        !            48: #    'bindaddr' options:
        !            49: #
        !            50: #    iface - Use interface address as the listen address.
        !            51: #    Format:
        !            52: #       iface if_name;
        !            53: #
        !            54: #    addr - Listen address.
        !            55: #    Format:
        !            56: #       addr ip_address;
        !            57: #       addr host_name;
        !            58: #
        !            59: # -----------
        !            60: #   syslog - Syslog facility.
        !            61: #
        !            62: # -----------
        !            63: #   timeout - General VTun timeout. 
        !            64: #
        !            65: # -----------
        !            66: #   ppp  - Program for the ppp initialization.
        !            67: #
        !            68: # -----------
        !            69: #   ifconfig - Program for the net interface initialization.
        !            70: #
        !            71: # -----------
        !            72: #   route  - Program for the routing table manipulation. 
        !            73: #
        !            74: # -----------
        !            75: #   firewall - Program for the firewall setup. 
        !            76: #
        !            77: # -----------
        !            78: #  
        !            79: # Session options: 
        !            80: #
        !            81: #    passwd - Password for authentication.
        !            82: #
        !            83: # -----------
        !            84: #    type - Tunnel type.
        !            85: #       'tun'   - IP tunnel (No PPP,Ether,.. headers).
        !            86: #       'ether' - Ethernet tunnel.
        !            87: #       'tty'   - Serial tunnel, PPP, SLIP, etc.
        !            88: #       'pipe'  - Pipe tunnel.
        !            89: #       Default type is 'tty'.
        !            90: #       Ignored by the client.
        !            91: #
        !            92: # -----------
        !            93: #    device - Network device.
        !            94: #       'tapXX' - for 'ether'
        !            95: #       'tunXX' - for 'tun'
        !            96: #      By default VTun will automatically select available
        !            97: #      device.
        !            98: #
        !            99: # -----------
        !           100: #    proto - Protocol.
        !           101: #       'tcp' - TCP protocol.
        !           102: #       'udp' - UDP protocol.
        !           103: #  
        !           104: #       'tcp' is default for all tunnel types.
        !           105: #      'udp' is recommended for 'ether' and 'tun' only. 
        !           106: #      
        !           107: #       This option is ignored by the client.
        !           108: #
        !           109: # -----------
        !           110: #    persist - Persist mode. 
        !           111: #       'yes' - Reconnect to the server after connection 
        !           112: #            termination. 
        !           113: #      'no' - Exit after connection termination (default).
        !           114: #       Used only by the client.
        !           115: #
        !           116: # -----------
        !           117: #    keepalive - Enable 'yes' or disable 'no' connection
        !           118: #      keep-alive. Ignored by the client.
        !           119: #
        !           120: # -----------
        !           121: #    timeout - Connect timeout. 
        !           122: #
        !           123: # -----------
        !           124: #    compress - Enable 'yes' or disable 'no' compression. 
        !           125: #      It is also possible to specify method:
        !           126: #         'zlib' - ZLIB compression
        !           127: #         'lzo'  - LZO compression
        !           128: #      and level: 
        !           129: #         from 1(best speed) to 9(best compression)
        !           130: #      separated by ':'. Default method is 'zlib:1'.  
        !           131: #       Ignored by the client. 
        !           132: #
        !           133: # -----------
        !           134: #    encrypt - Enable 'yes' or disable 'no' encryption.
        !           135: #      It is also possible to specify a method:
        !           136: #         'blowfish128ecb' - Blowfish cipher, 128 bit key, mode ECB
        !           137: #         'blowfish128cbc' - Blowfish cipher, 128 bit key, mode CBC
        !           138: #         'blowfish128cfb' - Blowfish cipher, 128 bit key, mode CFB
        !           139: #         'blowfish128ofb' - Blowfish cipher, 128 bit key, mode OFB
        !           140: #         'blowfish256ecb' - Blowfish cipher, 256 bit key, mode ECB
        !           141: #         'blowfish256cbc' - Blowfish cipher, 256 bit key, mode CBC
        !           142: #         'blowfish256cfb' - Blowfish cipher, 256 bit key, mode CFB
        !           143: #         'blowfish256ofb' - Blowfish cipher, 256 bit key, mode OFB
        !           144: #         'aes128ecb'      - AES cipher, 128 bit key, mode ECB
        !           145: #         'aes128cbc'      - AES cipher, 128 bit key, mode CBC
        !           146: #         'aes128cfb'      - AES cipher, 128 bit key, mode CFB
        !           147: #         'aes128ofb'      - AES cipher, 128 bit key, mode OFB
        !           148: #         'aes256ecb'      - AES cipher, 256 bit key, mode ECB
        !           149: #         'aes256cbc'      - AES cipher, 256 bit key, mode CBC
        !           150: #         'aes256cfb'      - AES cipher, 256 bit key, mode CFB
        !           151: #         'aes256ofb'      - AES cipher, 256 bit key, mode OFB
        !           152: #      Default method is 'blowfish128ecb'.
        !           153: #       Ignored by the client.
        !           154: #
        !           155: # -----------
        !           156: #    stat - Enable 'yes' or disable 'no' statistics.
        !           157: #       If enabled vtund will log statistic counters every
        !           158: #      5 minutes.
        !           159: #
        !           160: # -----------
        !           161: #    speed -  Speed of the connection in kilobits/second.
        !           162: #       8,16,32,64,128,256,etc.
        !           163: #       0 means maximum possible speed without shaping.
        !           164: #       You can specify speed in form IN:OUT.
        !           165: #       IN - to the client, OUT - from the client.
        !           166: #       Single number means same speed for IN and OUT.
        !           167: #       Ignored by the client.
        !           168: #
        !           169: # -----------
        !           170: #    up - List of programs to run after connection has been 
        !           171: #      established. Used to initialize protocols, devices, 
        !           172: #      routing and firewall.
        !           173: #    Format:     
        !           174: #       up {
        !           175: #         option .....;
        !           176: #         option .....;
        !           177: #       };
        !           178: #
        !           179: #    down - List of programs to run after connection has been 
        !           180: #      terminated. Used to reset protocols, devices, routing 
        !           181: #      and firewall.
        !           182: #    Format:     
        !           183: #       down {
        !           184: #         option .....;
        !           185: #         option .....;
        !           186: #       };
        !           187: #
        !           188: #    'up' and 'down' options:
        !           189: #
        !           190: #    program - Run specified program.
        !           191: #    Format:
        !           192: #       program path arguments wait;
        !           193: #
        !           194: #       path - Full path to the program. 
        !           195: #         '/bin/sh' will be used if path was omitted.
        !           196: #
        !           197: #       arguments - Arguments to pass to the program. 
        !           198: #         Must be enclosed in double quotes. 
        !           199: #         Special characters and expansions: 
        !           200: #            ' (single quotes) -  group arguments
        !           201: #            \ (back slash) - escape character 
        !           202: #            %%(double percent) - same as %d
        !           203: #            %d - TUN or TAP device or TTY port name 
        !           204: #            %A - Local IP address
        !           205: #            %P - Local TCP or UDP port  
        !           206: #            %a - Remote IP address
        !           207: #            %p - Remote TCP or UDP port
        !           208: #
        !           209: #       wait - Wait for the program termination. 
        !           210: #
        !           211: #    ppp - Run program specified by 'ppp' statement in 
        !           212: #         'options' section.
        !           213: #    Format:
        !           214: #       ppp arguments;
        !           215: #
        !           216: #    ifconfig - Run program specified by 'ifconfig' statement in 
        !           217: #         'options' section.
        !           218: #    Format:
        !           219: #       ifconfig arguments;
        !           220: #
        !           221: #    route - Run program specified by 'route' statement in 
        !           222: #         'options' section.
        !           223: #    Format:
        !           224: #       route arguments;
        !           225: #
        !           226: #    firewall - Run program specified by 'firewall' statement in 
        !           227: #         'options' section.
        !           228: #    Format:
        !           229: #       firewall arguments;
        !           230: #
        !           231: # -----------
        !           232: #    srcaddr - Local (source) address. Used to force vtund to bind
        !           233: #      to the specific address and port in client mode.
        !           234: #    Format:     
        !           235: #       srcaddr {
        !           236: #         option .....;
        !           237: #         option .....;
        !           238: #       };
        !           239: #
        !           240: #    'srcaddr' options:
        !           241: #
        !           242: #    iface - Use interface address as the Source address.
        !           243: #    Format:
        !           244: #       iface if_name;
        !           245: #
        !           246: #    addr - Source address.
        !           247: #    Format:
        !           248: #       addr ip_address;
        !           249: #       addr host_name;
        !           250: #
        !           251: #    port - Source port.
        !           252: #    Format:
        !           253: #       port port_no;
        !           254: #
        !           255: # -----------
        !           256: #    multi - Multiple connections.
        !           257: #      'yes' or 'allow' - allow multiple connections.
        !           258: #      'no' or 'deny' - deny multiple connections.
        !           259: #      'killold' - allow new connection and kill old one.
        !           260: #       Ignored by the client.
        !           261: #
        !           262: # -----------
        !           263: # Notes:
        !           264: #   Options 'Ignored by the client' are provided by server 
        !           265: #   at the connection initialization. 
        !           266: #
        !           267: #   Option names cannot be abbreviated.
        !           268: #
        !           269: # ----- CUT HERE  --- Server config --- CUT HERE -----
        !           270: #
        !           271: options {
        !           272:   port 5000;           # Listen on this port.
        !           273:   bindaddr { iface lo; };   # Listen only on loopback device.
        !           274: 
        !           275:   # Syslog facility
        !           276:   syslog       daemon;
        !           277: 
        !           278:   # Path to various programs
        !           279:   ppp          /usr/sbin/pppd;            
        !           280:   ifconfig     /sbin/ifconfig;
        !           281:   route        /sbin/route;
        !           282:   firewall     /sbin/ipchains;
        !           283:   ip           /sbin/ip;
        !           284: }
        !           285: 
        !           286: # Default session options 
        !           287: default {
        !           288:   compress no;         # Compression is off by default
        !           289:   speed 0;             # By default maximum speed, NO shaping
        !           290: }
        !           291: 
        !           292: # TUN example. Session 'cobra'.
        !           293: cobra {
        !           294:   passwd  Ma&^TU;      # Password
        !           295:   type  tun;           # IP tunnel 
        !           296:   proto udp;                   # UDP protocol
        !           297:   compress  lzo:9;     # LZO compression level 9
        !           298:   encrypt  yes;                # Encryption
        !           299:   keepalive yes;       # Keep connection alive
        !           300: 
        !           301:   up {
        !           302:        # Connection is Up 
        !           303: 
        !           304:        # 10.3.0.1 - local, 10.3.0.2 - remote 
        !           305:        ifconfig "%% 10.3.0.1 pointopoint 10.3.0.2 mtu 1450";
        !           306:   };
        !           307: }
        !           308: 
        !           309: # the same as above, but with iproute2 command
        !           310: cobra {
        !           311:   passwd  Ma&^TU;      # Password
        !           312:   type  tun;           # IP tunnel 
        !           313:   proto udp;                   # UDP protocol
        !           314:   compress  lzo:9;     # LZO compression level 9
        !           315:   encrypt  yes;                # Encryption
        !           316:   keepalive yes;       # Keep connection alive
        !           317: 
        !           318:   up {
        !           319:        # Connection is Up 
        !           320: 
        !           321:        # 10.3.0.1 - local, 10.3.0.2 - remote 
        !           322:        ip "link set %% up multicast off mtu 1450";
        !           323:        ip "-family inet addr add 10.3.0.1 peer 10.3.0.2 dev %%";
        !           324:   };
        !           325: }
        !           326: 
        !           327: 
        !           328: # Ethernet example. Session 'lion'.
        !           329: lion {
        !           330:   passwd  Ma&^TU;      # Password
        !           331:   type  ether;                 # Ethernet tunnel
        !           332:   device tap0;                 # Device tap0 
        !           333:   proto udp;                   # UDP protocol
        !           334:   compress  lzo:1;     # LZO compression level 1 
        !           335:   encrypt  yes;                # Encryption
        !           336:   stat  yes;                   # Log connection statistic 
        !           337:   keepalive yes;       # Keep connection alive
        !           338: 
        !           339:   up { 
        !           340:        # Connection is Up 
        !           341: 
        !           342:        # Assign IP address 
        !           343:        ifconfig "%% 10.1.0.1 netmask 255.255.255.0";
        !           344:                
        !           345:        # Add route to net 10.2.0.0/24  
        !           346:        route "add -net 10.2.0.0 netmask 255.255.255.0 gw 10.1.0.2";
        !           347: 
        !           348:        # Enable masquerading for net 10.2.0.0.0/24 
        !           349:        firewall "-A forward -s 10.2.0.0/24 -d 0.0.0.0/0 -j MASQ";
        !           350:   };
        !           351: 
        !           352:   down {
        !           353:        # Connection is Down
        !           354: 
        !           355:        # Shutdown tap device. 
        !           356:        ifconfig "%% down"; 
        !           357: 
        !           358:        # Disable masquerading for net 10.2.0.0.0/24 
        !           359:        firewall "-D forward -s 10.2.0.0/24 -d 0.0.0.0/0 -j MASQ";
        !           360:   };
        !           361: }
        !           362: 
        !           363: # PPP example. Session 'viper'.
        !           364: viper {        
        !           365:   passwd  TTT$bio;     # Password
        !           366:   compress  yes;       # ZLIB compression level 1 
        !           367:   encrypt  yes;                # Encryption
        !           368:   up {
        !           369:        # Connection is Up (established)
        !           370: 
        !           371:         # Assign IP addresses 10.0.0.1 - local, 10.0.0.2 - remote
        !           372:        ppp "10.0.0.1:10.0.0.2 proxyarp";
        !           373:   };
        !           374: }
        !           375: 
        !           376: # Pipe example. Session 'backup'.
        !           377: backup {
        !           378:   passwd OnlyME;       # Password
        !           379:   type pipe;           # Pipe tunnel
        !           380:   speed 256:128;       # Shaping speed 256K IN and 128K OUT.
        !           381:   encrypt yes;         # Encryption
        !           382:   up {
        !           383:        # Connection is Up 
        !           384: 
        !           385:        # Start shell and tar '/etc' directory to 
        !           386:        # the stdout (pipe tunnel). 
        !           387:        program /bin/sh "-c 'tar cf - /etc/*'";
        !           388:   };
        !           389: }
        !           390: 
        !           391: # TTY example. Session 'sz'.
        !           392: # Silly example to show that VTun can tunnel ALMOST
        !           393: # anything :-). 
        !           394: sz {
        !           395:   passwd  OnlyME;      # Password
        !           396:   type  tty;           # TTY tunnel
        !           397:   speed 64;            # Shaping speed 64K IN/OUT
        !           398:   encrypt  yes;                # Encryption
        !           399:   up {
        !           400:        # Connection is Up 
        !           401: 
        !           402:         # Send '/etc/profile' via ZMODEM to the
        !           403:        # stdout(tty tunnel).
        !           404:        program /bin/sh "-c 'sz /etc/termcap'";
        !           405:   };
        !           406: }
        !           407: #
        !           408: # ----- CUT HERE  -------- End -------- CUT HERE -----
        !           409: #
        !           410: 
        !           411: #
        !           412: # ----- CUT HERE  --- Client config --- CUT HERE -----
        !           413: #
        !           414: options {
        !           415:   port 5000;           # Connect to this port.
        !           416:   timeout 60;          # General timeout
        !           417: 
        !           418:   # Path to various programs
        !           419:   ppp          /usr/sbin/pppd;            
        !           420:   ifconfig     /sbin/ifconfig;
        !           421:   route                /sbin/route;
        !           422:   firewall     /sbin/ipchains;
        !           423:   ip           /sbin/ip;
        !           424: }
        !           425: 
        !           426: # TUN example. Session 'cobra'. 
        !           427: cobra {
        !           428:   passwd  Ma&^TU;      # Password
        !           429:   device tun1;                 # Device tun1 
        !           430:   persist yes;         # Persist mode 
        !           431:   up {
        !           432:        # Connection is Up 
        !           433: 
        !           434:        # Assign IP addresses. 
        !           435:        ifconfig "%% 10.3.0.2 pointopoint 10.3.0.1 mtu 1450";
        !           436:   };
        !           437: }
        !           438: # same as above, but with iproute2 command
        !           439: cobra {
        !           440:   passwd  Ma&^TU;      # Password
        !           441:   device tun1;                 # Device tun1 
        !           442:   persist yes;         # Persist mode 
        !           443:   up {
        !           444:        # Connection is Up 
        !           445: 
        !           446:        # Assign IP addresses. 
        !           447:        ip "link set %% up multicast off mtu 1450";
        !           448:        ip "-family inet addr add 10.3.0.2 peer 10.3.0.1 dev %%";
        !           449:   };
        !           450: }
        !           451: 
        !           452: # Ethernet example. Session 'lion'. 
        !           453: lion {
        !           454:   passwd  Ma&^TU;      # Password
        !           455:   type  ether;         # Ethernet tunnel
        !           456:   device tap1;                 # Device tap1 
        !           457:   up {
        !           458:        # Connection is Up 
        !           459: 
        !           460:        # Assign IP address and netmask. 
        !           461:        ifconfig "%% 10.1.0.2 netmask 255.255.255.0";
        !           462:   };
        !           463:   down {
        !           464:        # Connection is Down 
        !           465: 
        !           466:        # Shutdown tap device
        !           467:        ifconfig "%% down";
        !           468:   };
        !           469: }
        !           470: 
        !           471: # PPP example. Session 'viper'. 
        !           472: viper {
        !           473:   passwd  TTT$bio;     # Password
        !           474:   up {
        !           475:        # Connection is Up 
        !           476: 
        !           477:        # IP address will be assigned by the server 
        !           478:        ppp "noipdefault";
        !           479:   };
        !           480: }
        !           481: 
        !           482: # Pipe example. Session 'backup'.
        !           483: backup {
        !           484:   passwd OnlyME;       # Password
        !           485:   up {
        !           486:        # Connection is Up 
        !           487: 
        !           488:        # Start shell and untar files from
        !           489:        # stdin(pipe tunnel). 
        !           490:        program /bin/sh "-c 'cd /tmp; tar xf -";
        !           491:   };
        !           492: }
        !           493: 
        !           494: # TTY example. Session 'sz'.
        !           495: # Silly example to show that VTun can tunnel ALMOST
        !           496: # anything :-).
        !           497: sz {
        !           498:   passwd  OnlyME;      # Password
        !           499:   up {
        !           500:        # Receive file via ZMODEM from the
        !           501:        # stdin(tty tunnel).
        !           502:        program  /bin/sh "-c 'cd /tmp; rz'";
        !           503:   };
        !           504: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>