SSH'yi yerel ağımla sınırlı olacak şekilde nasıl ayarlayabilirim?


33

11.10 çalışan yeni dizüstü bilgisayarımı SSH kullanarak yönlendiricim üzerinden 8.04 çalışan eski dizüstü bilgisayarıma bağlamaya çalışıyorum.

Bu soru burada ubuntuforums'ta sorulur ve cevaplanır:

http://ubuntuforums.org/showthread.php?t=1648965

Burada daha kesin bir cevap almanın faydalı olacağını düşündüm.

Not: İlk önce openssh-server'ı dizüstü bilgisayara kurmam gerekiyordu. Firestarter kullanarak güvenlik duvarımdaki SSH portuna bağlanmaya ve açmaya çalışıyordum.


slooow'un bu konudaki cevabı hakkında "kesin" olanın ne olmadığını bize söyleyebilir misiniz? Aksi halde sorunuz belirsiz görünüyor.
d_inevitable

@d_inevitable Birincisi, tek cevap değil ve doğru cevap olarak ifade edilmez. Seçtiğim kişi buydu, ancak bu yüzden bu soruyu geçirmenin faydalı olacağını düşündüm. İki yerel makine arasında SSH'yi yapılandırırken genel yönergeleri veya yardımcı bir bağlantıyı da eklemenize yardımcı olabilir.
klenwell

Yanıtlar:


46

Ssh sunucunuza erişimi birçok şekilde kısıtlayabilirsiniz.

IMO en önemlisi ssh anahtarlarını kullanmak ve parola doğrulamasını devre dışı bırakmaktır.

Detaylar için aşağıdaki wiki sayfalarına bakınız.

https://help.ubuntu.com/community/SSH/OpenSSH/Keys

https://help.ubuntu.com/community/SSH/OpenSSH/Configuring#Disable_Password_Authentication

Belirli bir alt ağa erişimi çeşitli şekillerde kısıtlayabilirsiniz. Ssh sunucunuzun 192.168.0.10 ip adresi ile 192.168.0.0/16 alt ağında olduğunu varsayalım, buna göre ayarlayın;)

Yönlendirici

Bir savunma hattı yönlendirici kullanmaktır. UPnP'yi devre dışı bıraktığınızdan ve bağlantı noktası iletmesine izin vermediğinizden emin olun.

SSH yapılandırması

İçinde birkaç seçenek ayarlayabilirsiniz /etc/ssh/sshd_config. Birincisi, dinleme adresi. Alt ağınızda bir dinleme adresi belirlerseniz. Özel bir ip adresi internet üzerinden yönlendirilemez.

http://compnetworking.about.com/od/workingwithipaddresses/f/privateipaddr.htm

ListenAddress 192.168.0.10

AllowUsers'ı da kullanabilirsiniz.

AllowUsers you@192.168.0.0/16

Bir miktar ilgili, ayrıca bağlantı noktasını da değiştirebilirsiniz.

Port 1234

Http://manpages.ubuntu.com/manpages/precise/man5/sshd_config.5.html adresini ziyaret edin.

TCP sarıcı

Forumlar yayınında belirtildiği gibi, TCP Sarıcıyı kullanabilirsiniz. TCP sarıcı 2 dosya kullanır /etc/hosts.allowve/etc/hosts.deny

Düzen /etc/hosts.allowve alt ağ ekleyin

sshd : 192.168.0.

Düzenle /etc/hosts.denyve tümünü reddet

ALL : ALL

Ayrıca bakınız http://ubuntu-tutorials.com/2007/09/02/network-security-with-tcpwrappers-hostsallow-and-hostsdeny/

Firewall

En son sunucunuzu güvenlik duvarı yapabilirsiniz. İptables, ufw veya gufw kullanabilirsiniz.

iptables

sudo iptables -I INPUT -p tcp --dport 22 -s 192.168.0.0/16 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j REJECT

Lütfen DROP'u iptables'da kullanmayın, bkz. Http://www.chiark.greenend.org.uk/~peterb/network/drop-vs-reject

UFW

sudo ufw allow from 192.168.0.0/16 to any port 22

gufw grafiksel bir arayüze sahip

GUFW

Https://help.ubuntu.com/community/UFW adresine bakın.

https://help.ubuntu.com/community/IptablesHowTo


Bazı ağlar 10.0.0.0 IP adresi olarak kullanır, bu durumda 10.0.0.0-10.255.255.255 aralığına izin vermek için 10.0.0.0/8 yerine 192.168.0.0/24 kullanılır. Yalnızca tek bir IP’ye izin vermek istiyorsanız, 192.168.1.2/32 gibi bir şey kullanın. Çok ayrıntılı bir açıklama [ serverfault.com/q/49765/51929rupa( adresinde bulunabilir. Alt Ağ
Nasıl

1
Lütfen iptable
Panther

Bu sayfa, Sahte IP'leri, REJECT üzerinden DROP kullanmak için olası bir neden olarak belirtmiyor. Sec.SE'deki bu cevap, neden gerçekten alakalı olmadığını açıklar (kaynak paketler, iade edilen paketlerden daha büyüktür).
Lekensteyn

@Lekensteyn - Bu bağlantıda sahte IP ile ilgili bir tartışma görmedim. Sizin de belirttiğiniz gibi, DDoS ve sahte IP bu tartışmanın ötesinde ve DROP'un her şey için REJECT'ten daha üstün olduğuna ikna olmadım. DDolar karmaşıktır ve DDo'nun nedeni hakkında bilgi sahibi olmadan savunmak imkansızdır. Örneğin, bir DDoS olarak kullanılan WP'yi gördüm ve problemin çözümü WP'nin düzgün bir şekilde yapılandırıldığını ve iptables ile ilgisi yok veya çok az olduğunu gördüm.
Panter

ListenAddressen basit ve en zarif çözüm gibi görünüyor
code_monk

1

ssh (güvenli kabuk) verilere güvenli bir şekilde erişmek ve aktarmak için kullanılır (RSA_KEYS çifti kullanılır). Ssh kullanarak verilere iki yolla erişebilirsiniz 1. Komut satırı 2. dosya tarayıcısını kullanarak

Komut Satırı: Bunun için hiçbir şey yüklemenize gerek yok. İlk görev başka bir bilgisayarda oturum açmak.

ssh other_computer_username@other_computer_ip

Bu komut, diğer bilgisayarın şifresi olan bir şifre isteyecektir (belirli bir kullanıcı adı için). Az önce başka bir bilgisayarın kabuğuna giriş yaptınız. Bu terminalin bilgisayarınızın kabuk terminali gibi olduğunu düşünün. Her şeyi, bilgisayarınızda yapabildiğiniz diğer bilgisayarlara kabuk kullanarak yapabilirsiniz.

Dosya tarayıcısı: openssh-server kurmanız gerekiyor

sudo apt-get install openssh-server

Giriş yapmak için, dosyaya gidin-> connectToServer

görüntü tanımını buraya girin


Komut satırı yönleri ilk denediğim şeydi. Diğer bilgisayarımı LAN IP'sinde pingleyebildim. Ama SSH'ye denediğimde kilitleniyor. Bu yüzden önce diğer bilgisayarımı SSH erişimine izin verecek şekilde yapılandırmam gerektiğini varsayıyorum.
klenwell

yönlendiricinizin 22 port veya ssh'yi engellemediğinden emin olun
shantanu

Teşekkürler. Deneyimden bahsettiğiniz her şeyi zaten biliyordum, ancak basit ve başka birinden yapılandırılmış olarak duymak çok kolaydı.
lakesare
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.