SSH tidak bekerja dengan instalasi baru

48

Baru-baru ini saya membebaskan model lama B dari loteng, menaruh NOOBS pada kartu SD, dan memasang versi terbaru Raspbian di atasnya. Saya mem-boot-nya, mencoba SSH ke sana dari Mac saya, tetapi mendapat:

ssh: connect to host 192.168.1.248 port 22: Connection refused

Saya mengatasi ini pada contoh pertama dengan menjalankan sudo ssh restart, tetapi sekarang setiap kali saya boot lagi, saya harus me-restart layanan ssh sebelum saya dapat ssh in lagi, yang jelas tidak praktis. Adakah yang bisa saya lakukan untuk memperbaikinya secara permanen?

Pezholio
sumber
3
Kemungkinan duplikat Bersiap untuk ssh tanpa layar
raphael

Jawaban:

84

Mengutip dokumentasi :

Pada rilis November 2016, Raspbian memiliki server SSH dinonaktifkan secara default. Anda harus mengaktifkannya secara manual.

Untuk mengaktifkan SSH pada mesin melalui konsol:

Masukkan sudo raspi-configdi terminal, pertama pilih Interfacing Options, lalu navigasikan ke ssh, tekan Enterdan pilih Enable or disable ssh server.

Untuk mengaktifkan SSH untuk mesin tanpa kepala:

Untuk pengaturan tanpa kepala, SSH dapat diaktifkan dengan menempatkan file bernama ssh, tanpa ekstensi apa pun, ke partisi boot kartu SD.

techraf
sumber
6
Saya mencoba pengaturan tanpa kepala pada Raspbian Stretch Desktop dari 2018-03-14 dan sepertinya tidak berfungsi lagi, bekerja dengan versi sebelumnya.
JBaczuk
Masalah yang sama di sini dengan membuat tanpa kepala sshfile pada boot tampaknya tidak berfungsi bahkan ketika pesan ditampilkan saat boot
Sander Visser
@JBaczuk Saya mengalami hal yang sama. Sudahkah Anda memperbaikinya?
Aaron
@JBaczuk Sekarang berada di bawah "opsi interfacing" (sumber: raspberrypi.org/forums/viewtopic.php?t=177883 )
Aaron
@ Harun, ok, tapi bagaimana Anda melakukan ini dengan pengaturan tanpa kepala?
JBaczuk
11

Baru-baru ini ada pembaruan keamanan untuk Raspberry Pi. Ini adalah artikel dari https://www.raspberrypi.org/blog/a-security-update-for-raspbian-pixel/

Dari artikel yayasan:

Apa yang berubah?

Pertama, mulai sekarang SSH akan dinonaktifkan secara default pada gambar kami. SSH (Secure SHell) adalah protokol jaringan yang memungkinkan Anda untuk login jarak jauh ke komputer Linux dan mengendalikannya dari baris perintah jarak jauh. Seperti disebutkan di atas, banyak pemilik Pi menggunakannya untuk menginstal pi tanpa kepala (tanpa layar atau keyboard) dan mengendalikannya dari PC lain.

Di masa lalu, SSH diaktifkan secara default, jadi orang yang menggunakan Pi headless mereka dapat dengan mudah memperbarui kartu SD mereka ke gambar baru. Mengaktifkan atau menonaktifkan SSH selalu mengharuskan penggunaan raspi-config atau aplikasi Raspberry Pi, tetapi untuk mengaksesnya, Anda memerlukan layar dan keyboard yang terhubung ke Pi itu sendiri, yang tidak berlaku pada aplikasi tanpa kepala. Jadi kami telah menyediakan mekanisme sederhana untuk mengaktifkan SSH sebelum gambar di-boot.

Partisi boot pada Pi harus dapat diakses dari mesin apa pun dengan pembaca kartu SD, di Windows, Mac, atau Linux. Jika Anda ingin mengaktifkan SSH, yang perlu Anda lakukan adalah meletakkan file bernama ssh di direktori / boot /. Isi file tidak masalah: dapat berisi teks apa pun yang Anda suka, atau bahkan tidak sama sekali. Ketika Pi mem-boot, ia mencari file ini; jika menemukannya, ini mengaktifkan SSH dan kemudian menghapus file. SSH masih dapat dihidupkan atau dimatikan dari aplikasi Konfigurasi Raspberry Pi atau raspi-config; ini hanyalah cara tambahan untuk menyalakannya jika Anda tidak dapat dengan mudah menjalankan salah satu dari aplikasi tersebut.

