[SCM] Samba Shared Repository - branch master updated
Andreas Schneider
asn at samba.org
Wed Jul 21 07:19:01 UTC 2021
The branch, master has been updated
via 84b9f58616e s3:tests: Add smbclient kerberos tests for ad_dc and ad_dc_fips
via 42e3fda5be5 autobuild: Exclude fips envs from samba and samba-mitkrb5
via e0fa3e359f1 bootstrap: Install krb5-workstation on Fedora based distros
from 0ac71061044 s3:smbd: really support AES-256* in the server
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 84b9f58616e0a4c5b36b1c2d4fee7928fbf9edc4
Author: Andreas Schneider <asn at samba.org>
Date: Tue Jul 20 14:58:09 2021 +0200
s3:tests: Add smbclient kerberos tests for ad_dc and ad_dc_fips
Signed-off-by: Andreas Schneider <asn at samba.org>
Reviewed-by: Alexander Bokovoy <ab at samba.org>
Autobuild-User(master): Andreas Schneider <asn at cryptomilk.org>
Autobuild-Date(master): Wed Jul 21 07:19:00 UTC 2021 on sn-devel-184
commit 42e3fda5be56cb96139093ca98e4dfb6817aea39
Author: Andreas Schneider <asn at samba.org>
Date: Tue Jul 20 19:06:28 2021 +0200
autobuild: Exclude fips envs from samba and samba-mitkrb5
The FIPS envs only work on Fedora. Ubuntu doesn't have FIPS support!
Signed-off-by: Andreas Schneider <asn at samba.org>
Reviewed-by: Alexander Bokovoy <ab at samba.org>
commit e0fa3e359f16b26122d49ad79372e3923f5ded77
Author: Andreas Schneider <asn at samba.org>
Date: Tue Jul 20 15:55:53 2021 +0200
bootstrap: Install krb5-workstation on Fedora based distros
Signed-off-by: Andreas Schneider <asn at samba.org>
Reviewed-by: Alexander Bokovoy <ab at samba.org>
-----------------------------------------------------------------------
Summary of changes:
.gitlab-ci-main.yml | 2 +-
bootstrap/config.py | 2 +-
bootstrap/generated-dists/centos7/bootstrap.sh | 1 +
bootstrap/generated-dists/centos7/packages.yml | 1 +
bootstrap/generated-dists/centos8/bootstrap.sh | 1 +
bootstrap/generated-dists/centos8/packages.yml | 1 +
bootstrap/generated-dists/fedora33/bootstrap.sh | 1 +
bootstrap/generated-dists/fedora33/packages.yml | 1 +
bootstrap/generated-dists/fedora34/bootstrap.sh | 1 +
bootstrap/generated-dists/fedora34/packages.yml | 1 +
bootstrap/generated-dists/opensuse151/bootstrap.sh | 1 +
bootstrap/generated-dists/opensuse151/packages.yml | 1 +
bootstrap/generated-dists/opensuse152/bootstrap.sh | 1 +
bootstrap/generated-dists/opensuse152/packages.yml | 1 +
bootstrap/sha1sum.txt | 2 +-
script/autobuild.py | 4 ++
source3/script/tests/test_smbclient_kerberos.sh | 84 ++++++++++++++++++++++
source3/selftest/tests.py | 11 +++
18 files changed, 114 insertions(+), 3 deletions(-)
create mode 100755 source3/script/tests/test_smbclient_kerberos.sh
Changeset truncated at 500 lines:
diff --git a/.gitlab-ci-main.yml b/.gitlab-ci-main.yml
index 1aee591b068..84cb9f0ba4e 100644
--- a/.gitlab-ci-main.yml
+++ b/.gitlab-ci-main.yml
@@ -42,7 +42,7 @@ variables:
# Set this to the contents of bootstrap/sha1sum.txt
# which is generated by bootstrap/template.py --render
#
- SAMBA_CI_CONTAINER_TAG: fa3eeb92fb5447524a057a4c377e6960dff626ce
+ SAMBA_CI_CONTAINER_TAG: 11d550c08430787a5b0eb8dc847977ffffe12bbe
#
# We use the ubuntu1804 image as default as
# it matches what we have on sn-devel-184.
diff --git a/bootstrap/config.py b/bootstrap/config.py
index b5d04d4e371..b02ce4cf566 100644
--- a/bootstrap/config.py
+++ b/bootstrap/config.py
@@ -116,7 +116,7 @@ PKGS = [
('bind9utils', 'bind-utils'),
('dnsutils', ''),
('xsltproc', 'libxslt'),
- ('krb5-user', ''),
+ ('krb5-user', 'krb5-workstation'),
('krb5-config', ''),
('krb5-kdc', 'krb5-server'),
('apt-utils', 'yum-utils'),
diff --git a/bootstrap/generated-dists/centos7/bootstrap.sh b/bootstrap/generated-dists/centos7/bootstrap.sh
index 00dd22b891f..36913f40b44 100755
--- a/bootstrap/generated-dists/centos7/bootstrap.sh
+++ b/bootstrap/generated-dists/centos7/bootstrap.sh
@@ -45,6 +45,7 @@ yum install -y \
keyutils-libs-devel \
krb5-devel \
krb5-server \
+ krb5-workstation \
lcov \
libacl-devel \
libarchive-devel \
diff --git a/bootstrap/generated-dists/centos7/packages.yml b/bootstrap/generated-dists/centos7/packages.yml
index 3f5e8331b40..4da3d61441f 100644
--- a/bootstrap/generated-dists/centos7/packages.yml
+++ b/bootstrap/generated-dists/centos7/packages.yml
@@ -31,6 +31,7 @@ packages:
- keyutils-libs-devel
- krb5-devel
- krb5-server
+ - krb5-workstation
- lcov
- libacl-devel
- libarchive-devel
diff --git a/bootstrap/generated-dists/centos8/bootstrap.sh b/bootstrap/generated-dists/centos8/bootstrap.sh
index a3079982dda..60cf3937cf7 100755
--- a/bootstrap/generated-dists/centos8/bootstrap.sh
+++ b/bootstrap/generated-dists/centos8/bootstrap.sh
@@ -54,6 +54,7 @@ yum install -y \
keyutils-libs-devel \
krb5-devel \
krb5-server \
+ krb5-workstation \
libacl-devel \
libarchive-devel \
libattr-devel \
diff --git a/bootstrap/generated-dists/centos8/packages.yml b/bootstrap/generated-dists/centos8/packages.yml
index 2994e81640a..f5d0ac5ffe6 100644
--- a/bootstrap/generated-dists/centos8/packages.yml
+++ b/bootstrap/generated-dists/centos8/packages.yml
@@ -34,6 +34,7 @@ packages:
- keyutils-libs-devel
- krb5-devel
- krb5-server
+ - krb5-workstation
- libacl-devel
- libarchive-devel
- libattr-devel
diff --git a/bootstrap/generated-dists/fedora33/bootstrap.sh b/bootstrap/generated-dists/fedora33/bootstrap.sh
index 106bd09ede8..22b968e9ae2 100755
--- a/bootstrap/generated-dists/fedora33/bootstrap.sh
+++ b/bootstrap/generated-dists/fedora33/bootstrap.sh
@@ -45,6 +45,7 @@ dnf install -y \
keyutils-libs-devel \
krb5-devel \
krb5-server \
+ krb5-workstation \
lcov \
libacl-devel \
libarchive-devel \
diff --git a/bootstrap/generated-dists/fedora33/packages.yml b/bootstrap/generated-dists/fedora33/packages.yml
index 9fa48ad4502..7c61da3c53a 100644
--- a/bootstrap/generated-dists/fedora33/packages.yml
+++ b/bootstrap/generated-dists/fedora33/packages.yml
@@ -34,6 +34,7 @@ packages:
- keyutils-libs-devel
- krb5-devel
- krb5-server
+ - krb5-workstation
- lcov
- libacl-devel
- libarchive-devel
diff --git a/bootstrap/generated-dists/fedora34/bootstrap.sh b/bootstrap/generated-dists/fedora34/bootstrap.sh
index 6686ab19250..d5fea5c008a 100755
--- a/bootstrap/generated-dists/fedora34/bootstrap.sh
+++ b/bootstrap/generated-dists/fedora34/bootstrap.sh
@@ -45,6 +45,7 @@ dnf install -y \
keyutils-libs-devel \
krb5-devel \
krb5-server \
+ krb5-workstation \
lcov \
libacl-devel \
libarchive-devel \
diff --git a/bootstrap/generated-dists/fedora34/packages.yml b/bootstrap/generated-dists/fedora34/packages.yml
index 1e488823dda..db12fdb5486 100644
--- a/bootstrap/generated-dists/fedora34/packages.yml
+++ b/bootstrap/generated-dists/fedora34/packages.yml
@@ -34,6 +34,7 @@ packages:
- keyutils-libs-devel
- krb5-devel
- krb5-server
+ - krb5-workstation
- lcov
- libacl-devel
- libarchive-devel
diff --git a/bootstrap/generated-dists/opensuse151/bootstrap.sh b/bootstrap/generated-dists/opensuse151/bootstrap.sh
index 2271e2ea8b2..e4771284f4d 100755
--- a/bootstrap/generated-dists/opensuse151/bootstrap.sh
+++ b/bootstrap/generated-dists/opensuse151/bootstrap.sh
@@ -40,6 +40,7 @@ zypper --non-interactive install \
hostname \
htop \
keyutils-devel \
+ krb5-client \
krb5-devel \
krb5-server \
lcov \
diff --git a/bootstrap/generated-dists/opensuse151/packages.yml b/bootstrap/generated-dists/opensuse151/packages.yml
index 5710c60bd8b..d465252e26b 100644
--- a/bootstrap/generated-dists/opensuse151/packages.yml
+++ b/bootstrap/generated-dists/opensuse151/packages.yml
@@ -28,6 +28,7 @@ packages:
- hostname
- htop
- keyutils-devel
+ - krb5-client
- krb5-devel
- krb5-server
- lcov
diff --git a/bootstrap/generated-dists/opensuse152/bootstrap.sh b/bootstrap/generated-dists/opensuse152/bootstrap.sh
index ae766095a4d..bdfb121b345 100755
--- a/bootstrap/generated-dists/opensuse152/bootstrap.sh
+++ b/bootstrap/generated-dists/opensuse152/bootstrap.sh
@@ -40,6 +40,7 @@ zypper --non-interactive install \
hostname \
htop \
keyutils-devel \
+ krb5-client \
krb5-devel \
krb5-server \
lcov \
diff --git a/bootstrap/generated-dists/opensuse152/packages.yml b/bootstrap/generated-dists/opensuse152/packages.yml
index 6bc1a137ca7..75a37074791 100644
--- a/bootstrap/generated-dists/opensuse152/packages.yml
+++ b/bootstrap/generated-dists/opensuse152/packages.yml
@@ -28,6 +28,7 @@ packages:
- hostname
- htop
- keyutils-devel
+ - krb5-client
- krb5-devel
- krb5-server
- lcov
diff --git a/bootstrap/sha1sum.txt b/bootstrap/sha1sum.txt
index e198e6b80ae..0e70f1937b9 100644
--- a/bootstrap/sha1sum.txt
+++ b/bootstrap/sha1sum.txt
@@ -1 +1 @@
-fa3eeb92fb5447524a057a4c377e6960dff626ce
+11d550c08430787a5b0eb8dc847977ffffe12bbe
diff --git a/script/autobuild.py b/script/autobuild.py
index 85dff88a773..7ec3073f67e 100755
--- a/script/autobuild.py
+++ b/script/autobuild.py
@@ -326,6 +326,8 @@ tasks = {
"schema_pair_dc",
"schema_dc",
"clusteredmember",
+ "ad_dc_fips",
+ "ad_member_fips",
])),
("test-slow-none", make_test(cmd='make test', TESTS="--include=selftest/slow-none", include_envs=["none"])),
("lcov", LCOV_CMD),
@@ -392,6 +394,8 @@ tasks = {
"schema_pair_dc",
"schema_dc",
"clusteredmember",
+ "ad_dc_fips",
+ "ad_member_fips",
])),
("lcov", LCOV_CMD),
("install", "make install"),
diff --git a/source3/script/tests/test_smbclient_kerberos.sh b/source3/script/tests/test_smbclient_kerberos.sh
new file mode 100755
index 00000000000..cbc7934484d
--- /dev/null
+++ b/source3/script/tests/test_smbclient_kerberos.sh
@@ -0,0 +1,84 @@
+#!/bin/sh
+
+if [ $# -lt 6 ]; then
+cat <<EOF
+Usage: test_smbclient_kerberos.sh USERNAME REALM PASSWORD SERVER SMBCLIENT TARGET
+EOF
+exit 1
+fi
+
+USERNAME="$1"
+REALM=$2
+PASSWORD="$3"
+SERVER="$4"
+smbclient="$5"
+TARGET="$6"
+shift 6
+
+incdir=$(dirname $0)/../../../testprogs/blackbox
+. ${incdir}/subunit.sh
+. ${incdir}/common_test_fns.inc
+
+failed=0
+
+samba_kinit=kinit
+if test -x ${BINDIR}/samba4kinit; then
+ samba_kinit=${BINDIR}/samba4kinit
+fi
+
+samba_kdestroy=kdestroy
+if test -x ${BINDIR}/samba4kdestroy; then
+ samba_kinit=${BINDIR}/samba4kdestroy
+fi
+
+KRB5CCNAME_PATH="${PREFIX}/ccache_smbclient_kerberos"
+KRB5CCNAME="FILE:${KRB5CCNAME_PATH}"
+export KRB5CCNAME
+
+# For ad_dc_fips this should succeed as Kerberos is set to required by default
+test_smbclient "smbclient.smb3.kerberos[//${SERVER}/tmp]" \
+ "ls; quit" //${SERVER}/tmp \
+ -U${USERNAME}%${PASSWORD} -mSMB3 || \
+ failed=$(expr $failed + 1)
+
+
+test_smbclient "smbclient.smb3.kerberos.required[//${SERVER}/tmp]" \
+ "ls; quit" //${SERVER}/tmp \
+ --use-kerberos=required -U${USERNAME}%${PASSWORD} -mSMB3 || \
+ failed=$(expr $failed + 1)
+
+test_smbclient "smbclient.smb3.kerberos.desired[//${SERVER}/tmp]" \
+ "ls; quit" //${SERVER}/tmp \
+ --use-kerberos=desired -U${USERNAME}%${PASSWORD} -mSMB3 || \
+ failed=$(expr $failed + 1)
+
+if [ "$TARGET" = "ad_dc_fips" ] || [ "$TARGET" = "ad_member_fips" ]; then
+ test_smbclient_expect_failure "smbclient.smb3.kerberos.off[//${SERVER}/tmp]" \
+ "ls; quit" //${SERVER}/tmp \
+ --use-kerberos=off -U${USERNAME}%${PASSWORD} -mSMB3 || \
+ failed=$(expr $failed + 1)
+else
+ test_smbclient "smbclient.smb3.kerberos.off[//${SERVER}/tmp]" \
+ "ls; quit" //${SERVER}/tmp \
+ --use-kerberos=off -U${USERNAME}%${PASSWORD} -mSMB3 || \
+ failed=$(expr $failed + 1)
+fi
+
+kerberos_kinit $samba_kinit ${USERNAME}@${REALM} ${PASSWORD}
+test_smbclient "smbclient.smb3.kerberos.ccache[//${SERVER}/tmp]" \
+ "ls; quit" //${SERVER}/tmp \
+ --use-krb5-ccache=${KRB5CCNAME} -mSMB3 || \
+ failed=$(expr $failed + 1)
+ "ls; quit" //${SERVER}/tmp \
+ --use-kerberos=desired -U${USERNAME}%${PASSWORD} -mSMB3 || \
+ failed=$(expr $failed + 1)
+test_smbclient "smbclient.smb3.kerberos.desired[//${SERVER}/tmp]" \
+ "ls; quit" //${SERVER}/tmp \
+ --use-kerberos=desired -U${USERNAME}%${PASSWORD} -mSMB3 || \
+ failed=$(expr $failed + 1)
+
+
+$samba_kdestroy
+
+
+rm -rf $KRB5CCNAME_PATH
diff --git a/source3/selftest/tests.py b/source3/selftest/tests.py
index cf745907219..a9745740118 100755
--- a/source3/selftest/tests.py
+++ b/source3/selftest/tests.py
@@ -1157,6 +1157,17 @@ for env in ['fileserver', 'simpleserver']:
"$USERNAME", "$PASSWORD", "$SERVER",
smbclient3, env])
+for env in ['ad_dc', 'ad_dc_fips', 'ad_member_fips']:
+ plantestsuite("samba3.blackbox.smbclient.kerberos", env,
+ [os.path.join(samba3srcdir,
+ "script/tests/test_smbclient_kerberos.sh"),
+ "alice",
+ "$REALM",
+ "Secret007",
+ "$SERVER",
+ smbclient3,
+ env])
+
plantestsuite("samba3.blackbox.rpcclient_netsessenum", "ad_member",
[os.path.join(samba3srcdir,
"script/tests/test_rpcclient_netsessenum.sh"),
--
Samba Shared Repository
More information about the samba-cvs
mailing list