Author Topic: Ebox 1.4 issues with openvpn  (Read 4117 times)

jkaver

  • Zen Apprentice
  • *
  • Posts: 16
  • Karma: +0/-0
    • View Profile
Ebox 1.4 issues with openvpn
« on: March 31, 2010, 07:13:27 pm »
Hi All,

New to Ebox and so far, liking everything.  I have a client who had a wins server 2003 that was bugged from it's inception, and after a lot of issues, we finally yanked it and rebuilt his shares and network with an ebox 1.4 box.  I have everything working great, but I'm stuck on one issue.

Openvpn.

I have 2 clients set on the openvpn side, the CA is issued, all seems great.  I download a configuration file from Ebox, and the client can connect, but I can't see shares with the vpn connection.  It's killing my clients access, and I need to get it figured out.

Here's my smb.conf, and my openvpn .conf:

smb.conf located at:  /usr/share/samba/smb.conf

#
# Sample configuration file for the Samba suite for Debian GNU/Linux.
#
#
# This is the main Samba configuration file. You should read the
# smb.conf(5) manual page in order to understand the options listed
# here. Samba has a huge number of configurable options most of which
# are not shown in this example
#
# Some options that are often worth tuning have been included as
# commented-out examples in this file.
#  - When such options are commented with ";", the proposed setting
#    differs from the default Samba behaviour
#  - When commented with "#", the proposed setting is the default
#    behaviour of Samba but the option is considered important
#    enough to be mentioned here
#
# NOTE: Whenever you modify this file you should run the command
# "testparm" to check that you have not made any basic syntactic
# errors.
# A well-established practice is to name the original file
# "smb.conf.master" and create the "real" config file with
# testparm -s smb.conf.master >smb.conf
# This minimizes the size of the really used smb.conf file
# which, according to the Samba Team, impacts performance
# However, use this with caution if your smb.conf file contains nested
# "include" statements. See Debian bug #483187 for a case
# where using a master file is not a good idea.
#

#======================= Global Settings =======================

[global]

## Browsing/Identification ###

# Change this to the workgroup/NT-domain name your Samba server will part of
   workgroup = WORKGROUP

# server string is the equivalent of the NT Description field
   server string = %h server

# Windows Internet Name Serving Support Section:
# WINS Support - Tells the NMBD component of Samba to enable its WINS Server
#   wins support = no
# WINS Server - Tells the NMBD components of Samba to be a WINS Client
# Note: Samba can be either a WINS Server, or a WINS Client, but NOT both
;   wins server = w.x.y.z

# This will prevent nmbd to search for NetBIOS names through DNS.
   dns proxy = no

# What naming service and in what order should we use to resolve host names
# to IP addresses
;   name resolve order = lmhosts host wins bcast

#### Networking ####

# The specific set of interfaces / networks to bind to
# This can be either the interface name or an IP address/netmask;
# interface names are normally preferred
;   interfaces = 127.0.0.0/8 eth0 tap1 tap2 192.168.160.0/254

# Only bind to the named interfaces and/or networks; you must use the
# 'interfaces' option above to use this.
# It is recommended that you enable this feature if your Samba machine is
# not protected by a firewall or is a firewall itself.  However, this
# option cannot handle dynamic or non-broadcast interfaces correctly.
;   bind interfaces only = yes



#### Debugging/Accounting ####

# This tells Samba to use a separate log file for each machine
# that connects
   log file = /var/log/samba/log.%m

# Cap the size of the individual log files (in KiB).
   max log size = 1000

# If you want Samba to only log through syslog then set the following
# parameter to 'yes'.
#   syslog only = no

# We want Samba to log a minimum amount of information to syslog. Everything
# should go to /var/log/samba/log.{smbd,nmbd} instead. If you want to log
# through syslog you should set the following parameter to something higher.
syslog = 0

# Do something sensible when Samba crashes: mail the admin a backtrace
   panic action = /usr/share/samba/panic-action %d


####### Authentication #######

