Genişletilmiş Ana Bilgisayar Adında SSH yapılandırma joker karakteri


25

Varsayılan kullanıcı adımı belirli bir etki alanındaki tüm ana makineler için belirli bir değere ayarlamak için SSH yapılandırmamda joker karakter kullanmak istiyorum. Ama aynı zamanda bazı ana bilgisayarlar için bazı kısa isimler istiyorum. Böyle bir şeyin çalışmasını bekliyordum:

Host *.mydomain.com
    User myusername
Host host1
    Hostname host1.mydomain.com

Bu ayarlarla, yazarsam ssh host1.mydomain.comdeğerlendirir myusername@host1.mydomain.com, ancak ssh host1yazarsam Kullanıcı ayarımı uygulamaz ve onun yerine görürüm mylocalusername@host1.mydomain.com.

Kısa veya uzun formu yazıp aynı sonuçları alabilmem için joker karakterlerin son genişletilmiş ana makine adında eşleşmesinin bir yolu var mı?


Sırayı değiştirirseniz, joker karakter bölümünü ikinci sıraya koyarsınız.
14'te

Bunu denediniz mi? Eminim sadece yanlış alan adı ile doğru kullanıcı adını alırsanız, bir şey varsa.
Mu Mind

Ben denemedim, bu yüzden bir cevap cevap denemek için bir şey olarak yorum cevap yaptım.
Mar14'te

Yanıtlar:


13

Basitçe kullanın:

Host *.mydomain.com host1
User myusername

Host host1
Hostname host1.mydomain.com
  • Alternatif desenler, bir Host satırındaki sınırlayıcı bir boşlukla sağlanır .
  • Eşleşen tüm Ana Bilgisayar Kalıpları uygulanır.
  • Bir seçenek birden çok kez gerçekleşirse, yalnızca 1. tekrar kullanılır

3
Bu, en azından biraz yazmayı kurtarır. Etki alanı bilgilerinin çoğaltılmasından kaçınmanın hiçbir yolu olmadığınızı mı düşünüyorsunuz?
Mu Mind

SSH, yapılandırma dosyasında sabit kodlamak yerine varsayılan alan adını (ör. "Lan" veya "şirketim.com") eklemeyi denemek harika olurdu.
Saustrup

18

Sadece ayarlayabilirsiniz CanonicalizeHostnameiçin yesdiğer adınıza kurallı hostname'iyle ssh_config yeniden ayrıştırma için. Örneğin:

CanonicalizeHostname yes
Host *.mydomain.com
    User myusername

Host host1
    HostName host1.mydomain.com

Alternatif olarak, ana makine adlarını da yeniden eşlemek istiyorsanız, yalnızca standart ana makine adlarıyla eşleştirmek Matchyerine kullanabilirsiniz Host. Örneğin, içinde:

Match canonical host="*.mydomain.com"
    User myusername

Host host2.mydomain.com
    HostName host2.otherdomain.com

Bağlandığınızda kullanıcı yönergesi ayarlanmaz host2.mydomain.com.


Ssh'ın hala bu seçenekleri desteklemeyen eski sürümleri olduğunu unutmayın - bunlardan birine rastlarsanız, benim yaptığım gibi, Host çözümü hala çalışır.
Kyrstellaine

2

CanonicalDomains'ten faydalanmak da işe yarayacaktır.

CanonicalizeHostname yes
CanonicalDomains mydomain.com

Host *
User myusername

Belirli bir ana bilgisayar için kısa bir adınız varsa, örneğin:

Host h
Hostname host1

Ancak kısa bir isim tavsiye etmem.


1

.Ssh / config dosyasında% h.alan_adim.com.tr adresini kullanabilirsiniz.


 Host host?
 User myusername
 Hostname %h.mydomain.com

Host host?? User myusername Hostname %h.mydomain.com

Host host??? User myusername Hostname %h.mydomain.com

Şimdi şunları yapabilirsiniz:

ssh ana bilgisayar1
onun yerine
ssh host1.alan_adim.com.tr
ssh ana bilgisayar10
onun yerine
ssh host10.alan_adim.com.tr
ve ssh host100

Saygılarımızla, Bert

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.