Reinhard Russinger 7 rokov pred
rodič
commit
01e688304e

+ 106 - 0
board/PSG/iot2000/rootfs_overlay/etc/init.d/S97mysqld

@@ -0,0 +1,106 @@
+#!/bin/sh
+#
+# mysql
+#
+
+MYSQL_LIB="/var/lib/mysql"
+MYSQL_RUN="/run/mysql"
+MYSQL_PID="$MYSQL_RUN/mysqld.pid"
+MYSQL_BIN="/usr/bin"
+MYSQL_INSTALL="FALSE"
+
+wait_for_ready() {
+	WAIT_DELAY=5
+	while [ $WAIT_DELAY -gt 0 ]; do
+		if $MYSQL_BIN/mysqladmin ping > /dev/null 2>&1; then
+			return 0
+		fi
+		sleep 1
+		: $((WAIT_DELAY -= 1))
+	done
+	return 1
+}
+
+start() {
+	if [ `ls -1 $MYSQL_LIB | wc -l` = 0 ] ; then
+		printf "Creating mysql system tables ... "
+
+		MYSQL_INSTALL="TRUE"		
+		$MYSQL_BIN/mysql_install_db --basedir=/usr --user=mysql \
+			--datadir=$MYSQL_LIB > /dev/null 2>&1
+		if [ $? != 0 ]; then
+			echo "FAIL"
+			exit 1
+		fi
+		echo "OK"
+	fi
+
+	# mysqld runs as user mysql, but /run is only writable by root
+	# so create a subdirectory for mysql.
+	install -d -o mysql -g root -m 0755 $MYSQL_RUN
+
+	# We don't use start-stop-daemon because mysqld has its own
+	# wrapper script.
+	printf "Starting mysql ... "
+	$MYSQL_BIN/mysqld_safe --pid-file=$MYSQL_PID --user=mysql \
+		> /dev/null 2>&1 &
+	wait_for_ready
+	[ $? = 0 ] && echo "OK" || echo "FAIL"
+	if [ $MYSQL_INSTALL = "TRUE" ]; then
+		# creat tzinfo for mysql
+		echo "create tzinfo for mysql"
+		mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql
+		[ $? = 0 ] && echo "tzinfo OK" || echo "tzinfo FAIL"
+		# create Melasan Database
+echo ">>>Create Melasan DB <<<"
+(
+cat << EOF
+set @@session.time_zone=UTC;
+create database if not exists Melasan;
+create user if not exists 'melasan'@'localhost' identified by 'Melasan2017';
+grant all privileges on Melasan.* to 'melasan'@'localhost';
+flush privileges;
+create table if not exists Melasan.Slid (
+Date timestamp not null,
+slid char(40) not null,
+EnableDone bool default false,
+readcnt int not null default 0,
+primary key (slid)
+) engine=innodb;
+EOF
+) | mysql -u root
+		[ $? = 0 ] && echo "genDB OK" || echo "genDB FAIL"
+		# ================
+	fi
+}
+
+stop() {
+	printf "Stopping mysql ... "
+	if [ -f $MYSQL_PID ]; then
+		kill `cat $MYSQL_PID` > /dev/null 2>&1
+		[ $? = 0 ] && echo "OK" || echo "FAIL"
+	else
+		echo "FAIL"
+	fi
+}
+
+restart() {
+	stop
+	sleep 1
+	start
+}
+
+case "$1" in
+  start)
+	start
+	;;
+  stop)
+	stop
+	;;
+  restart)
+	restart
+	;;
+  *)
+	echo "Usage: $0 {start|stop|restart}"
+	;;
+esac

+ 4 - 1
board/PSG/iot2000/rootfs_overlay/etc/init.d/rcS

@@ -1,5 +1,4 @@
 #!/bin/sh
-iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
 echo 1 > /proc/sys/net/ipv4/ip_forward
 
 # Start all init scripts in /etc/init.d
@@ -28,3 +27,7 @@ done
 
 #---- start ethernet gadget
 /root/gadget.sh
+#--- iptables
+iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
+/root/portfwd.sh
+#----

+ 27 - 0
board/PSG/iot2000/rootfs_overlay/etc/profile

