Ubuntu Sunucusunu PPPoE Kullanarak Yönlendirici Olarak Kurma



Sorunları Ortadan Kaldırmak Için Enstrümanımızı Deneyin

Ubuntu Sunucusu teknik olarak, büyük büyük demir sunucularla kullanılmak üzere yalnızca bir CLI istemi işletim sistemi olarak tasarlanmıştır, ancak Ethernet üzerinden Noktadan Noktaya Protokolü yöneten yönlendiricilerde ve gömülü sistemlerde de çalışmaması için hiçbir neden yoktur. Bunun gibi bir projenin ya küçük bir fansız PC'ye ya da bir NAND flash çipi aracılığıyla değiştirebileceğiniz bir tür yönlendirici kutusuna ihtiyacı olduğu varsayılır. Gürültüyü ve hareketli parçaları ortadan kaldırmak için büyük olasılıkla makul miktarda RAM ve katı hal diski kuracaksınız. Tüm işletim sistemini bir SD kart üzerinden çalıştırabilmek için bir SDHC-SATA dönüştürücü kullanmak ilginizi çekebilir. Eski donanımda yan yuvalara takılan SD kartlar da işletim sistemini önyükleyebilir. Bu, bir PPPoE sistemi ile kullanıldığında işe yarar.



Uygun bir elektromekanik sabit disk olmadan bu tür bir yapılandırmanın kullanılmasının yavaş olabileceğini düşünseniz de, aslında teorik olarak erişim süresini kısaltmış olursunuz. Ubuntu Sunucusu o kadar küçük ki zaten hızlı bir şekilde açılıyor. Yönlendiricinizi yerine yerleştirdikten sonra, muhtemelen çok sık açıp kapatmayacaksınız. Hangi yapılandırmayı seçerseniz seçin, bir ISO indirmek için tarayıcınızı https://www.ubuntu.com/download/server adresine yönlendirmek isteyeceksiniz. Bu yazının yazıldığı andaki en yeni sürüm olan Ubuntu Server 16.04.1 LTS, yalnızca 64 bit mimarilerle kullanılmak üzere tasarlanmıştır. Çoğu modern yönlendirici ve ince istemci cihazı bu gereksinimi gayet iyi karşılamaktadır, ancak yönlendirici olarak bir netbook kullanmak gibi gerçekten egzotik bir şey deniyorsanız bu bir sorun olabilir.





Ubuntu Sunucusunu PPPoE Yönlendirici olarak Yapılandırma

Bazı büyük ISP ağları hala PPPoE kimlik doğrulaması gerektirir. Hemen hemen tüm DSL ağları bunu kullanır ve bir fiber bağlantıyla çalışırken gereksiz olsa da, bazıları yine de kullanır. Netgear yönlendiricileri, bu tür ağlara kolayca bağlanmanıza olanak tanıyan bir oturum açma istemi sunar, ancak bu tür bir teknolojiyle doğru bir şekilde arabirim oluşturmak için ev yapımı bir Linux yönlendiriciye sahip olmak biraz çalışma gerektirir.

Tarayıcınızda yoksa şu adrese gidin: http://releases.ubuntu.com/16.04.1/ . Elinizde yoksa ISO'yu bu sayfadan indirebilirdiniz, ancak elinize geçtikten sonra MD5SUMS okuyan bağlantıya gidin ve seçin.



CLI isteminden, Ubuntu Sunucusu ISO'sunda md5sum çalıştırın ve bunun yanındaki sayı ile eşleştiğinden emin olun. ubuntu-16.04-masaüstü-amd64.iso Listede.

Varsa, tamamen boş bir USB bellek çubuğu veya SD kart hazırlayın ve sudo if = ubuntu-16.04-desktop-amd64.iso / dev / sdLetter bs = 8M , of = istemini söz konusu aygıtın adıyla değiştirerek. Kullanabilirsiniz sudo fdisk -l sisteminize bağlı tüm cihazları bulmak için. Bunu yaptıktan sonra, sürücüyü uygun şekilde çıkarın ve yönlendirici sistemine bağlayın. Yeniden başlatın ve söz konusu sistemi çıkarılabilir depolamadan başlatmak için gereken her türlü anahtarı itin. Ubuntu Sunucusu, bir dizi metin tabanlı ncurses komut istemine göre nispeten kolay bir şekilde kurulur.

