summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
authorMax Illfelder <illfelder@users.noreply.github.com>2019-05-22 13:26:15 -0700
committerGitHub <noreply@github.com>2019-05-22 13:26:15 -0700
commit3ebac08bdcd7368258417ed0601b6f5c12a26ebd (patch)
treee7e9f8f7fee63abae88ee5a97c9a8bd8fe486899 /packages
parent02edad3872b4511fcfd0ba26d644d75999baf091 (diff)
downloadgoogle-compute-image-packages-3ebac08bdcd7368258417ed0601b6f5c12a26ebd.tar.gz
Update OS Login control file for FreeBSD support. (#778)
Diffstat (limited to 'packages')
-rw-r--r--packages/google-compute-engine-oslogin/bin/google_oslogin_control17
1 files changed, 10 insertions, 7 deletions
diff --git a/packages/google-compute-engine-oslogin/bin/google_oslogin_control b/packages/google-compute-engine-oslogin/bin/google_oslogin_control
index e81bb5a..024d468 100644
--- a/packages/google-compute-engine-oslogin/bin/google_oslogin_control
+++ b/packages/google-compute-engine-oslogin/bin/google_oslogin_control
@@ -13,6 +13,11 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+is_freebsd() {
+ [ "$(uname)" = "FreeBSD" ]
+ return $?
+}
+
nss_config="/etc/nsswitch.conf"
pam_sshd_config="/etc/pam.d/sshd"
pam_su_config="/etc/pam.d/su"
@@ -20,15 +25,13 @@ sshd_config="/etc/ssh/sshd_config"
group_config="/etc/security/group.conf"
sudoers_dir="/var/google-sudoers.d"
users_dir="/var/google-users.d"
-sudoers_file="/etc/sudoers.d/google-oslogin"
added_comment="# Added by Google Compute Engine OS Login."
sshd_block="#### Google OS Login control. Do not edit this section. ####"
sshd_end_block="#### End Google OS Login control section. ####"
-
-is_freebsd() {
- [ "$(uname)" = "FreeBSD" ]
- return $?
-}
+sudoers_file="/etc/sudoers.d/google-oslogin"
+if is_freebsd; then
+ sudoers_file="/usr/local/etc/sudoers.d/google-oslogin"
+fi
# Update nsswitch.conf to include OS Login NSS module for passwd.
modify_nsswitch_conf() {
@@ -97,7 +100,7 @@ modify_sshd_conf() (
if ! grep -q "$sshd_block" "$sshd_config"; then
# Remove old-style additions.
$sed -i"" "/${added_comment}/,+1d" "$sshd_config"
- /bin/echo -e "\n\n${sshd_block}\n${sshd_end_block}" >> "$sshd_config"
+ printf "\n\n${sshd_block}\n${sshd_end_block}" >> "$sshd_config"
fi
for entry in "$sshd_auth_keys_command" "$sshd_auth_keys_command_user"; do