mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-12 04:05:53 +02:00
It is complicated to set the password in the C helper binary. Therefore it is being set by a helper script. This is still not an optimal solution since the password might be exposed to the shell environment, but has the advantage that shell command injection is no longer possible. Fixes: #12562 Reported-by: Albert Schwarzkopf <ipfire@quitesimple.org> Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
125 lines
4.4 KiB
Plaintext
125 lines
4.4 KiB
Plaintext
###############################################################################
|
|
# #
|
|
# IPFire.org - A linux based firewall #
|
|
# Copyright (C) 2007-2020 IPFire Team <info@ipfire.org> #
|
|
# #
|
|
# This program is free software: you can redistribute it and/or modify #
|
|
# it under the terms of the GNU General Public License as published by #
|
|
# the Free Software Foundation, either version 3 of the License, or #
|
|
# (at your option) any later version. #
|
|
# #
|
|
# This program is distributed in the hope that it will be useful, #
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
|
# GNU General Public License for more details. #
|
|
# #
|
|
# You should have received a copy of the GNU General Public License #
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
|
|
# #
|
|
###############################################################################
|
|
|
|
###############################################################################
|
|
# Definitions
|
|
###############################################################################
|
|
|
|
include Config
|
|
|
|
VER = 4.13.1
|
|
|
|
THISAPP = samba-$(VER)
|
|
DL_FILE = $(THISAPP).tar.gz
|
|
DL_FROM = $(URL_IPFIRE)
|
|
DIR_APP = $(DIR_SRC)/$(THISAPP)
|
|
TARGET = $(DIR_INFO)/$(THISAPP)
|
|
PROG = samba
|
|
PAK_VER = 75
|
|
|
|
DEPS = avahi cups libtirpc krb5 perl-Parse-Yapp
|
|
|
|
###############################################################################
|
|
# Top-level Rules
|
|
###############################################################################
|
|
|
|
objects = $(DL_FILE)
|
|
|
|
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
|
|
|
|
$(DL_FILE)_MD5 = d9243ab374897ba91aa3eb7354e83553
|
|
|
|
install : $(TARGET)
|
|
|
|
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
|
|
|
|
download :$(patsubst %,$(DIR_DL)/%,$(objects))
|
|
|
|
md5 : $(subst %,%_MD5,$(objects))
|
|
|
|
dist:
|
|
@$(PAK)
|
|
|
|
###############################################################################
|
|
# Downloading, checking, md5sum
|
|
###############################################################################
|
|
|
|
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
|
|
@$(CHECK)
|
|
|
|
$(patsubst %,$(DIR_DL)/%,$(objects)) :
|
|
@$(LOAD)
|
|
|
|
$(subst %,%_MD5,$(objects)) :
|
|
@$(MD5)
|
|
|
|
###############################################################################
|
|
# Installation Details
|
|
###############################################################################
|
|
|
|
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
|
@$(PREBUILD)
|
|
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
|
|
cd $(DIR_APP) && ./configure \
|
|
--prefix=/usr \
|
|
--libdir=/usr/lib/ \
|
|
--sysconfdir=/var/ipfire \
|
|
--localstatedir=/var \
|
|
--without-ad-dc \
|
|
--with-cachedir=/var/lib/samba \
|
|
--with-lockdir=/var/lib/samba \
|
|
--with-piddir=/var/run \
|
|
--with-ads \
|
|
--with-acl-support \
|
|
--with-sendfile-support \
|
|
--with-winbind \
|
|
--enable-avahi \
|
|
--enable-cups \
|
|
--enable-fhs \
|
|
--with-syslog
|
|
cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
|
|
cd $(DIR_APP) && make install
|
|
|
|
-mkdir -p /var/ipfire/samba
|
|
cd $(DIR_APP)/source3 && install -v -m644 ../examples/smb.conf.default /var/ipfire/samba
|
|
cp -vrf $(DIR_SRC)/config/samba/* /var/ipfire/samba/
|
|
chown nobody:nobody -R /var/ipfire/samba/
|
|
cat /var/ipfire/samba/global /var/ipfire/samba/shares > /var/ipfire/samba/smb.conf
|
|
rm -rf /var/lib/samba/private
|
|
ln -s /var/ipfire/samba/private /var/lib/samba/private
|
|
install -v -m 644 $(DIR_SRC)/config/backup/includes/samba /var/ipfire/backup/addons/includes/samba
|
|
|
|
-mkdir -p /var/lib/samba/winbindd_privileged
|
|
chmod 750 /var/lib/samba/winbindd_privileged
|
|
chgrp wbpriv /var/lib/samba/winbindd_privileged
|
|
|
|
# Create spool directory for print jobs
|
|
mkdir -p /var/spool/samba
|
|
chmod -v 1777 /var/spool/samba/
|
|
|
|
# Install password change helper script
|
|
install -m 755 $(DIR_SRC)/config/samba/samba-change-password /usr/sbin/samba-change-password
|
|
|
|
#install initscripts
|
|
$(call INSTALL_INITSCRIPT,samba)
|
|
|
|
@rm -rf $(DIR_APP)
|
|
@$(POSTBUILD)
|