Bununla birlikte, bu şekilde yüklemenin bir sorunu, çıkarılabilir medyanın kurulum sırasında İnternet'e bağlı olmanızı gerektirmesi ve bunun gibi bir kutuyu doğrudan bir ağa bağlamanın bazı güvenlik sorunları ortaya çıkarmasıdır. Siz onu kurup çalıştırana kadar güvenlik duvarı hizmetleri sağlamak için eski yönlendiricinizin ağ bağlantı noktalarından birine takın. Bunu yaptığınız anda, GRUB önyükleyicide bazı düzenlemeler yapmanız gerekecektir. Mümkünse, kuruluma çevrimdışı devam etmek için Linux yönlendiricinizi mevcut makinenizden mümkün olan en kısa sürede çıkarın. Bu, aksi takdirde mevcut bağlantınızda karşılaşabileceğiniz garip DHCP sorunlarını önleyecektir.

Büyük olasılıkla, işletim sistemi yapılandırma işlemi sırasında herhangi bir ek yazılım yüklemek istemeyeceksiniz. GRUB, varsayılan bir Ubuntu Sunucusu kurulumunda sessizce önyükleme yapar, bu da herhangi bir hata ayıklama mesajı görmeyeceğiniz anlamına gelir. Önyüklendikten sonra başka hiçbir şeyin olmadığı yanıp sönen bir imleç görürseniz, sanal konsola ulaşmak için Ctrl, Alt ve F1 tuşlarını basılı tutun. Hesabınızda oturum açın ve ardından şunu yazın: bunun yerine vi'yi de kullanmak isteyebilirsiniz. Okuyan bir satır bulun GRUB_CMDLINE_LINUX_DEFAULT = ”sessiz sıçrama” ve tırnak içindeki sessiz sıçrama kelimelerini silin. Ayrıca okuyan bir satırı düzenlemek isteyeceksiniz. GRUB_CMDLINE_LINUX = ”” dahil etmek için net.ifnames = 0 biosdevname = 0 ağ kartlarınızı doğru şekilde adlandırmak için çift tırnak içine alın. Dosyayı kaydedin ve ardından önyükleme sunucunuzu güncellemek için sudo update-grub'u çalıştırın, çünkü grub dosyası muhtemelen bir tür UEFI bölümündedir.

Okuyan bir satır bulun GRUB_CMDLINE_LINUX_DEFAULT = ”sessiz sıçrama” ve ' sessiz sıçrama 'Tırnak içindedir. fsafa

Bu bir korsan.

Tür sudo nano arayüz dosyanızı düzenlemek için açmak ve ardından burada bulduğunuz ağ kartlarının adlarını geleneksel olarak değiştirmek için eth0 ve eth1 , ardından dosyayı kaydedin ve çıkın. Dosyadan çıktığınızda, değişikliklerin düzgün şekilde etkili olmasını sağlamak için sistemi yeniden başlatabilirsiniz.

Şimdi kurulumu tamamlamak için uygun PPPoE ve OpenSSL yazılımını kurmanız gerekecek. DNS, DHCP, PPPoE ve OpenSSL'yi tek bir komut satırı sorunu ile kurabilirsiniz:

sudo apt-get install bind9 isc-dhcp-server openssl pppoeconf

Bu birkaç dakika sürebilir ve değişiklikleri onaylamaya hazır olup olmadığınızı sorabilir. Öyle olduğunu söylediğinizden emin olun. Her şeyi tamamlar tamamlamaz, aslında İnternet bağlantısını kesebilir ve çevrimdışı devam edebilirsiniz. Kötü bir şey olması durumunda tüm arabelleklerin birlikte eşitlendiğinden emin olmak için birkaç kez eşitleme komutunu kullanmak isteyebilirsiniz.

ISS'niz size chap-secrets dosyasına girmeniz gereken bir kullanıcı adı ve şifre sağlar. Tür ancak isterseniz vi'yi de kullanabileceğinizi unutmayın. Kullanıcı adınız ve şifrenizin aktarılması gerekiyor. Örneğin, potansiyel olarak şunları isteyeceksiniz:

'Billy' * 'mypass3'

Dosyayı kaydedin ve şimdi Bu dizinde sağlayıcı adlı bir dosya bulacaksınız. Diğer yapılandırma dosyalarında yaptığınız gibi nano ile açın veya aynı şekilde yeni bir tane oluşturun. Bu komutların her birini dosyada ayrı bir satıra koyun:

noipdefault

Varsayılan rota

Replacedefaultroute

ısrar etmek

eklenti rr-pppoe.so eth0

kullanıcı 'billy'

