|
@@ -147,6 +147,33 @@ function searx_set_background_image {
|
147
|
147
|
esac
|
148
|
148
|
}
|
149
|
149
|
|
|
150
|
+function searx_enable_login {
|
|
151
|
+ dialog --title $"Enable Searx login" \
|
|
152
|
+ --backtitle $"Freedombone Control Panel" \
|
|
153
|
+ --defaultno \
|
|
154
|
+ --yesno $"\nDo you want to add a login so that random web users can't use your metasearch engine?" 10 60
|
|
155
|
+ sel=$?
|
|
156
|
+ case $sel in
|
|
157
|
+ 0) if grep -q '#auth_basic' /etc/nginx/sites-available/searx; then
|
|
158
|
+ sed -i 's|#auth_basic|auth_basic|g' /etc/nginx/sites-available/searx
|
|
159
|
+ systemctl restart nginx
|
|
160
|
+ fi
|
|
161
|
+ read_config_param $MY_USERNAME
|
|
162
|
+ SEARX_LOGIN_PASS=$(${PROJECT_NAME}-pass -u $MY_USERNAME -a searx)
|
|
163
|
+ dialog --title $"Enable Searx login" \
|
|
164
|
+ --msgbox $"Searx logins are now enabled with the password $SEARX_LOGIN_PASS" 6 65
|
|
165
|
+ SEARX_LOGIN_PASS=
|
|
166
|
+ ;;
|
|
167
|
+ 1) if ! grep -q '#auth_basic' /etc/nginx/sites-available/searx; then
|
|
168
|
+ sed -i 's|auth_basic|#auth_basic|g' /etc/nginx/sites-available/searx
|
|
169
|
+ systemctl restart nginx
|
|
170
|
+ fi
|
|
171
|
+ dialog --title $"Disable Searx login" \
|
|
172
|
+ --msgbox $"Searx logins are now disabled. Anyone can access your metasearch engine." 6 65
|
|
173
|
+ ;;
|
|
174
|
+ esac
|
|
175
|
+}
|
|
176
|
+
|
150
|
177
|
function configure_interactive_searx {
|
151
|
178
|
while true
|
152
|
179
|
do
|
|
@@ -154,9 +181,10 @@ function configure_interactive_searx {
|
154
|
181
|
trap "rm -f $data" 0 1 2 5 15
|
155
|
182
|
dialog --backtitle $"Freedombone Control Panel" \
|
156
|
183
|
--title $"SearX Metasearch" \
|
157
|
|
- --radiolist $"Choose an operation:" 11 70 2 \
|
|
184
|
+ --radiolist $"Choose an operation:" 12 70 3 \
|
158
|
185
|
1 $"Set a background image" off \
|
159
|
|
- 2 $"Exit" on 2> $data
|
|
186
|
+ 2 $"Enable login" off \
|
|
187
|
+ 3 $"Exit" on 2> $data
|
160
|
188
|
sel=$?
|
161
|
189
|
case $sel in
|
162
|
190
|
1) return;;
|
|
@@ -164,7 +192,8 @@ function configure_interactive_searx {
|
164
|
192
|
esac
|
165
|
193
|
case $(cat $data) in
|
166
|
194
|
1) searx_set_background_image;;
|
167
|
|
- 2) break;;
|
|
195
|
+ 2) searx_enable_login;;
|
|
196
|
+ 3) break;;
|
168
|
197
|
esac
|
169
|
198
|
done
|
170
|
199
|
}
|
|
@@ -942,8 +971,8 @@ function install_searx {
|
942
|
971
|
function_check nginx_limits
|
943
|
972
|
nginx_limits searx '1M'
|
944
|
973
|
echo ' proxy_pass http://localhost:8888;' >> /etc/nginx/sites-available/searx
|
945
|
|
- echo " auth_basic \"${SEARX_LOGIN_TEXT}\";" >> /etc/nginx/sites-available/searx
|
946
|
|
- echo ' auth_basic_user_file /etc/nginx/.htpasswd;' >> /etc/nginx/sites-available/searx
|
|
974
|
+ echo " #auth_basic \"${SEARX_LOGIN_TEXT}\";" >> /etc/nginx/sites-available/searx
|
|
975
|
+ echo ' #auth_basic_user_file /etc/nginx/.htpasswd;' >> /etc/nginx/sites-available/searx
|
947
|
976
|
echo ' }' >> /etc/nginx/sites-available/searx
|
948
|
977
|
echo '' >> /etc/nginx/sites-available/searx
|
949
|
978
|
echo ' fastcgi_buffers 64 4K;' >> /etc/nginx/sites-available/searx
|