Samba: authenticate against Active Directory using winbind but authorize against separate OpenLDAP serverSamba Permissions - I'm going to throw it!Samba with Active Directory - shares are readonly, NT_STATUS_MEDIA_WRITE_PROTECTEDDomain Admins do not have Administrative rights on Windows Server 2008 using Samba PDCSamba Ignoring POSIX ACLsSamba + LDAP: user authentication works for one but not another serverCan Samba4 create files with a GID other than AD's “Primary Group”?Set up Samba with Active Directory and local user authenticationSamba4 in AD Domain: getent shows only local accountssamba share to two AD domain usersSamba & AutoFS Hide shares
C-152 carb heat on before landing in hot weather?
Going to get married soon, should I do it on Dec 31 or Jan 1?
How well known and how commonly used was Huffman coding in 1979?
Is it okay to visually align the elements in a logo?
Links to webpages in books
Should I hide continue button until tasks are completed?
Why isn’t the tax system continuous rather than bracketed?
Symbolic equivalent of chmod 400
What do you call the action of someone tackling a stronger person?
STM Microcontroller burns every time
Why aren't (poly-)cotton tents more popular?
MH370 blackbox - is it still possible to retrieve data from it?
In the Marvel universe, can a human have a baby with any non-human?
Is there any set of 2-6 notes that doesn't have a chord name?
Cascading Repair Costs following Blown Head Gasket on a 2004 Subaru Outback
Does ultrasonic bath cleaning damage laboratory volumetric glassware calibration?
Why does the numerical solution of an ODE move away from an unstable equilibrium?
Do equal angles necessarily mean a polygon is regular?
How could mana leakage be dangerous to a elf?
When is it ok to add filler to a story?
Does the Paladin's Aura of Protection affect only either her or ONE ally in range?
Is there a short way to compare many values mutually at same time without using multiple 'AND'-s?
Calculating the partial sum of a expl3 sequence
Generic function to loop over inputs and execute a command in bash?
Samba: authenticate against Active Directory using winbind but authorize against separate OpenLDAP server
Samba Permissions - I'm going to throw it!Samba with Active Directory - shares are readonly, NT_STATUS_MEDIA_WRITE_PROTECTEDDomain Admins do not have Administrative rights on Windows Server 2008 using Samba PDCSamba Ignoring POSIX ACLsSamba + LDAP: user authentication works for one but not another serverCan Samba4 create files with a GID other than AD's “Primary Group”?Set up Samba with Active Directory and local user authenticationSamba4 in AD Domain: getent shows only local accountssamba share to two AD domain usersSamba & AutoFS Hide shares
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
Short Version
How can I configure a CentOS 7 machine with Samba 4.8.0 serving users on Windows 7 clients to authenticate using their domain login credentials (winbindd
and Active Directory) but be authorized (i.e. perform user/group lookup) against a separate OpenLDAP server?
This was easy with CentOS 6 and the Samba fallback mechanism. It seems to be more complicated once winbind must be involved.
Long Version
We have a CentOS 7 machine that needs to share files with Windows 7 machines in an Active Directory domain (that I do not control) for users in the EXAMPLE.COM domain but perform user/group lookup against a separate OpenLDAP server (that I do control) at ldap.mydomain.com. With current versions of CentOS 7, as of Samba 4.8.0, the winbindd fallback is no longer available and winbindd is required.
So we do the following:
- open firewall port 445 (but for testing,
systemctl stop firewalld
) - set SELinux Booleans for sharing home directories (but for testing,
setenforce 0
) - add trust for the certificate authority that certified ldap.mydomain.com (tested and LDAP lookups are functional on the system)
- install packages
samba
,samba-client
,samba-winbind
,samba-winbind-clients
, andsamba-winbind-krb5-locator
net ads join -U 'user'
(the domain allows non-admin creation of machine accounts;net ads testjoin
returns 'Join is OK')authconfig --enablesssd --enablesssdauth --disablemkhomedir --update
Here is the smb.conf
with provisions for winbind, which was not configured by authconfig
above:
[global]
strict locking = no
workgroup = EXAMPLE
server string = Samba Server Version %v
disable netbios = yes
log file = /var/log/samba/log.%m
max log size = 50
security = ads
realm = EXAMPLE.COM
ldap ssl = off
idmap config * : backend = ldap
idmap config * : ldap_url = ldaps://ldap.mydomain.com:636/
idmap config * : ldap_base_dn = dc=mydomain,dc=com
idmap config * : ldap_user_dn = uid=samba,ou=agents,dc=mydomain,dc=com
idmap config * : read only = yes
idmap config * : range = 1000-65535
kerberos method = secrets and keytab
load printers = no
printcap name = /dev/null
printing = bsd
disable spoolss = yes
[home]
comment = Home Directories
path = /home/%U
browseable = no
writable = yes
create mask = 0600
directory mask = 0700
valid users = EXAMPLE%U
preexec = ls /home/%U
[share]
path = /home/share
writable = yes
valid users = @share
force group = share
create mask = 0660
directory mask = 0770
preexec = ls /home/share
Here is the problem:
smbclient //myhost.fqdn/home -U <user>
performs winbind authentication and successfully connects to the share for any value of<user>
smbclient //myhost.fqdn/share -U <user
performs winbind authentication but fails to determine from ldap.mydomain.com that<user>
is in group 'share', thus returningtree connect failed: NT_STATUS_ACCESS_DENIED
Additional information:
testparm
shows no errors or warningswbinfo -u
returns list of EXAMPLE.COM domain userswbinfo -g
returns list of EXAMPLE.COM domain groups- SSH login of domain users (i.e. ssh user@host) works
log.winbindd-idmap
shows:
[2019/06/08 15:58:23.175342, 3] ../source3/winbindd/idmap.c:397(idmap_init_domain)
idmap backend ldap not found
[2019/06/08 15:58:23.177972, 3] ../lib/util/modules.c:167(load_module_absolute_path)
load_module_absolute_path: Module '/usr/lib64/samba/idmap/ldap.so' loaded
[2019/06/08 15:58:23.179407, 2] ../source3/lib/smbldap.c:847(smbldap_open_connection)
smbldap_open_connection: connection opened
[2019/06/08 15:58:23.340963, 3] ../source3/lib/smbldap.c:1069(smbldap_connect_system)
ldap_connect_system: successful connection to the LDAP server
[2019/06/08 15:58:23.343603, 1] ../source3/winbindd/idmap_ldap.c:484(idmap_ldap_db_init)
idmap_ldap_db_init: failed to verify ID pool (NT_STATUS_UNSUCCESSFUL)
[2019/06/08 15:58:23.343810, 1] ../source3/winbindd/idmap.c:447(idmap_init_domain)
idmap initialization returned NT_STATUS_UNSUCCESSFUL
Setting a higher debug level suggests that the final NT_STATUS_UNSUCCESSFUL comes from an attempt to make changes to the basedn, but I do not understand why idmap backend ldap not found
appears or why Samba/winbind needs to make changes to the LDAP database, particularly when the readonly property is set in smb.conf
. Finally, I am not sure if these lines even explain the problem.
We have a working CentOS 6 deployment that perfectly functions without winbind while performing this split Active Directory authentication with separate LDAP user/group lookup. How can we achieve what we want with Samba 4.8.0 in CentOS 7? Why are the idmap config
lines in smb.conf not instructing Samba to get group membership information from ldap.mydomain.com
?
centos centos7 samba samba4 winbind
add a comment |
Short Version
How can I configure a CentOS 7 machine with Samba 4.8.0 serving users on Windows 7 clients to authenticate using their domain login credentials (winbindd
and Active Directory) but be authorized (i.e. perform user/group lookup) against a separate OpenLDAP server?
This was easy with CentOS 6 and the Samba fallback mechanism. It seems to be more complicated once winbind must be involved.
Long Version
We have a CentOS 7 machine that needs to share files with Windows 7 machines in an Active Directory domain (that I do not control) for users in the EXAMPLE.COM domain but perform user/group lookup against a separate OpenLDAP server (that I do control) at ldap.mydomain.com. With current versions of CentOS 7, as of Samba 4.8.0, the winbindd fallback is no longer available and winbindd is required.
So we do the following:
- open firewall port 445 (but for testing,
systemctl stop firewalld
) - set SELinux Booleans for sharing home directories (but for testing,
setenforce 0
) - add trust for the certificate authority that certified ldap.mydomain.com (tested and LDAP lookups are functional on the system)
- install packages
samba
,samba-client
,samba-winbind
,samba-winbind-clients
, andsamba-winbind-krb5-locator
net ads join -U 'user'
(the domain allows non-admin creation of machine accounts;net ads testjoin
returns 'Join is OK')authconfig --enablesssd --enablesssdauth --disablemkhomedir --update
Here is the smb.conf
with provisions for winbind, which was not configured by authconfig
above:
[global]
strict locking = no
workgroup = EXAMPLE
server string = Samba Server Version %v
disable netbios = yes
log file = /var/log/samba/log.%m
max log size = 50
security = ads
realm = EXAMPLE.COM
ldap ssl = off
idmap config * : backend = ldap
idmap config * : ldap_url = ldaps://ldap.mydomain.com:636/
idmap config * : ldap_base_dn = dc=mydomain,dc=com
idmap config * : ldap_user_dn = uid=samba,ou=agents,dc=mydomain,dc=com
idmap config * : read only = yes
idmap config * : range = 1000-65535
kerberos method = secrets and keytab
load printers = no
printcap name = /dev/null
printing = bsd
disable spoolss = yes
[home]
comment = Home Directories
path = /home/%U
browseable = no
writable = yes
create mask = 0600
directory mask = 0700
valid users = EXAMPLE%U
preexec = ls /home/%U
[share]
path = /home/share
writable = yes
valid users = @share
force group = share
create mask = 0660
directory mask = 0770
preexec = ls /home/share
Here is the problem:
smbclient //myhost.fqdn/home -U <user>
performs winbind authentication and successfully connects to the share for any value of<user>
smbclient //myhost.fqdn/share -U <user
performs winbind authentication but fails to determine from ldap.mydomain.com that<user>
is in group 'share', thus returningtree connect failed: NT_STATUS_ACCESS_DENIED
Additional information:
testparm
shows no errors or warningswbinfo -u
returns list of EXAMPLE.COM domain userswbinfo -g
returns list of EXAMPLE.COM domain groups- SSH login of domain users (i.e. ssh user@host) works
log.winbindd-idmap
shows:
[2019/06/08 15:58:23.175342, 3] ../source3/winbindd/idmap.c:397(idmap_init_domain)
idmap backend ldap not found
[2019/06/08 15:58:23.177972, 3] ../lib/util/modules.c:167(load_module_absolute_path)
load_module_absolute_path: Module '/usr/lib64/samba/idmap/ldap.so' loaded
[2019/06/08 15:58:23.179407, 2] ../source3/lib/smbldap.c:847(smbldap_open_connection)
smbldap_open_connection: connection opened
[2019/06/08 15:58:23.340963, 3] ../source3/lib/smbldap.c:1069(smbldap_connect_system)
ldap_connect_system: successful connection to the LDAP server
[2019/06/08 15:58:23.343603, 1] ../source3/winbindd/idmap_ldap.c:484(idmap_ldap_db_init)
idmap_ldap_db_init: failed to verify ID pool (NT_STATUS_UNSUCCESSFUL)
[2019/06/08 15:58:23.343810, 1] ../source3/winbindd/idmap.c:447(idmap_init_domain)
idmap initialization returned NT_STATUS_UNSUCCESSFUL
Setting a higher debug level suggests that the final NT_STATUS_UNSUCCESSFUL comes from an attempt to make changes to the basedn, but I do not understand why idmap backend ldap not found
appears or why Samba/winbind needs to make changes to the LDAP database, particularly when the readonly property is set in smb.conf
. Finally, I am not sure if these lines even explain the problem.
We have a working CentOS 6 deployment that perfectly functions without winbind while performing this split Active Directory authentication with separate LDAP user/group lookup. How can we achieve what we want with Samba 4.8.0 in CentOS 7? Why are the idmap config
lines in smb.conf not instructing Samba to get group membership information from ldap.mydomain.com
?
centos centos7 samba samba4 winbind
add a comment |
Short Version
How can I configure a CentOS 7 machine with Samba 4.8.0 serving users on Windows 7 clients to authenticate using their domain login credentials (winbindd
and Active Directory) but be authorized (i.e. perform user/group lookup) against a separate OpenLDAP server?
This was easy with CentOS 6 and the Samba fallback mechanism. It seems to be more complicated once winbind must be involved.
Long Version
We have a CentOS 7 machine that needs to share files with Windows 7 machines in an Active Directory domain (that I do not control) for users in the EXAMPLE.COM domain but perform user/group lookup against a separate OpenLDAP server (that I do control) at ldap.mydomain.com. With current versions of CentOS 7, as of Samba 4.8.0, the winbindd fallback is no longer available and winbindd is required.
So we do the following:
- open firewall port 445 (but for testing,
systemctl stop firewalld
) - set SELinux Booleans for sharing home directories (but for testing,
setenforce 0
) - add trust for the certificate authority that certified ldap.mydomain.com (tested and LDAP lookups are functional on the system)
- install packages
samba
,samba-client
,samba-winbind
,samba-winbind-clients
, andsamba-winbind-krb5-locator
net ads join -U 'user'
(the domain allows non-admin creation of machine accounts;net ads testjoin
returns 'Join is OK')authconfig --enablesssd --enablesssdauth --disablemkhomedir --update
Here is the smb.conf
with provisions for winbind, which was not configured by authconfig
above:
[global]
strict locking = no
workgroup = EXAMPLE
server string = Samba Server Version %v
disable netbios = yes
log file = /var/log/samba/log.%m
max log size = 50
security = ads
realm = EXAMPLE.COM
ldap ssl = off
idmap config * : backend = ldap
idmap config * : ldap_url = ldaps://ldap.mydomain.com:636/
idmap config * : ldap_base_dn = dc=mydomain,dc=com
idmap config * : ldap_user_dn = uid=samba,ou=agents,dc=mydomain,dc=com
idmap config * : read only = yes
idmap config * : range = 1000-65535
kerberos method = secrets and keytab
load printers = no
printcap name = /dev/null
printing = bsd
disable spoolss = yes
[home]
comment = Home Directories
path = /home/%U
browseable = no
writable = yes
create mask = 0600
directory mask = 0700
valid users = EXAMPLE%U
preexec = ls /home/%U
[share]
path = /home/share
writable = yes
valid users = @share
force group = share
create mask = 0660
directory mask = 0770
preexec = ls /home/share
Here is the problem:
smbclient //myhost.fqdn/home -U <user>
performs winbind authentication and successfully connects to the share for any value of<user>
smbclient //myhost.fqdn/share -U <user
performs winbind authentication but fails to determine from ldap.mydomain.com that<user>
is in group 'share', thus returningtree connect failed: NT_STATUS_ACCESS_DENIED
Additional information:
testparm
shows no errors or warningswbinfo -u
returns list of EXAMPLE.COM domain userswbinfo -g
returns list of EXAMPLE.COM domain groups- SSH login of domain users (i.e. ssh user@host) works
log.winbindd-idmap
shows:
[2019/06/08 15:58:23.175342, 3] ../source3/winbindd/idmap.c:397(idmap_init_domain)
idmap backend ldap not found
[2019/06/08 15:58:23.177972, 3] ../lib/util/modules.c:167(load_module_absolute_path)
load_module_absolute_path: Module '/usr/lib64/samba/idmap/ldap.so' loaded
[2019/06/08 15:58:23.179407, 2] ../source3/lib/smbldap.c:847(smbldap_open_connection)
smbldap_open_connection: connection opened
[2019/06/08 15:58:23.340963, 3] ../source3/lib/smbldap.c:1069(smbldap_connect_system)
ldap_connect_system: successful connection to the LDAP server
[2019/06/08 15:58:23.343603, 1] ../source3/winbindd/idmap_ldap.c:484(idmap_ldap_db_init)
idmap_ldap_db_init: failed to verify ID pool (NT_STATUS_UNSUCCESSFUL)
[2019/06/08 15:58:23.343810, 1] ../source3/winbindd/idmap.c:447(idmap_init_domain)
idmap initialization returned NT_STATUS_UNSUCCESSFUL
Setting a higher debug level suggests that the final NT_STATUS_UNSUCCESSFUL comes from an attempt to make changes to the basedn, but I do not understand why idmap backend ldap not found
appears or why Samba/winbind needs to make changes to the LDAP database, particularly when the readonly property is set in smb.conf
. Finally, I am not sure if these lines even explain the problem.
We have a working CentOS 6 deployment that perfectly functions without winbind while performing this split Active Directory authentication with separate LDAP user/group lookup. How can we achieve what we want with Samba 4.8.0 in CentOS 7? Why are the idmap config
lines in smb.conf not instructing Samba to get group membership information from ldap.mydomain.com
?
centos centos7 samba samba4 winbind
Short Version
How can I configure a CentOS 7 machine with Samba 4.8.0 serving users on Windows 7 clients to authenticate using their domain login credentials (winbindd
and Active Directory) but be authorized (i.e. perform user/group lookup) against a separate OpenLDAP server?
This was easy with CentOS 6 and the Samba fallback mechanism. It seems to be more complicated once winbind must be involved.
Long Version
We have a CentOS 7 machine that needs to share files with Windows 7 machines in an Active Directory domain (that I do not control) for users in the EXAMPLE.COM domain but perform user/group lookup against a separate OpenLDAP server (that I do control) at ldap.mydomain.com. With current versions of CentOS 7, as of Samba 4.8.0, the winbindd fallback is no longer available and winbindd is required.
So we do the following:
- open firewall port 445 (but for testing,
systemctl stop firewalld
) - set SELinux Booleans for sharing home directories (but for testing,
setenforce 0
) - add trust for the certificate authority that certified ldap.mydomain.com (tested and LDAP lookups are functional on the system)
- install packages
samba
,samba-client
,samba-winbind
,samba-winbind-clients
, andsamba-winbind-krb5-locator
net ads join -U 'user'
(the domain allows non-admin creation of machine accounts;net ads testjoin
returns 'Join is OK')authconfig --enablesssd --enablesssdauth --disablemkhomedir --update
Here is the smb.conf
with provisions for winbind, which was not configured by authconfig
above:
[global]
strict locking = no
workgroup = EXAMPLE
server string = Samba Server Version %v
disable netbios = yes
log file = /var/log/samba/log.%m
max log size = 50
security = ads
realm = EXAMPLE.COM
ldap ssl = off
idmap config * : backend = ldap
idmap config * : ldap_url = ldaps://ldap.mydomain.com:636/
idmap config * : ldap_base_dn = dc=mydomain,dc=com
idmap config * : ldap_user_dn = uid=samba,ou=agents,dc=mydomain,dc=com
idmap config * : read only = yes
idmap config * : range = 1000-65535
kerberos method = secrets and keytab
load printers = no
printcap name = /dev/null
printing = bsd
disable spoolss = yes
[home]
comment = Home Directories
path = /home/%U
browseable = no
writable = yes
create mask = 0600
directory mask = 0700
valid users = EXAMPLE%U
preexec = ls /home/%U
[share]
path = /home/share
writable = yes
valid users = @share
force group = share
create mask = 0660
directory mask = 0770
preexec = ls /home/share
Here is the problem:
smbclient //myhost.fqdn/home -U <user>
performs winbind authentication and successfully connects to the share for any value of<user>
smbclient //myhost.fqdn/share -U <user
performs winbind authentication but fails to determine from ldap.mydomain.com that<user>
is in group 'share', thus returningtree connect failed: NT_STATUS_ACCESS_DENIED
Additional information:
testparm
shows no errors or warningswbinfo -u
returns list of EXAMPLE.COM domain userswbinfo -g
returns list of EXAMPLE.COM domain groups- SSH login of domain users (i.e. ssh user@host) works
log.winbindd-idmap
shows:
[2019/06/08 15:58:23.175342, 3] ../source3/winbindd/idmap.c:397(idmap_init_domain)
idmap backend ldap not found
[2019/06/08 15:58:23.177972, 3] ../lib/util/modules.c:167(load_module_absolute_path)
load_module_absolute_path: Module '/usr/lib64/samba/idmap/ldap.so' loaded
[2019/06/08 15:58:23.179407, 2] ../source3/lib/smbldap.c:847(smbldap_open_connection)
smbldap_open_connection: connection opened
[2019/06/08 15:58:23.340963, 3] ../source3/lib/smbldap.c:1069(smbldap_connect_system)
ldap_connect_system: successful connection to the LDAP server
[2019/06/08 15:58:23.343603, 1] ../source3/winbindd/idmap_ldap.c:484(idmap_ldap_db_init)
idmap_ldap_db_init: failed to verify ID pool (NT_STATUS_UNSUCCESSFUL)
[2019/06/08 15:58:23.343810, 1] ../source3/winbindd/idmap.c:447(idmap_init_domain)
idmap initialization returned NT_STATUS_UNSUCCESSFUL
Setting a higher debug level suggests that the final NT_STATUS_UNSUCCESSFUL comes from an attempt to make changes to the basedn, but I do not understand why idmap backend ldap not found
appears or why Samba/winbind needs to make changes to the LDAP database, particularly when the readonly property is set in smb.conf
. Finally, I am not sure if these lines even explain the problem.
We have a working CentOS 6 deployment that perfectly functions without winbind while performing this split Active Directory authentication with separate LDAP user/group lookup. How can we achieve what we want with Samba 4.8.0 in CentOS 7? Why are the idmap config
lines in smb.conf not instructing Samba to get group membership information from ldap.mydomain.com
?
centos centos7 samba samba4 winbind
centos centos7 samba samba4 winbind
edited Jun 9 at 20:30
rg6
asked Jun 7 at 13:59
rg6rg6
1001 silver badge8 bronze badges
1001 silver badge8 bronze badges
add a comment |
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "2"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f970558%2fsamba-authenticate-against-active-directory-using-winbind-but-authorize-against%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Server Fault!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f970558%2fsamba-authenticate-against-active-directory-using-winbind-but-authorize-against%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown