Microsoft Authenticator App for Android: How to Disable Passwordless Sign-in or Change the Default Phone Where Sign-in Notifications Are Sent

As of October 2023 the current version of the Microsoft Authenticator app for Android does not offer a simple way to disable Passwordless sign-in once you enable it on a phone. The only way to disable this is to completely uninstall the app from your Android phone and then reinstall the app again. After the app is re-installed the passwordless sign-in option will be disabled and you’ll once again see the option to enable it if you want to.

If you have the Microsoft Authenticator app for Android installed on multiple phones you may have the problem that whenever you sign into a Microsoft app or service the sign-in notification is always sent to the Microsoft Authenticator app on your old phone or the first phone you enabled passwordless sign-ins with. As of October 2023 the only way it appears you can have these notifications sent to your newer phone is to totally uninstall the Microsoft Authenticator app from all phones but leave the app installed on just the phone you want to receive these sign-in notifications to. Once you do this confirm when you try to sign into a Microsoft service you get the sign-in notification to the phone you want it to go to. Once you confirm this you can re-install the Microsoft Authenticator app onto your other phones but don’t enable the passwordless sign-in option on these phones. Even if you do, the notifications should still only be sent to your new phone. It appears the passwordless sign-in notifications can only work with one phone and it only works with the first/only phone you set it up on.

How to Mirror A Directory Locally Using Rsync

Most of the instructions for mirroring a directory with Rsync involve mirroring the data to a different server. You can also use Rsync to sync or mirror a directory on the same computer as the source directory.

Here is an example command on how to mirror two directories locally. In this example, /home/apache/public_html is the source directory and /home/apache/public_html_bak is the destination directory. Forward slashes at the end of the directory names in the rsync command are important so don’t forget them. The sync is one-way in that the destination will mirror the source:

rsync -avr --delete --links /home/apache/public_html/ /home/apache/public_html_bak/

If you need to preserve ACLs and Extended attributes then you need to add the -A and -X switches:

rsync -avrAX --delete --links /home/apache/public_html/ /home/apache/public_html_bak/

If you want to just do a dry run to see what will happen when you run Rsync, then add the -n switch:

rsync -avrAXn --delete --links /home/apache/public_html/ /home/apache/public_html_bak/

Terminal


How to Install an ipsCA SSL Certificate in OS X

ipsCA is a company that sells SSL certificates. Their SSL certificates are recognized by all the major browsers so you don’t need to worry about manually installing additional Certificate Authority (CA) certificates into your users’ web browsers like you have to do with CA companies whose certificates are not included by default in the major web browsers. What is great about ipsCA is that they offer free 2 year SSL certificates for educational institutions such as Universities. If your domain ends in .edu then you qualify for a free 2 year SSL certificate.

ipsCA certificates are a little unusual in that you need to install two certificates onto your server before it will work. I couldn’t find a documented set of procedures for installing ipsCA certificates on a MacOS X 10.4 server so I wrote some up:

Installing an ipsCA SSL Certificate in OS X 10.4

Generate the CSR

  1. In Server Admin, select the server you would like to secure.
  2. Click “Settings” > “Certificates” tab > “Add(+)” button.
  3. A dialog box will appear to enter your certificate information. Please refer to vs7313 for detailed CSR requirements.
  4. Enter starting and ending validity dates.
  5. Select private key bit length size (1024 is recommended and required for three year certificates)
  6. Enter a passphrase (“password”) for your private key.
    • Apple recommends “use at least 20 characters, include mixed case, numbers and/or punctuation, have no characters repeat, and having no dictionary terms.”
  7. Click “Save”. Now, “Request Signed Certificate From CA” can be selected.
  8. A dialog box will appear. Drag the certificate icon onto your desktop. This will create your CSR file.
  9. copy and paste the text of the CSR file into the certificate request form on the ipsCA website.
  10. Submit the request and wait for ipsCA’s email response.

Import the Signed Certificate

  1. In Server Admin, select the server the certificate needs to go on.
  2. Click “Settings” > “Certificates” tab
  3. Highlight the certificate the signed certificate corresponds to.
  4. Click the “edit” icon.
  5. Click the “Add Signed Certificate…” button.
  6. Paste the contents of the signed certificate text file you received from ipsCA into the text box that appears. Press OK to import the signed certificate.
  7. Quit and restart the Server Admin app to make sure it refreshes the status of the signed certificate.
  8. When you try to edit the certificate all the fields should be greyed out to indicate the certificate is signed and the import was successful.
  9. You may need to redesignate the newly signed certificate in the web server and/or restart it before Apache will start using the newly signed certificate.

Install the ipsCA Intermediate Certificates

1. Copy the ipsCA intermediate certificates bundle file into the /etc/certificates/ directory on the web server. At the time of this writing this file was named “IPS-IPSCABUNDLE.crt. The file is available on the ipsCA website.

2. Change the permissions on the certificate bundle to “640”.

  • cd /etc/certificates
  • sudo chmod 640 IPS-IPSCABUNDLE.crt

3. Navigate to the folder /etc/httpd/sites/ and locate the .conf file that corresponds to the the SSL virtual host that the certificate belongs to. Usually the filename of the .conf file will be named in the format “someNumber_IPAddress_443_fullyQualifiedHostName.conf”

4. Once you locate the file, open it in a text editor at locate the part of the virtual host section that covers the SSL certificate settings. The section you are looking for will look something like this:

SSLEngine On
SSLLog "/var/log/httpd/ssl_engine_log"
SSLCertificateFile "/etc/certificates/www.foo.com.crt"
SSLCertificateKeyFile "/etc/certificates/www.foo.com.$
SSLCipherSuite "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:!SSLv2:+EXP$

5. Add the following setting in between the “SSLCertificateKeyFile” and “SSLCipherSuite” setting:

SSLCertificateChainFile /etc/certificates/IPS-IPSCABUNDLE.crt
  • When you are done the certificate section should looking something like this:
SSLEngine On
SSLLog "/var/log/httpd/ssl_engine_log"
SSLCertificateFile "/etc/certificates/www.foo.com.crt"
SSLCertificateKeyFile "/etc/certificates/www.foo.com.$
SSLCertificateChainFile /etc/certificates/IPS-IPSCABUNDLE.crt
SSLCipherSuite "ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:!SSLv2:+EXP$

6. Save your changes and restart the web service. You should now be able to navigate to your SSL website and receive no “invalid” certificate errors. You can test your web server by using the ipsCA test website at: http://certs.ipsca.com/checkserver/

SSL Certificate

Free Computer Programming Training From Google Code University

Google Code University offers free training for computer programming. The training consists of a website which contains training materials such as slide shows, videos, and problem solving sets. Here is an excerpt from the Google training website which describes the training offered:

This website provides tutorials and sample course content so CS students and educators can learn more about current computing technologies and paradigms. In particular, this content is Creative Commons licensed which makes it easy for CS educators to use in their own classes.

The Courses section contains tutorials, lecture slides, and problem sets for a variety of topic areas:

  • AJAX Programming
  • Distributed Systems
  • Web Security
  • Languages

In the Tools 101 section, you will find a set of introductions to some common tools used in Computer Science such as version control systems and databases.

The CS Curriculum Search will help you find teaching materials that have been published to the web by faculty from CS departments around the world. You can refine your search to display just lectures, assignments or reference materials for a set of courses.

Here is a link to the Google Code University website: Link

Google Logo