menuimage

Description

Notes

Options

Exit_Codes

Dependencies

License

Changelog

Download

Donation

My_Other_Sites

My_Programs

Comments

wifi-updown v0.8 [26 Oct 2023] by Dominic

Description

wifi-updown.sh brings up or takes down a wifi network interface depending on whether there is a live wired network interface. For use under GNU/Linux. Intended to be run at boot time (e.g. from /etc/rc.local) as a way to reduce the attack surface for a machine which has both wired and wifi interfaces connecting to the same network.

wifi-updown.sh can be run by a non-root user to show the situation, but not to make changes.

Notes

1. Taking down the wifi interface with wifi-updown.sh may leave the machine with no default route, so that DNS lookups fail - to check/fix this, run https://www.timedicer.co.uk/programs/help/routefix.sh.php after wifi-updown.sh.
2. To maintain consistent initial wifi state at boot time (i.e. on), and prevent it from being flipped by systemd, you may also need to specify kernel command line parameter 'systemd.restore_state=0' (e.g. by setting/modifying GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub)

Options

-h show this help and exit
-l show changelog and exit
-q be a little quieter (i.e. no header)

Exit Codes

A non-zero exit code indicates a problem. Wifi is enabled using 'rfkill' then 'ip link', and disabled using the same in reverse order. Where a change is attempted, the exit code for wifi-updown.sh is 10 x the exit code from 'rfkill' plus the exit code from 'ip link'.

Dependencies

logger[util-linux] rfkill[util-linux]

License

Copyright © 2023 Dominic Raferd. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://www.apache.org/licenses/LICENSE-2.0. Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Changelog

0.8 [26 Oct 2023] - minor changes to exit codes and to help text, full shellcheck conformity
0.7 [09 Oct 2023] - add display of start date/time
0.6 [28 Apr 2022] - small change to help text
0.5 [07 Jun 2020] - recognise any device with name beginning with 'w' as wifi
0.4 [30 Jan 2020] - add use of rfkill (as well as ip link set up/down)
0.3 [19 Dec 2019] - remove dependency on ifup/ifdown
0.2 [09 Nov 2018] - first public release
0.1 [05 Nov 2018] - first version with help/changelog

Download wifi-updown.sh

Donation

I have provided this software free gratis and for nothing. If you would like to thank me with a contribution, please let me know and I will send you a link. Thank you!

My Other Sites

My Programs

Here is a selection of some (other) programs I have written, most of which run under GNU/Linux from the command line (CLI), are freely available and can be obtained by clicking on the links. Dependencies are shown and while in most cases written and tested on an x86-based Linux server, they should run on a Raspberry Pi, and many can run under Windows using Windows Subsystem for Linux (WSL) or Cygwin. Email me if you have problems or questions, or if you think I could help with a programming requirement.

Backup Utilities

Debian/Ubuntu kernel and LVM Utilities

Miscellaneous Programs

Comments

This section is closed. If you have a question, please submit it by email, thank you.

No comments yet for '/programs/help/wifi-updown.sh.php'