Ayrıca, oturum açma istemlerini kullanmayı tercih etmiyorsanız, bunu normal bir arayüze sahip gerçek bir üretim makinesi olarak değil, bir yönlendirici olarak kullanacağınız için gizli şifre ve noauth da girebilirsiniz. Billy adını, sahip olduğunuz gerçek kullanıcı adıyla değiştirin ve ardından pon sağlayıcısını veya bağlanmak için oluşturduğunuz dosyanın adını çalıştırın. Süreçte size ilgili tüm hata mesajlarını vermelidir, ancak ppp0 veya ppp1 ağ arayüzünü bulmak için ifconfig kullanabilirsiniz. Buna daha sonra başvurmanız gerekecek. Eşten birkaç DNS sunucu adresi istemek istiyorsanız usepeerdns ekleyebilirsiniz ve bunlar daha sonra DNS2 ve DNS1 etiketli ortam değişkenleri olarak. Ayrıca adında bir ortam değişkenini de zorlayacaksınız USEPEERDNS kendisini de 1'e ayarlamak için. ISS'niz tarafından size atananları değil, kendi DNS sunucularınızı kullanmayı tercih ederseniz, dosya gibi:

Sunucuyu her yeniden başlattığınızda veya yeni bir PPPoE bağlantısı kurduğunuzda bunların burada olması gerekir, dosyaların üzerine yazılır.

Çoğu durumda, MTU'nuz 1500 civarında ayarlanmıştır, ancak en yüksek değeri 1492 civarında veya belki de PPPoE arayüzünü kullandığınız için daha azını elde edebilirsiniz. Ppp0 veya ppp1 sisteminiz için maksimum MTU belirlediğinizi varsayarak, kullanmanız gerekecek ip-up dosyasını açın ve ardından satırı ekleyin / sbin / ifconfig ppp0 man #### en altta, yerine #### doğru değerinizle. Emin değilseniz 1480 civarında bir yerde olabilir.

Birçok eğitici size eth0 WAN bağlantısını DHCP'ye ayarlamanızı söyleyecektir, ancak arkasında çalıştığınız PPPoE bağlantısı nedeniyle bunu manuel olarak ayarlamanız gerekir. Kullanım ve # WAN ağ arayüzü altındaki kod bloğu auto eth0 ve iface eth0 inet kılavuzunu okuyacak şekilde düzenleyin ve ardından altındaki kod bloğu şunu okumalıdır:

# LAN ağı arayüzü

otomatik eth1

iface eth1 inet statik

adres 192.168.1.1

ağ maskesi 255.255.255.0

Yönlendiricilerin, yönlendirici görevi görmeleri için paket iletiminin etkinleştirilmesi gerekir, bu nedenle ve sonra Octothorpe önünde net.ipv4.ip_forward = 1 kaydetmeden önce. IPv4 için paket iletmeyi etkinleştirmek için # Sonraki satırın açıklamasını kaldır yazan bir alıntı altında bulacaksınız, ancak kullanmayı planlıyorsanız net.ipv6.conf.all.forwarding = 1 önündeki işareti de kaldırmak isteyebilirsiniz. IPv6 yönlendirmesi, bir PPPoE sistemi altında zorlayıcı olabilir.

Düzenlemek için iptables dosyasını açın. komutunu verin ve sonra bu satırları ona ekleyin:

Dosyayı kaydedin ve devam etmeden önce nano'dan veya kullandığınız diğer metin düzenleyiciden çıkın. İptables, Linux çekirdeği için ana güvenlik duvarını oluşturur, bu nedenle, ISP bağlantısını gerçekten başlatmadan önce bu tabloları sıraya koymak iyi bir fikirdir.

Şimdi söz konusu dosyadaki izinleri değiştirmeniz gerekecek, bu nedenle bir kök bilgi istemi almak için sudo -i veya sudo bash kullanmak isteyebilirsiniz. Kullandıktan sonra:

Bu izinler uygulandıktan sonra, yükseltilmiş istemden çıkmak için exit yazabilir ve enter tuşuna basabilirsiniz.

Açmamız gereken bir sonraki yapılandırma dosyası ve aynı şekilde düzenleyeceksiniz. Aşağıdaki ayarları eklemeniz gerekir. Octothorpes yönlendiriciniz için doğru IP adresi ile:

alt ağ ###. ###. ##. # ağ maskesi 255.255.255.0 {

Aralık ###.###.##.### ###.###.##.###;

seçenek yönlendiriciler ###. ###. ##. #;

seçenek alan adı sunucuları ###. ###. ##. #;

seçenek yayın adresi ###. ###. ##. ###;

}

Dosyayı kaydedin ve kapatın. Bir SD kart veya benzeri bir şeyle çalışıyorsanız, bu da senkronizasyon komutunu vermek için başka bir iyi zamandır.