Risiko dengan port SSH terbuka adalah seseorang dapat mengaksesnya dan masuk; untuk melakukan ini, mereka memerlukan akun pengguna dan kata sandi. Di luar kotak, semua pemasangan Raspbian memiliki akun pengguna default 'pi' dengan kata sandi 'raspberry'. Jika Anda mengaktifkan SSH, Anda harus benar-benar mengubah kata sandi untuk pengguna 'pi' untuk mencegah peretas menggunakan default. Untuk mendorong ini, kami telah menambahkan peringatan ke proses boot. Jika SSH diaktifkan, dan kata sandi untuk pengguna 'pi' masih 'raspberry', Anda akan melihat pesan peringatan setiap kali Anda boot Pi, apakah ke desktop atau baris perintah. Kami tidak menerapkan perubahan kata sandi, tetapi Anda akan diperingatkan setiap kali Anda boot jika Pi Anda berpotensi berisiko.

Harapan kami adalah bahwa perubahan (yang relatif kecil) ini tidak akan menyebabkan terlalu banyak ketidaknyamanan, tetapi mereka akan membuat jauh lebih sulit bagi peretas untuk menyerang Pi.

Ini pada dasarnya berarti bahwa baru-baru ini ada banyak peretasan perangkat yang menggunakan koneksi jarak jauh seperti SSH. Karena ini, SSH secara default menjadi dinonaktifkan. Untuk memperbaikinya, yang harus Anda lakukan adalah membuat file bernama ssh di /boot/direktori. File ini disebut ssh dapat berisi teks apa pun atau apa pun jika Anda mau. Kemudian, dengan menggunakan sudo raspi-config commandterminal Anda dapat mengaktifkan ssh lagi.

Juga, disarankan Anda mengubah kata sandi Anda jika itu sesuatu yang sederhana seperti kata sandi menjadi sesuatu yang lebih sulit untuk diretas menggunakan passwdperintah.

Balon Raja
sumber
2
"baru-baru ini ada banyak peretasan perangkat" -> Mungkin banyak orang mendengar tentang ini . Meskipun Pis kemungkinan tidak terlibat, mereka mungkin sudah sejak itu menjalankan SSH secara default dengan akses terbuka ke akun yang sangat istimewa melalui kata sandi "pengaturan awal pabrik" adalah jenis yang dieksploitasi.
goldilocks
1
Serangan-serangan itu hampir tidak "baru". Saya telah melihat upaya pembobolan dalam log saya selama sekitar tiga tahun sekarang.
Markus
Mungkin tidak banyak tetapi ada beberapa peretasan Raspberry Pis!
King Balloonion
2

systemctl larutan

Jika Anda sudah memiliki shell pada Pi melalui metode non-SSH seperti layar + keyboard atau UART (lihat posting ini ), Anda juga dapat menjalankan:

sudo systemctl enable ssh
sudo service sshd start

alih-alih melakukannya secara interaktif sudo raspi-config.

/boot/ssh file ajaib

Jika Anda belum memiliki shell pada Pi, masukkan kartu SD dia di host Anda, dan buat file kosong ajaib bernama sshfile di boot/partisi (yang pertama).

Pada host Ubuntu, ia dipasang secara otomatis dan Anda dapat melakukannya:

sudo touch /media/$USER/boot/ssh

yang dapat Anda konfirmasi dengan:

lsblk

yang mengandung:

mmcblk0     179:0    0  14.4G  0 disk
├─mmcblk0p1 179:1    0  43.9M  0 part /media/ciro/boot
└─mmcblk0p2 179:2    0  14.4G  0 part /media/ciro/rootfs

Diuji pada Raspbian Lite 2018-11-13, pengaturan pengujian lengkap dijelaskan lebih lanjut di: SSH ke RPi tanpa koneksi jaringan?

Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
sumber
0

Ya, seperti yang dikatakan @tecraf sshdinonaktifkan secara default, tetapi lokasi konfigurasi telah berubah. Untuk mengaktifkan SSH pada mesin Anda melalui konsol:

Masukkan sudo raspi-configdi terminal pergi ke 5-Interfacing Options, lalu arahkan ke P2-ssh, tekan Enter dan gunakan tabuntuk mengaktifkan atau menonaktifkan ssh server. Kemudian sudo shutdown -r nowuntuk reboot. (side note shutdown -hsekarang tidak akan reboot)

Iliass
sumber