Log in to the Banana Pi
Summary
Logging in to a Banana Pi or Banana Pro for the first time requires knowing the default credentials for your image, confirming network access, and (optionally) setting up SSH key-based authentication. This page covers common login methods (SSH, local console, serial), default username/password combinations, and how to troubleshoot access issues.
Default credentials are image-specific, not board-specific. Always check the image documentation or try common defaults (root/bananapi, pi/bananapi, lemaker/lemaker) if credentials are not documented.
Who this is for
New Banana Pi/Pro owners logging in for the first time, people migrating from older images who need to reset credentials, and anyone troubleshooting SSH or serial console access.
What you'll do
- Identify which login method to use (SSH, local console, serial).
- Try common default credentials for your image.
- Verify network connectivity and SSH service status.
- Set up SSH key-based authentication and disable password logins.
- Troubleshoot common access issues (no IP, SSH refused, wrong password).
Requirements
- Banana Pi or Banana Pro booted with a known OS image
- Network connection (Ethernet recommended for first boot)
- Router DHCP client list or ability to scan the LAN to find the board's IP address
- Optional: HDMI display and USB keyboard for local console access
- Optional: 3.3V USB-to-TTL serial adapter for serial console access
Common default credentials
Try these username/password combinations (image-specific; not all will work):
- root / bananapi — Common on older Banana Pi images
- pi / bananapi — Raspbian-style images
- lemaker / lemaker — Some official LeMaker images
- bananapi / bananapi — Alternative on some community images
- root / root — Minimal/development images (change immediately if this works)
- debian / debian — Debian-based images
If none of these work, check the image download page or README for credentials. Some images require you to set a password on first boot via serial console.
Step-by-step
1. Find the board's IP address
Check your router's DHCP client list for a device named "bananapi", "lemaker", or showing the board's MAC address. Alternatively, scan your LAN from a Linux host:
ip neigh show # Show ARP cache
nmap -sn 192.168.1.0/24 # Scan subnet (adjust to your network)
If using a local console (HDMI + keyboard) or serial console, you can log in directly and run ip a to see the IP address.
2. SSH login (remote access)
Once you have the IP address, attempt SSH login with common default credentials:
ssh root@192.168.1.50 # Try root/bananapi
ssh pi@192.168.1.50 # Try pi/bananapi
ssh lemaker@192.168.1.50 # Try lemaker/lemaker
If prompted about host key authenticity, type yes to accept (first-time connection only).
If SSH connection is refused: The image may not have SSH enabled by default. Use local or serial console to enable it (see troubleshooting).
3. Local console login (HDMI + keyboard)
Connect an HDMI display and USB keyboard. After boot, you should see a login prompt. Try the common default credentials listed above. Most images show a login banner with the correct username.
4. Serial console login
Connect a 3.3V USB-to-TTL serial adapter to the board's debug header:
- TX (adapter) → RX (board)
- RX (adapter) → TX (board)
- GND (adapter) → GND (board)
- Do NOT connect VCC/power pin
On your workstation, use a serial terminal (screen, minicom, PuTTY):
# Linux/macOS
sudo screen /dev/ttyUSB0 115200
# Or with minicom
sudo minicom -D /dev/ttyUSB0 -b 115200
Press Enter a few times to get a login prompt. Use the same default credentials.
5. Set up SSH key-based authentication
Once you can log in with a password, set up SSH keys for secure, passwordless access:
# On your workstation (if you don't already have an SSH key):
ssh-keygen -t ed25519 -C "bananapi-access"
# Copy the key to the board:
ssh-copy-id root@192.168.1.50 # Replace with your username and IP
# Test key-based login:
ssh root@192.168.1.50 # Should connect without password prompt
After verifying key-based login works, disable password authentication (see verification checks below).
Verification checks
After logging in successfully, run these commands to verify system state:
uname -a # Kernel version
ip a # Network interfaces and IP addresses
ip r # Routing table
ss -tulpn | head -n 30 # Listening services (including SSH)
systemctl status ssh # SSH service status (or sshd)
whoami # Confirm current user
Post-login tasks
Change default password
If you logged in with a default password, change it immediately:
passwd # Change password for current user
sudo passwd root # Change root password (if logged in as non-root user)
Disable SSH password authentication
After setting up SSH keys, disable password logins to improve security:
# Edit SSH daemon config:
sudo sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
# Reload SSH service:
sudo systemctl reload ssh || sudo systemctl reload sshd
Warning: Keep your current SSH session open and test key-based login from a second terminal before closing the first session. If key login fails, you can still use the open session to revert changes.
Update packages
Run a system update under supervision (keep console access open):
sudo apt update
sudo apt -y full-upgrade
sudo reboot
Concrete example (basic access checks)
ip a
ip r
ss -tulpn | head -n 30
Troubleshooting
Board boots but no IP address assigned
- Symptoms: Router DHCP list shows no new device;
ip ashows no address on eth0. - Steps:
- Check link LEDs on Ethernet port. Try a different cable and router/switch port.
- Log in via serial or local console (HDMI + keyboard).
- Run
ip a. If eth0 shows "state DOWN", bring it up:sudo ip link set eth0 up. - Check for DHCP client:
ip rshould show a default route. If missing, runsudo dhclient eth0. - Verify DNS:
cat /etc/resolv.confshould list nameservers.
SSH connection refused
- Symptoms:
sshcommand fails with "Connection refused" or "No route to host". - Steps:
- Verify the IP address is correct:
ping 192.168.1.50. - Check if SSH is running on the board (requires local/serial console access):
systemctl status sshorss -tulpn | grep :22. - If SSH is not running, start it:
sudo systemctl start sshand enable on boot:sudo systemctl enable ssh. - If SSH is disabled by image default, check for a README or first-boot script that enables it.
- Verify firewall rules (if any):
sudo iptables -L -norsudo ufw status.
- Verify the IP address is correct:
Wrong password or credentials do not work
- Symptoms: "Permission denied" or "Login incorrect" messages.
- Steps:
- Verify you are using the correct username (try root, pi, lemaker, bananapi).
- Check the image download page or README for documented credentials.
- Try all common defaults listed in the "Common default credentials" section above.
- If using serial or local console, check for a login banner that shows the correct username.
- If all else fails, re-flash the image. Some images require password setup on first boot via serial console.
Locked out after disabling SSH password authentication
- Symptoms: SSH key login fails; "Permission denied (publickey)".
- Steps:
- Use serial console or local console (HDMI + keyboard) to regain access.
- Verify SSH key is in
~/.ssh/authorized_keys:cat ~/.ssh/authorized_keys. - Check sshd_config:
sudo grep PasswordAuthentication /etc/ssh/sshd_config. If set to "no", change to "yes" temporarily. - Reload SSH:
sudo systemctl reload ssh. - Test key-based login from your workstation again. If it works, re-disable password auth.
FAQ
What are the most common default credentials for Banana Pi images?
Try root/bananapi, pi/bananapi, or lemaker/lemaker. If none work, check the image download page or README file. Some images display the correct username in the login banner.
Do I need a serial console?
Not for typical usage. Serial consoles are useful for debugging boot issues, enabling SSH when it's disabled by default, or recovering from misconfigurations that lock you out of SSH. For normal operation, SSH over Ethernet is sufficient.
How do I enable SSH if it's disabled by default?
Use a serial or local console to log in, then run: sudo systemctl start ssh && sudo systemctl enable ssh. Verify it's listening: ss -tulpn | grep :22.
Can I use the same SSH key for multiple boards?
Yes. Use ssh-copy-id to deploy the same public key to multiple boards. Your private key stays on your workstation and authenticates to all boards that have the public key in their authorized_keys file.
Should I disable root login over SSH?
Yes, for production setups. Create a non-root user with sudo privileges, set up SSH keys for that user, then disable root SSH login by setting PermitRootLogin no in /etc/ssh/sshd_config. For development boards on a trusted network, root SSH with keys is acceptable.
How do I reset the password if I forgot it?
If you have serial or local console access, you can boot into single-user mode (interrupt U-Boot, add init=/bin/bash to kernel command line) and change the password with passwd. If this fails, re-flash the image.
What if the board's IP address keeps changing?
Configure a static IP or set up a DHCP reservation in your router based on the board's MAC address. To set a static IP on the board, edit /etc/network/interfaces or use NetworkManager (nmtui or nmcli).
Can I use WiFi for first login instead of Ethernet?
Yes, on Banana Pro (which has WiFi). However, Ethernet is recommended for first boot to reduce variables. Configure WiFi after verifying basic access works. See network setup documentation for WiFi configuration steps.
Where can I find more login and access documentation?
Check the Wiki Main Page for board-specific hubs. For quick-start guides and network setup, visit the main site at www.lemaker.org.
Related guides
Author: LeMaker Documentation Team
Last updated: 2026-01-11