# "security = user" is always a good idea. This will require a Unix account
# in this server for every user accessing the server. See
# /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/ServerType.html
# in the samba-doc package for details.
#   security = user

# You may wish to use password encryption.  See the section on
# 'encrypt passwords' in the smb.conf(5) manpage before enabling.
   encrypt passwords = no

# If you are using encrypted passwords, Samba will need to know what
# password database type you are using.
   passdb backend = tdbsam

   obey pam restrictions = yes

# This boolean parameter controls whether Samba attempts to sync the Unix
# password with the SMB password when the encrypted SMB password in the
# passdb is changed.
   unix password sync = yes

# For Unix password sync to work on a Debian GNU/Linux system, the following
# parameters must be set (thanks to Ian Kahan <<kahan@informatik.tu-muenchen$
# sending the correct chat script for the passwd program in Debian Sarge).
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:*$

# This boolean controls whether PAM will be used for password changes
# when requested by an SMB client instead of the program listed in
# 'passwd program'. The default is 'no'.
   pam password change = yes

########## Domains ###########

# Is this machine able to authenticate users. Both PDC and BDC
# must have this setting enabled. If you are the BDC you must
# change the 'domain master' setting to no
#
;   domain logons = yes
#
# The following setting only takes effect if 'domain logons' is set
# It specifies the location of the user's profile directory
# from the client point of view)
# The following required a [profiles] share to be setup on the
# samba server (see below)
;   logon path = \\%N\profiles\%U
# Another common choice is storing the profile in the user's home directory
# (this is Samba's default)
#   logon path = \\%N\%U\profile

# The following setting only takes effect if 'domain logons' is set
# It specifies the location of a user's home directory (from the client
# point of view)
;   logon drive = H:
#   logon home = \\%N\%U

# The following setting only takes effect if 'domain logons' is set
# It specifies the script to run during logon. The script must be stored
# in the [netlogon] share
# NOTE: Must be store in 'DOS' file format convention
;   logon script = logon.cmd

# This allows Unix users to be created on the domain controller via the SAMR
# RPC pipe.  The example command creates a user account with a disabled Unix
# password; please adapt to your needs
; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos ""$

# This allows machine accounts to be created on the domain controller via th$
# SAMR RPC pipe.
# The following assumes a "machines" group exists on the system
; add machine script  = /usr/sbin/useradd -g machines -c "%u machine account$

# This allows Unix groups to be created on the domain controller via the SAMR
# RPC pipe.
; add group script = /usr/sbin/addgroup --force-badname %g

########## Printing ##########

# If you want to automatically load your printer list rather
# than setting them up individually then you'll need this
#   load printers = yes

# lpr(ng) printing. You may wish to override the location of the
# printcap file
;   printing = bsd
;   printcap name = /etc/printcap

# CUPS printing.  See also the cupsaddsmb(8) manpage in the
# cupsys-client package.
;   printing = cups
;   printcap name = cups

############ Misc ############

# Using the following line enables you to customise your configuration
# on a per machine basis. The %m gets replaced with the netbios name
# of the machine that is connecting
;   include = /home/samba/etc/smb.conf.%m

# Most people will find that this option gives better performance.
# See smb.conf(5) and /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/speed.h$
# for details
# You may want to add the following on a Linux system:
#         SO_RCVBUF=8192 SO_SNDBUF=8192
#   socket options = TCP_NODELAY

# The following parameter is useful only if you have the linpopup package
# installed. The samba maintainer and the linpopup maintainer are
# working to ease installation and configuration of linpopup and samba.
;   message command = /bin/sh -c '/usr/bin/linpopup "%f" "%m" %s; rm %s' &

# Domain Master specifies Samba to be the Domain Master Browser. If this
# machine will be configured as a BDC (a secondary logon server), you
# must set this to 'no'; otherwise, the default behavior is recommended.
#   domain master = auto

# Some defaults for winbind (make sure you're not using the ranges
# for something else.)
;   idmap uid = 10000-20000
;   idmap gid = 10000-20000
;   template shell = /bin/bash

