| Line 1... |
Line 1... |
| 1 |
#!/bin/bash
|
1 |
#!/bin/bash
|
| 2 |
# $Id: alcasar.sh 2600 2018-08-19 23:48:55Z tom.houdayer $
|
2 |
# $Id: alcasar.sh 2601 2018-08-19 23:58:27Z tom.houdayer $
|
| 3 |
|
3 |
|
| 4 |
# alcasar.sh
|
4 |
# alcasar.sh
|
| 5 |
# ALCASAR is a Free and open source NAC created by Franck BOUIJOUX (3abtux), Pascal LEVANT and Richard REY (Rexy)
|
5 |
# ALCASAR is a Free and open source NAC created by Franck BOUIJOUX (3abtux), Pascal LEVANT and Richard REY (Rexy)
|
| 6 |
# This script is distributed under the Gnu General Public License (GPL)
|
6 |
# This script is distributed under the Gnu General Public License (GPL)
|
| 7 |
# team@alcasar.net
|
7 |
# team@alcasar.net
|
| Line 1785... |
Line 1785... |
| 1785 |
## - Creating of SMS management database ##
|
1785 |
## - Creating of SMS management database ##
|
| 1786 |
## - Write the gammu a gammu_smsd conf files ##
|
1786 |
## - Write the gammu a gammu_smsd conf files ##
|
| 1787 |
#########################################################
|
1787 |
#########################################################
|
| 1788 |
gammu_smsd()
|
1788 |
gammu_smsd()
|
| 1789 |
{
|
1789 |
{
|
| - |
|
1790 |
# Create 'gammu' system user
|
| - |
|
1791 |
groupadd -f gammu_smsd
|
| - |
|
1792 |
useradd --system -g gammu_smsd -s /bin/false -c "system user for gammu_smsd" gammu_smsd
|
| - |
|
1793 |
usermod -a -G dialout gammu_smsd
|
| - |
|
1794 |
|
| 1790 |
# Create 'gammu' databse
|
1795 |
# Create 'gammu' database
|
| 1791 |
MYSQL="/usr/bin/mysql -uroot -p$mysqlpwd --execute"
|
1796 |
MYSQL="/usr/bin/mysql -uroot -p$mysqlpwd --execute"
|
| 1792 |
$MYSQL="CREATE DATABASE IF NOT EXISTS $DB_GAMMU;GRANT ALL ON $DB_GAMMU.* TO $DB_USER@localhost IDENTIFIED BY '$radiuspwd';FLUSH PRIVILEGES"
|
1797 |
$MYSQL="CREATE DATABASE IF NOT EXISTS $DB_GAMMU; GRANT ALL ON $DB_GAMMU.* TO $DB_USER@localhost IDENTIFIED BY '$radiuspwd'; FLUSH PRIVILEGES;"
|
| 1793 |
# Add a gammu database structure
|
1798 |
# Add a gammu database structure
|
| 1794 |
mysql -u$DB_USER -p$radiuspwd $DB_GAMMU < $DIR_CONF/empty-gammu-smsd-db.sql
|
1799 |
mysql -u$DB_USER -p$radiuspwd $DB_GAMMU < $DIR_CONF/empty-gammu-smsd-db.sql
|
| 1795 |
|
1800 |
|
| 1796 |
# Config file for the gammu_smsd daemon & gammu (ttyUSB0 as default com port)
|
1801 |
# Config file for the gammu_smsd daemon & gammu (ttyUSB0 as default com port)
|
| 1797 |
cat << EOF > /etc/gammurc
|
1802 |
cat << EOF > /etc/gammurc
|
| 1798 |
[gammu]
|
1803 |
[gammu]
|
| 1799 |
device = /dev/ttyUSB0
|
1804 |
device = /dev/ttyUSB0
|
| 1800 |
connection = at115200
|
1805 |
connection = at115200
|
| 1801 |
EOF
|
1806 |
EOF
|
| 1802 |
|
1807 |
|
| 1803 |
cat << EOF > /etc/gammu_smsd_conf
|
1808 |
cat << EOF > /etc/gammu_smsd_conf
|
| 1804 |
[gammu]
|
1809 |
[gammu]
|
| 1805 |
port = /dev/ttyUSB0
|
1810 |
port = /dev/ttyUSB0
|
| 1806 |
connection = at115200
|
1811 |
connection = at115200
|
| 1807 |
|
1812 |
|
| 1808 |
[smsd]
|
1813 |
[smsd]
|
| Line 1828... |
Line 1833... |
| 1828 |
|
1833 |
|
| 1829 |
CheckSecurity = 1
|
1834 |
CheckSecurity = 1
|
| 1830 |
CheckSignal = 1
|
1835 |
CheckSignal = 1
|
| 1831 |
CheckBattery = 0
|
1836 |
CheckBattery = 0
|
| 1832 |
EOF
|
1837 |
EOF
|
| - |
|
1838 |
chmod 755 /etc/gammu_smsd_conf /etc/gammurc
|
| 1833 |
|
1839 |
|
| - |
|
1840 |
# Create the systemd unit
|
| 1834 |
chmod 755 /etc/gammu_smsd_conf /etc/gammurc
|
1841 |
cat << EOF > /lib/systemd/system/gammu-smsd.service
|
| - |
|
1842 |
[Unit]
|
| - |
|
1843 |
Description=SMS daemon for Gammu
|
| - |
|
1844 |
Documentation=man:gammu-smsd(1)
|
| - |
|
1845 |
After=network.target mysql.service
|
| 1835 |
|
1846 |
|
| - |
|
1847 |
[Service]
|
| - |
|
1848 |
Type=forking
|
| - |
|
1849 |
ExecStart=/usr/bin/gammu-smsd --config /etc/gammu_smsd_conf --user=gammu_smsd --group=gammu_smsd --pid=/var/run/gammu-smsd.pid --daemon
|
| 1836 |
# Log folder for gammu-smsd
|
1850 |
ExecReload=/bin/kill -HUP $MAINPID
|
| 1837 |
[ -e /var/log/gammu-smsd ] || mkdir /var/log/gammu-smsd
|
1851 |
ExecStopPost=/bin/rm -f /var/run/gammu-smsd.pid
|
| 1838 |
chmod 755 /var/log/gammu-smsd
|
1852 |
PIDFile=/var/run/gammu-smsd.pid
|
| 1839 |
|
1853 |
|
| - |
|
1854 |
[Install]
|
| - |
|
1855 |
WantedBy=multi-user.target
|
| - |
|
1856 |
EOF
|
| - |
|
1857 |
|
| 1840 |
# Write radius credentials in the gammu script
|
1858 |
# Log folder for gammu-smsd
|
| 1841 |
$SED "s/^u_db=\".*/u_db=\"$DB_USER\"/g" $DIR_DEST_BIN/alcasar-sms.sh
|
1859 |
[ -e /var/log/gammu-smsd ] || mkdir /var/log/gammu-smsd
|
| 1842 |
$SED "s/^p_db=\".*/p_db=\"$radiuspwd\"/g" $DIR_DEST_BIN/alcasar-sms.sh
|
1860 |
chmod 755 /var/log/gammu-smsd
|
| 1843 |
|
1861 |
|
| 1844 |
# Udev rule for Modeswitch (switch from "mass_storage" mode to "ttyUSB" modem) needed with some Huawei MODEM (idVendor: 12d1)
|
1862 |
# Udev rule for Modeswitch (switch from "mass_storage" mode to "ttyUSB" modem) needed with some Huawei MODEM (idVendor: 12d1)
|
| 1845 |
# normally not needed now since modeswitch is managed by udev (see Mageia RPM)
|
1863 |
# normally not needed now since modeswitch is managed by udev (see Mageia RPM)
|
| 1846 |
#cat << EOF > /lib/udev/rules.d/66-huawei.rules
|
1864 |
#cat << EOF > /lib/udev/rules.d/66-huawei.rules
|
| 1847 |
#KERNEL=="ttyUSB0",ATTRS{idVendor}=="12d1",RUN+="$DIR_DEST_BIN/alcasar-sms.sh --mode"
|
1865 |
#KERNEL=="ttyUSB0",ATTRS{idVendor}=="12d1",RUN+="$DIR_DEST_BIN/alcasar-sms.sh --mode"
|
| 1848 |
#EOF
|
1866 |
#EOF
|
| 1849 |
|
- |
|
| 1850 |
# Udev rule for fixing the enumeration of ttyUSB port on some MODEM (when they switch randomly the order of their ports at boot time)
|
1867 |
# Udev rule for fixing the enumeration of ttyUSB port on some MODEM (when they switch randomly the order of their ports at boot time)
|
| 1851 |
# example : http://hintshop.ludvig.co.nz/show/persistent-names-usb-serial-devices/
|
1868 |
# example : http://hintshop.ludvig.co.nz/show/persistent-names-usb-serial-devices/
|
| 1852 |
|
1869 |
|
| 1853 |
} # End gammu_smsd()
|
1870 |
} # End gammu_smsd()
|
| 1854 |
|
1871 |
|
| Line 2025... |
Line 2042... |
| 2025 |
SysVStartPriority=99
|
2042 |
SysVStartPriority=99
|
| 2026 |
|
2043 |
|
| 2027 |
[Install]
|
2044 |
[Install]
|
| 2028 |
WantedBy=multi-user.target
|
2045 |
WantedBy=multi-user.target
|
| 2029 |
EOF
|
2046 |
EOF
|
| - |
|
2047 |
/usr/bin/systemctl daemon-reload
|
| 2030 |
# processes launched at boot time (Systemctl)
|
2048 |
# processes launched at boot time (Systemctl)
|
| 2031 |
for i in alcasar-load_balancing mysqld lighttpd php-fpm ntpd iptables dnsmasq dnsmasq-blacklist dnsmasq-whitelist dnsmasq-blackhole radiusd nfsen e2guardian freshclam ulogd-ssh ulogd-traceability ulogd-ext-access chilli fail2ban havp tinyproxy vnstat sshd
|
2049 |
for i in alcasar-load_balancing mysqld lighttpd php-fpm ntpd iptables dnsmasq dnsmasq-blacklist dnsmasq-whitelist dnsmasq-blackhole radiusd nfsen e2guardian freshclam ulogd-ssh ulogd-traceability ulogd-ext-access chilli fail2ban havp tinyproxy vnstat sshd
|
| 2032 |
do
|
2050 |
do
|
| 2033 |
/usr/bin/systemctl -q enable $i.service
|
2051 |
/usr/bin/systemctl -q enable $i.service
|
| 2034 |
done
|
2052 |
done
|