Kullanmanız gerekecek sudo nano bir kez daha açmak için kendi özel kurallarınızı eklemek için dosya. Hala bir PPPoE bağlantısıyla çalışıyoruz, bu nedenle eth0 varsayılanı yerine ppp0 cihaz dosyasını kullanacağız.

'' Yorumuyla başlayan bir kod bloğunun altında # MSS'yi MTU boyutuna kelepçeleyin, 'Aşağıdaki satırı ekleyin:

-A İLERİ -p tcp –tcp-flags SYN, RST SYN -j TCPMSS –clamp-mss-pmtu

Bu kural, Web sayfalarının yalnızca yarıya kadar yüklenmesini veya zaman aşımına uğramasını önlemek için gereklidir. Bunun yerine MTU ve MSS'yi birbirine bağlar, böylece bu sorunları yaşamazsınız. Şimdi bu, Linux çekirdeğinin doğru boyutları tahmin etmesine izin verir, ancak gerekirse bunları gerçekten belirtebilirsiniz. 'İle başlayan bir kod bloğu altında # MSS boyutunu belirtin, 'Eklemeniz gerekecek:

-A İLERİ -p tcp –tcp-flags SYN, RST SYN -j TCPMSS –set-mss ####

#### bölümünü doğru MSS değeriyle değiştirin. Basit bir matematikle anlayabilirsiniz. PPPoE başlık boyutunu MTU'nuzdan çıkarın ve ardından IP başlığını ve TCP başlığını çıkarın. Fark, toplam MSS boyutudur.

LAN'ınızda kayıtlı olan başka bir bilgisayardan bu yönlendiriciye SSH'ye erişmenizi sağlayacak –syn seçeneğini eklemek için SSH hizmet kuralını değiştirmeniz gerekebilir. ICMP hizmet kuralını yorumlamak, makinenizin herhangi bir ping'e yanıt vermemesini sağlayacaktır. Bu, bilgisayarınızı oldukça gizli hale getirecektir, ancak bunu, bu yönlendirici aracılığıyla gezinme alışkanlıklarınızı görünmez kılacak bir tür son işlem olarak düşünmemelisiniz. Olmaz, ancak sizi koruyacak bir güvenlik katmanı daha.

Bazen, üzerinde çalıştığınız arayüzler veya PPPoE bağlantıları, yönlendiriciyi başlattığınızda aslında hemen bağlanmaz, bu nedenle, sistem başlatıldığında düzgün çalıştığından emin olmak için kısa bir başlangıç ​​komut dosyası oluşturmak isteyebilirsiniz. Toplam önyükleme süresine yalnızca 8-10 saniye ekler, yani aslında buna değer. Düzenleyin sudo nano ile bir kez daha dosyayı açın ve ardından

uyku 3

ifup eth0

uyku 3

ifup eth1

uyku 3

pon sağlayıcı

Varsayılan sağlayıcı dosyasını değiştirmek için bir tane oluşturduysanız, sağlayıcıyı özel bir dosyanın adıyla değiştirmeniz gerekecektir. Çoğu yönlendirici yalnızca 1-2 saniyelik uyku süresine ihtiyaç duyar, bu nedenle önyükleme performansını iyileştirmek için bunu denemek isteyebilirsiniz. Zaten ilk etapta yeniden başlatmak çok zaman almamalı.

Bu, pon ve ifup komutlarını, sistem tamamen önyüklendikten sonra, ancak gerçek sanal konsolun oturum açma istemleri görünmeden önce çalıştırmalıdır. Bağlantı kurulursa hiçbir şey olmaz, ancak bağlantılardan biri düzgün çalışmıyorsa, bu komut dosyası doğru şekilde başlatılmasını sağlayacaktır. Son pon komutu eth0 ve eth1'e dayanır, bu yüzden onu her zaman son adım olarak konumlandırmalısınız, aksi takdirde komut dosyası gerçekten başarısız olabilir.

Tüm bu değişiklikleri yaptıktan sonra makineyi yeniden başlatır başlatmaz, Ubuntu Sunucusunda çalışan tam olarak çalışan bir yönlendiriciniz olacak. Ara sıra kullanmak isteyebilirsiniz sudo iptables-L Durumlarını zaman zaman kontrol etmeniz gerekiyorsa, ancak aksi takdirde ticari olarak üretilmiş bir yönlendiriciden daha iyi olmasa da her şey iyi çalışacaktır. Yeni yönlendiriciniz gerekli diğer Ubuntu paketlerini çalıştıracaktır, ancak bir X Sunucusu veya başka bir şey kurmanıza gerek yoktur, çünkü sistem ek kullanıcı arayüzü yazılımına ihtiyaç duymadan doğru şekilde çalışmalıdır.

9 dakika okundu