# The following was the default behaviour in sarge,
# but samba upstream reverted the default because it might induce
# performance issues in large organizations.
# See Debian bug #368251 for some of the consequences of *not*
# having this setting and smb.conf(5) for details.
;   winbind enum groups = yes
;   winbind enum users = yes

# Setup usershare options to enable non-root users to share folders
# with the net usershare command.

# Maximum number of usershare. 0 (default) means that usershare is disabled.
;   usershare max shares = 100

#======================= Share Definitions =======================

[homes]
   comment = Home Directories
   browseable = no

# By default, the home directories are exported read-only. Change the
# next parameter to 'no' if you want to be able to write to them.
   read only = yes

# File creation mask is set to 0700 for security reasons. If you want to
# create files with group=rw permissions, set next parameter to 0775.
   create mask = 0700

# Directory creation mask is set to 0700 for security reasons. If you want to
# create dirs. with group=rw permissions, set next parameter to 0775.
   directory mask = 0700

# By default, \\server\username shares can be connected to by anyone
# with access to the samba server.
# The following parameter makes sure that only "username" can connect
# to \\server\username
# This might need tweaking when using external authentication schemes
   valid users = %S

# Un-comment the following and create the netlogon directory for Domain Logo$
# (you need to configure Samba to act as a domain controller too.)
;[netlogon]
;   comment = Network Logon Service
;   path = /home/samba/netlogon
;   guest ok = yes
;   read only = yes
;   share modes = no

# Un-comment the following and create the profiles directory to store
# users profiles (see the "logon path" option above)
# (you need to configure Samba to act as a domain controller too.)
# The path below should be writable by all users so that their
# profile directory may be created the first time they log on
;[profiles]
;   comment = Users profiles
;   path = /home/samba/profiles
;   guest ok = no
;   browseable = no
;   create mask = 0600
;   directory mask = 0700

[printers]
   comment = All Printers
   browseable = no
   path = /var/spool/samba
   printable = yes
   guest ok = no
   read only = yes
   create mask = 0700

# Windows clients look for this share name as a source of downloadable
# printer drivers
[print$]
   comment = Printer Drivers
   path = /var/lib/samba/printers
   browseable = yes
   read only = yes
   guest ok = no
# Uncomment to allow remote administration of Windows print drivers.
# You may need to replace 'lpadmin' with the name of the group your
# admin users are members of.
# Please note that you also need to set appropriate Unix permissions
# to the drivers directory for these users to have write rights in it
;   write list = root, @lpadmin

# A sample share for sharing your CD-ROM with others.
;[cdrom]
;   comment = Samba server's CD-ROM
;   read only = yes
;   locking = no

;   path = /cdrom
;   guest ok = yes

# The next two parameters show how to auto-mount a CD-ROM when the
#       cdrom share is accesed. For this to work /etc/fstab must contain
#       an entry like this:
#
#       /dev/scd0   /cdrom  iso9660 defaults,noauto,ro,user   0 0
#
# The CD-ROM gets unmounted automatically after the connection to the
#
# If you don't want to use auto-mounting/unmounting make sure the CD
#       is mounted on /cdrom
#
;   preexec = /bin/mount /cdrom
;   postexec = /bin/umount /cdrom

Openvpn.conf, located at:  /etc/openvpn/btaylor.conf

# EBox OpenVPN 2.0 config file for  server btaylor


# Which local IP address should OpenVPN
# listen on? (optional)




# Which TCP/UDP port should OpenVPN listen on?

port 1194


# TCP or UDP server?

proto udp


# virtual device

dev tap0


# SSL/TLS root certificate (ca), certificate

# (cert), and private key (key).

ca '/var/lib/ebox/CA/cacert.pem'


cert '/var/lib/ebox/CA/certs/CCB73072FF19C6CD.pem'


key '/var/lib/ebox/CA/private/ebox.pem'
 # This file should be kept secret

# check peer certificate against certificate revokation list