@@ -0,0 +1,27 @@
+export PATH=/bin:/sbin:/usr/bin:/usr/sbin
+
+if [ "$PS1" ]; then
+	if [ "`id -u`" -eq 0 ]; then
+		export PS1='# '
+	else
+		export PS1='$ '
+	fi
+fi
+
+export PAGER='/bin/more '
+export EDITOR='/bin/vi'
+export TERM='linux'
+
+# Source configuration files from /etc/profile.d
+for i in /etc/profile.d/*.sh ; do
+	if [ -r "$i" ]; then
+		. $i
+	fi
+	unset i
+done
+
+#--- aliases
+alias status="/opt/AuthenticVision/CMDHelper status"
+alias active="/opt/AuthenticVision/CMDHelper active"
+alias inactive="/opt/AuthenticVision/CMDHelper inactive"
+alias reset="/opt/AuthenticVision/CMDHelper reset"

+ 1 - 0
board/PSG/iot2000/rootfs_overlay/etc/tinc/genkey_psgnet.sh

@@ -46,6 +46,7 @@ EOF
 (\
 cat << EOF
 Name = $NODENAME
+PingTimeout = 40
 AddressFamily = ipv4
 Interface = tun5
 Port = 443

+ 16 - 0
board/PSG/iot2000/rootfs_overlay/etc/tinc/psgnet/hosts/melasan

@@ -0,0 +1,16 @@
+#--- automatisch erstellt
+Subnet = 10.222.0.100/32
+
+-----BEGIN RSA PUBLIC KEY-----
+MIICCgKCAgEAnPPEgphOtFXeV6Isv0KOV8GfnQSy0U86/GpifWo+rBEYNjbW7fwu
+bdbjuEEnUz4FExOOPw912fG+q/wBvq/3H3r3bIWDfNoA6ZqGZ0WDUuPJS1rMVgyq
+eVf8xooI3W+pBrYPW8v+5+8FB3HoWvB39HhveeDhM53vXlECmBu9gZjU9AmRsgZz
+0o/T1Mcp1aNkRcbLm7nbPiyZvteAgSAXCoYu1iJHyPbm4TgmiJcJl3QRmXM4KXFo
+LpTJL+DRDkSRxw7WtC/gjfC9JpmRN49gmsFeGl8wVFepcBH1wCCOALLRJXJiwMSA
+fRDrrXothGRHDoXn2d27WFiPQ4adyX9dXB2j8ZpYNW7s0e4Z9a3V7qU947AH/L4J
+UHey0Au0qFHKNpVLmGP428eCzHJU6lLv00sMsHS3ltBioGXHP+4m89i+xDLGJs/A
+pXrBJ8H52LttmwXPOZZ/or1scPPFbeOzVdYUaVOhgVXU4TdomY1on64tOWVdK4lQ
+vN7jvONo8Cy6z1aT/N7owDXDJev4vi1p22713Olpv41v00rDk/WFl0hgdxL533Vq
+Rk5yFK0m9EGKq+P8/+GUvVd5oGuTkfRaBgSDHtIxbjJxasHdu2PS6c87RlzToh/0
+QFEAMevTYLQvYO+dySYBFm2GiTcA1QL7Dkk1us8Ykex6bi5HlnN3z+0CAwEAAQ==
+-----END RSA PUBLIC KEY-----

+ 16 - 0
board/PSG/iot2000/rootfs_overlay/etc/tinc/psgnet/hosts/psgnet

@@ -0,0 +1,16 @@
+Address = gogs.psg-bgh.de 443
+Subnet = 10.222.0.1/32
+
+-----BEGIN RSA PUBLIC KEY-----
+MIICCgKCAgEA0C7f+XIVcIJ0hHPkLXQ2HSAsqRBGuZBND3opPEI9IlR13HemSpIT
+N0ME4guB94I6RyUyTu/JhHzwUUFNnD/3OtEu3fPmmyjPUk0+nhsvoaqN9JBT/U9/
+ujgziNR5N1l6m/51FDU0dryOLASgnyWEPr7ozesrUcZxV12iAdspa2zsDMoLBhbC
+/ro2pqp0cSNzsuWhV2qEXiJEoTIU71t6t0cvWpXzwGSqUPxxJuQ74I0Xx7q/6eFm
+jy44x7L5OX/EIqanSUoQ+pFCit7Vdb1CNU+s6OWnxA9dxxWdVfCkB9CrPbto4o8t
+R6qbA2Y8F5hOAdeEYD/rpqAs/WcvNxiMtK0Zkr1sJIQv9ujY6dwCv9LShsEtCJkk
+F4eYuak2kGStWBQmpbCBqAleglt9pI7azzBi4Dt/17O4qQZJLjJuaT6TOc2cx8+s
+D24x3mUwpsYhUNx19/e5IYlJZSQhJNHUa212LT+7dmjwkAoUGZ2ZUIjWUpOBAPXJ
+K2FAunOOPd5HImIKz3ST6zHTy9L0xnGSK4K52//bfsOnpo4pGtu5ERWqU+66gjyq
+MJLBKcajRP9JZIyFvHgJYBE1LFo4e7hs4SHf3hon8TptcuVcL5ANQm8ZXyQH5riL
+Sxx0a9uhkBFpLcvy1VIWgtyYyFDe+4PyXAP+CPvkJc69PuIibN9Vk+ECAwEAAQ==
+-----END RSA PUBLIC KEY-----

+ 52 - 0
board/PSG/iot2000/rootfs_overlay/etc/tinc/psgnet/rsa_key.priv

@@ -0,0 +1,52 @@
+
+-----BEGIN RSA PRIVATE KEY-----
+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
+-----END RSA PRIVATE KEY-----

+ 2 - 0
board/PSG/iot2000/rootfs_overlay/etc/tinc/psgnet/tinc-down

@@ -0,0 +1,2 @@
+#!/bin/sh
+ifconfig $INTERFACE down

+ 2 - 0
board/PSG/iot2000/rootfs_overlay/etc/tinc/psgnet/tinc-up

@@ -0,0 +1,2 @@
+#!/bin/sh
+ifconfig $INTERFACE 10.222.0.100 netmask 255.255.255.0

+ 7 - 0
board/PSG/iot2000/rootfs_overlay/etc/tinc/psgnet/tinc.conf

@@ -0,0 +1,7 @@
+Name = melasan
+PingTimeout = 40
+AddressFamily = ipv4
+Interface = tun5
+Port = 443
+Mode = router
+ConnectTo = psgnet

BIN
board/PSG/iot2000/rootfs_overlay/opt/AuthenticVision/CMDHelper


+ 18 - 0
board/PSG/iot2000/rootfs_overlay/root/delportfwd.sh

@@ -0,0 +1,18 @@
+#!/bin/sh
+#
+
+del_portfwd () {
+DESTPORT=$1
+DESTIP=$2
+SRCPORT=$3
+SRCIP=$4
+SRCIFACE=$5
+
+iptables -t nat -D PREROUTING -p tcp -i $SRCIFACE --dport $SRCPORT -j DNAT --to-destination $DESTIP:$DESTPORT
+iptables -D FORWARD -p tcp -d $SRCIP --dport $SRCPORT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
+
+}
+
+del_portfwd 80 192.168.0.100 81 192.168.7.2 usb0
+del_portfwd 80 192.168.0.100 81 `ifconfig eth0 2>/dev/null|awk '/inet addr:/ {print $2}'|sed 's/addr://'` eth0
+del_portfwd 80 192.168.0.100 81 `ifconfig tun5 2>/dev/null|awk '/inet addr:/ {print $2}'|sed 's/addr://'` tun5

+ 32 - 0
board/PSG/iot2000/rootfs_overlay/root/portfwd.sh

@@ -0,0 +1,32 @@
+#!/bin/sh
+#
+
+del_portfwd () {
+DESTPORT=$1
+DESTIP=$2
+SRCPORT=$3
+SRCIP=$4
+SRCIFACE=$5
+
+iptables -t nat -D PREROUTING -p tcp -i $SRCIFACE --dport $SRCPORT -j DNAT --to-destination $DESTIP:$DESTPORT 2> /dev/null
+iptables -D FORWARD -p tcp -d $SRCIP --dport $SRCPORT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT 2> /dev/null
+
+}
+
+set_portfwd () {
+DESTPORT=$1
+DESTIP=$2
+SRCPORT=$3
+SRCIP=$4
+SRCIFACE=$5
+
+del_portfwd $1 $2 $3 $4 $5
+
+iptables -t nat -A PREROUTING -p tcp -i $SRCIFACE --dport $SRCPORT -j DNAT --to-destination $DESTIP:$DESTPORT
+iptables -A FORWARD -p tcp -d $SRCIP --dport $SRCPORT -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
+
+}
+
+set_portfwd 80 192.168.0.100 81 192.168.7.2 usb0
+set_portfwd 80 192.168.0.100 81 `ifconfig eth0 2>/dev/null|awk '/inet addr:/ {print $2}'|sed 's/addr://'` eth0
+set_portfwd 80 192.168.0.100 81 `ifconfig tun5 2>/dev/null|awk '/inet addr:/ {print $2}'|sed 's/addr://'` tun5

+ 0 - 1
configs/iot2000_defconfig

@@ -71,7 +71,6 @@ BR2_PACKAGE_SDL_MIXER=y
 BR2_PACKAGE_SDL_TTF=y
 BR2_PACKAGE_QT5=y
 BR2_PACKAGE_QT5BASE_MYSQL=y
-BR2_PACKAGE_QT5BASE_PSQL=y
 BR2_PACKAGE_QT5BASE_SQLITE_SYSTEM=y
 BR2_PACKAGE_LINUX_FIRMWARE=y
 BR2_PACKAGE_LINUX_FIRMWARE_INTEL_SST_DSP=y