@@ -1546,32 +1546,36 @@ public function configure_pureftpd() {
15461546 //if(is_file($conf['init_scripts'].'/'.'openbsd-inetd')) exec($conf['init_scripts'].'/'.'openbsd-inetd restart');
15471547 }
15481548
1549- //* backup old settings
1550- exec ("for i in $ config_dir/conf/*; do printf \$i\ ; cat \$i; done > $ config_dir/conf/.backup~ " );
1551- //* improves client compatibility
1552- exec ("echo yes > $ config_dir/conf/BrokenClientsCompatibility " );
1553- //* needed for ispconfig implementation
1554- exec ("echo yes > $ config_dir/conf/ChrootEveryone " );
1555- //* improves client compatibility
1556- exec ("echo yes > $ config_dir/conf/DisplayDotFiles " );
1557- //* improves performance
1558- exec ("echo yes > $ config_dir/conf/DontResolve " );
1559- //* complies with RFC2640
1560- exec ("echo UTF-8 > $ config_dir/conf/FSCharset " );
1561- //* provides welcome message
1562- exec ("echo $ config_dir/welcome.msg > $ config_dir/conf/FortunesFile " );
1563- //* increases the clients limit from 50 (default) to 1024
1564- exec ("echo 1024 > $ config_dir/conf/MaxClientsNumber " );
1565- //* prevents DoS attack from the same IP address
1566- exec ("echo 64 > $ config_dir/conf/MaxClientsPerIP " );
1567- //* needed for ispconfig implementation
1568- exec ("echo $ config_dir/db/mysql.conf > $ config_dir/conf/MySQLConfigFile " );
1569- //* needed for ispconfig implementation
1570- exec ("echo yes > $ config_dir/conf/NoAnonymous " );
1571- //* grade A encryption
1572- exec ("echo ECDHE:AES256-SHA:AES128-SHA:DES-CBC3-SHA:\!RC4 > $ config_dir/conf/TLSCipherSuite " );
1573- //* hides implementation details
1574- exec ("echo Welcome > $ config_dir/welcome.msg " );
1549+ if (!$ this ->is_update ) {
1550+ //* backup old settings
1551+ exec ("for i in $ config_dir/conf/*; do printf \$i\ ; cat \$i; printf ' \n'; done 2>&1 > $ config_dir/conf/.backup~ " );
1552+ //* clean common unused settings
1553+ exec ("rm $ config_dir/conf/MinUID $ config_dir/conf/PAMAuthentication $ config_dir/conf/PureDB $ config_dir/conf/UnixAuthentication 2> /dev/null " );
1554+ //* improves client compatibility
1555+ file_put_contents ("$ config_dir/conf/BrokenClientsCompatibility " ,"yes " );
1556+ //* needed for ispconfig implementation
1557+ file_put_contents ("$ config_dir/conf/ChrootEveryone " ,"yes " );
1558+ //* improves client compatibility
1559+ file_put_contents ("$ config_dir/conf/DisplayDotFiles " ,"yes " );
1560+ //* improves performance
1561+ file_put_contents ("$ config_dir/conf/DontResolve " ,"yes " );
1562+ //* complies with RFC2640
1563+ file_put_contents ("$ config_dir/conf/FSCharset " ,"UTF-8 " );
1564+ //* provides welcome message
1565+ file_put_contents ("$ config_dir/conf/FortunesFile " ,"$ config_dir/welcome.msg " );
1566+ //* increases the clients limit from 50 (default) to 1024
1567+ file_put_contents ("$ config_dir/conf/MaxClientsNumber " ,"1024 " );
1568+ //* prevents DoS attack from the same IP address
1569+ file_put_contents ("$ config_dir/conf/MaxClientsPerIP " ,"64 " );
1570+ //* needed for ispconfig implementation
1571+ file_put_contents ("$ config_dir/conf/MySQLConfigFile " ,"$ config_dir/db/mysql.conf " );
1572+ //* recommended for ispconfig implementation
1573+ file_put_contents ("$ config_dir/conf/NoAnonymous " ,"yes " );
1574+ //* grade A encryption
1575+ file_put_contents ("$ config_dir/conf/TLSCipherSuite " ,"ECDHE:AES256-SHA:AES128-SHA:DES-CBC3-SHA:!RC4 " );
1576+ //* hides implementation details
1577+ file_put_contents ("$ config_dir/welcome.msg " ,"Welcome " );
1578+ }
15751579 }
15761580
15771581 public function configure_mydns () {
0 commit comments