crl-verify /var/lib/ebox/CA/crl/latest.pem


# Diffie hellman parameters.
# Generate your own with:
#   openssl dhparam -out dh1024.pem 1024
# Substitute 2048 for 1024 if you are using
# 2048 bit keys.
#dh /etc/openvpn/dh1024.pem

dh /etc/openvpn/ebox-dh1024.pem


# Configure server mode and supply a VPN subnet
# for OpenVPN to draw client addresses from.
server 192.168.160.0 255.255.255.0

# Maintain a record of client <-> virtual IP address
# associations in this file.
ifconfig-pool-persist ipp.txt


# If enabled, this directive will configure
# all clients to redirect their default
# network gateway through the VPN
;push "redirect-gateway"


# Uncomment this directive to allow different
# clients to be able to "see" each other.

client-to-client


# The keepalive directive causes ping-like
# messages to be sent back and forth over
keepalive 10 120


# client certificate common name authentication



# For extra security beyond that provided
# by SSL/TLS, create an "HMAC firewall"
# to help block DoS attacks and UDP port flooding.
;tls-auth ta.key 0 # This file is secret

# Select a cryptographic cipher.
# This config item must be copied to
# the client config file as well.
;cipher BF-CBC        # Blowfish (default)
;cipher AES-128-CBC   # AES
;cipher DES-EDE3-CBC  # Triple-DES

# Enable compression on the VPN link.
# If you enable it here, you must also
# enable it in the client config file.
comp-lzo

# The maximum number of concurrently connected
# clients we want to allow.
;max-clients 100

# group and user for the OpenVPN
# daemon's privileges after initialization.

user nobody


group nogroup



# The persist options will try to avoid
# accessing certain resources on restart
# that may no longer be accessible because
# of the privilege downgrade.
persist-key
persist-tun

# Output a short status file showing
# current connections, truncated
# and rewritten every minute.
status /var/log/ebox/openvpn/status-btaylor.log

# By default, log messages will go to the syslog (or
# on Windows, if running as a service, they will go to
# the "\Program Files\OpenVPN\log" directory).
# Use log or log-append to override this default.
# "log" will truncate the log file on OpenVPN startup,
# while "log-append" will append to it.  Use one
# or the other (but not both).
log-append  /var/log/ebox/openvpn/btaylor.log
# Set the appropriate level of log
# file verbosity.
#
# 0 is silent, except for fatal errors
# 4 is reasonable for general usage
# 5 and 6 can help to debug connection problems
# 9 is extremely verbose
verb 5

# Silence repeating messages.  At most 20
# sequential messages of the same message
# category will be output to the log.
;mute 20


Also, here is my other smb.conf file that ebox keeps overwriting:

Located at:  /etc/samba/smb.conf


[global]
 workgroup = EBOX
 netbios name = btaylor
 server string = EBox Samba Server
 enable privileges = yes
 interfaces = lo,eth1,tap0,tap1
 bind interfaces only = Yes
 passdb backend = ldapsam:ldapi://%2fvar%2frun%2fslapd%2fldapi
 ldap ssl = Off
 log level = 1
 syslog = 0
 log file = /var/log/samba/%m
 max log size = 50
# FIXME: Removed for samba 3.4.3, add again when a new version fixes it
# vfs objects = full_audit
# full_audit:success = connect opendir open disconnect unlink mkdir rmdir re$
# full_audit:failure = none
 smb ports = 137 138 139 445
 name resolve order = wins bcast hosts
 time server = Yes
 printcap name = CUPS
 wins support = Yes
 dns proxy = Yes
 ldap suffix = dc=btaylor
 ldap machine suffix = ou=Computers
 ldap user suffix =  ou=Users
 ldap group suffix =  ou=Groups
 ldap idmap suffix = ou=Idmap
 ldap admin dn = cn=ebox,dc=btaylor
 map acl inherit = Yes
 printing = cups

 encrypt passwords = Yes
 obey pam restrictions = No
 ldap passwd sync = Yes
 mangling method = hash2

 logon script = logon.bat
 logon drive = H:
 logon home =
 logon path = \\btaylor\profiles\%U

 domain logons = Yes
 os level = 65
 preferred master = Yes
domain master = Yes         
 add user script = /usr/sbin/smbldap-useradd -m "%u"
 ldap delete dn = Yes
 add machine script = /usr/sbin/smbldap-useradd -w "%u"
 add group script = /usr/sbin/smbldap-groupadd -p "%g"
 add user to group script = /usr/sbin/smbldap-groupmod -m "%u" "%g"
 delete user from group script = /usr/sbin/smbldap-groupmod -x "%u" "%g"
 set primary group script = /usr/sbin/smbldap-usermod -g "%g" "%u"

[netlogon]
 path = /home/samba/netlogon/
 browseable = No
 read only = yes

[profiles]
 path = /home/samba/profiles
 read only = no
 create mask = 0600
 directory mask = 0700
 browseable = No
 guest ok = Yes
 profile acls = yes
 csc policy = disable
 valid users = %U
 admin users = @"Domain Admins"
 hide files = /desktop.ini/outlook*.lnk/*Briefcase*/


[homes]
 comment = Home Directories
 valid users = %S
 read only = No
 browseable = No
# FIXME: Removed for samba 3.4.3, add again when a new version fixes it
#% my $objects = 'full_audit';
 vfs objects =  vscan-clamav
 vscan-clamav: config-file = /etc/samba/vscan-clamav.conf

(I omitted all of the shares settings, they are all the same per share name)

[ebox-internal-backups]
 path = /var/lib/ebox/conf//backups
 read only = No
 valid users = @"Domain Admins"
 admin users = @"Domain Admins"
 force group = ebox
 force user = ebox
 browseable = Yes

[ebox-quarantine]
 path = /var//lib/ebox/quarantine
 read only = No
 valid users = @"Domain Admins"
 admin users = @"Domain Admins"
 browseable = Yes

[print$]
 comment = Printer Drivers
 path = /var/lib/samba/printers
 browseable = yes
 read only = yes
 guest ok = no
 write list = @"Domain Admins"
 use client driver = yes
 valid users = "@Domain Users"

I'm really stuck on this one, and have a client who is not 100% thrilled so far with his Ebox, and I'm sure it's something simple I'm missing.  

I've also seen that when I add a share and restart ebox (save changes) it rewrites any changes I've made to the smb.conf file, that really gets old quick....
« Last Edit: March 31, 2010, 07:23:07 pm by jkaver »

jkaver

  • Zen Apprentice
  • *
  • Posts: 16
  • Karma: +0/-0
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #1 on: April 01, 2010, 08:30:18 pm »
Anyone have any input on this?  I've tried port-forwarding samba ports on the firewall, but no dice there either.  I hate to have to go back to a microsoft vpn box, would love some input so I don't have to.

ctek

  • Zen Warrior
  • ***
  • Posts: 197
  • Karma: +6/-1
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #2 on: April 01, 2010, 09:18:47 pm »
I'm using ovpn on 1.4 and I realy do not know why you have issues. This is not realy a solution but more of a "don't give up" message. :)

Try to re-create the ovpn config again from scratch and make sure that samba is working normal before testing it trough vpn.

Best regards
Bogdan

jkaver

  • Zen Apprentice
  • *
  • Posts: 16
  • Karma: +0/-0
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #3 on: April 01, 2010, 09:28:26 pm »
I have done that 2 times :)

The vpn-gui connects, its just no one can access shares that are stored locally on the ebox.

I'm not using the ebox as a gateway, just a standalone filesharing/openvpn box.

I've read guides/primers/posts and tried a bunch of different things, still can't get it to work...

ctek

  • Zen Warrior
  • ***
  • Posts: 197
  • Karma: +6/-1
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #4 on: April 01, 2010, 09:32:28 pm »
Do you have a firewall rule to deny access from anything other than LAN subnet ?
Have you read how to pass options for dhcp clients trough ovpn ?

Just a thought...

jkaver

  • Zen Apprentice
  • *
  • Posts: 16
  • Karma: +0/-0
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #5 on: April 01, 2010, 09:43:50 pm »
Here's my setup:

cable modem
        -
firewall/router
        -
ebox setup as filesharing with a bunch of shares

I have external static on the firewall router, with the following ports forwarded to the internal address on the ebox:

external-internal ebox 1194 tcp/udp
external-internal ebox 1723 tcp/udp
external-internal ebox  22 for ssh
external-internal ebox 443 for ebox gui access externally
external-internal ebox ports 137-139 for samba
external-internal ebox 445 for samba

So, I can get a client to connect on the open-vpn gui, shows fine in it's log, gives it an ip address of 192.168.160.0/24 and that all seems fine, but I can't get to any shares via any direction in windows..

Really need someone who knows ebox and openvpn to take 10 minutes and show me what I've done wrong.  Be happy to pay someone at this point, as I'm on 2 weeks and still not working...

Oh, and internally, everything works great on the local lan.

jkaver

  • Zen Apprentice
  • *
  • Posts: 16
  • Karma: +0/-0
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #6 on: April 01, 2010, 09:48:47 pm »
No, haven't seen anything on how to pass dhcp options to vpn clients, but it looks like it is, as the client has the ip configuration coming through

ctek

  • Zen Warrior
  • ***
  • Posts: 197
  • Karma: +6/-1
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #7 on: April 01, 2010, 09:54:57 pm »
Here, take a look aver this topic. There are a few ovpn tweack and pointers that you should read maybe it helps.

http://forum.ebox-platform.com/index.php?topic=2360.0

And by the way i was refering to ebox firewall to see if you have a roule that will allow your ovpn clients to see the shares (do not confuse them with lan clients)

Best regards
Bogdan

jkaver

  • Zen Apprentice
  • *
  • Posts: 16
  • Karma: +0/-0
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #8 on: April 01, 2010, 09:57:40 pm »
currently in the firewall settings on ebox, I have a external networks to ebox set any-samba
and any-any just in case, doesn't seem to help...

other than that, the ebox firewall is blank for settings

jkaver

  • Zen Apprentice
  • *
  • Posts: 16
  • Karma: +0/-0
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #9 on: April 01, 2010, 10:09:52 pm »
and I just tried that option to push dhcp information, adding: dhcp "push-option DNS 192.168.0.254"
and same for wins (that is the internal address of the servers range)

Nada on seeing shares remotely.

jkaver

  • Zen Apprentice
  • *
  • Posts: 16
  • Karma: +0/-0
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #10 on: April 01, 2010, 10:16:28 pm »
The interesting part is that a wins client with the open-vpn gui connected and the proper certificates passed, can open network and see the Ebox as a network place, but when clicked just says not available...?

ctek

  • Zen Warrior
  • ***
  • Posts: 197
  • Karma: +6/-1
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #11 on: April 01, 2010, 10:24:58 pm »
Just try to use a simple smb config. Let's say the default shares, not an edited one. Maybe it is a problem with samba.

Have you tried just to enable a simple share and see if it is accessible ??

PS: Try to join the IRC chanell i think it will be more easily :)
« Last Edit: April 01, 2010, 10:29:40 pm by ctek »

jkaver

  • Zen Apprentice
  • *
  • Posts: 16
  • Karma: +0/-0
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #12 on: April 02, 2010, 01:29:49 am »
Just hopped on irc

jkaver

  • Zen Apprentice
  • *
  • Posts: 16
  • Karma: +0/-0
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #13 on: April 02, 2010, 04:48:15 am »
anyone else have any thoughts

jkaver

  • Zen Apprentice
  • *
  • Posts: 16
  • Karma: +0/-0
    • View Profile
Re: Ebox 1.4 issues with openvpn
« Reply #14 on: April 03, 2010, 06:12:32 pm »
Anyone know of an ebox admin I could hire for a few minutes to help me out with this?