Przejdź do treści

Skonfiguruj serwer wydruku CUPS w systemie Ubuntu (Bonjour, IPP, Samba, AirPrint)

    ubuntu

    Ten samouczek pokaże Ci, jak udostępnić drukarkę podłączoną do komputera Ubuntu z klientami Windows, macOS i iOS w tej samej sieci. CUPS (Common Unix Printing System) to domyślny system drukowania w systemach Linux, FreeBSD i macOS. Twoje środowisko pulpitu Linux może mieć dedykowane narzędzie do konfiguracji drukarki, ale wszystkie używają CUPS pod maską.

    Drukarkę CUPS można udostępniać w sieci przy użyciu kilku protokołów, w tym:

    • Bonjour + IPP: Bonjour, znany również jako mDNS/DNS-SD (wykrywanie usług DNS/DNS multicast), umożliwia komputerowi znajdowanie usług w sieci lokalnej. IPP (Internet Printing Protocol) to protokół transportowy.
    • SMB: aka Samba, używana głównie do udostępniania plików i drukarek klientom Windows.
    • AirPrint: umożliwia klientom iPhone’a, iPada i macOS drukowanie przez Wi-Fi.

    Każdy protokół ma swoje wady i zalety. Najpierw pokażę, jak zainstalować i skonfigurować CUPS. Następnie dowiemy się, jak udostępnić drukarkę CUPS za pomocą powyższych 3 protokołów. Zalecam korzystanie ze wszystkich 3 metod udostępniania drukarki, aby użytkownicy mogli znaleźć dostępną drukarkę w sieci lokalnej przy minimalnym wysiłku.

    Krok 1: Zainstaluj i skonfiguruj CUPS na Ubuntu

    Ubuntu desktop edition ma preinstalowany system CUPS. Jeśli używasz wersji serwerowej Ubuntu, musisz uruchomić następujące polecenie, aby zainstalować CUPS z domyślnego repozytorium Ubuntu.

    sudo apt install cups

    Następnie uruchom CUPS.

    sudo systemctl start cups

    Włącz automatyczne uruchamianie w czasie rozruchu.

    sudo systemctl enable cups

    Sprawdź jego status:

    systemctl status cups

    Przykładowe dane wyjściowe:

    Następnie edytuj główny plik konfiguracyjny CUPS za pomocą edytora tekstu wiersza poleceń, takiego jak Nano.

    sudo nano /etc/cups/cupsd.conf

    Najpierw musimy pokazać udostępnione drukarki w sieci lokalnej. Znajdź następującą linię.

    Browsing Off

    Zmień to na

    Browsing On

    aby inne komputery w tej samej sieci widziały drukarki podłączone do twojego komputera Ubuntu.

    Domyślnie interfejs sieciowy CUPS jest dostępny tylko pod adresem localhost:631. Jeśli korzystasz z wersji serwerowej Ubuntu, możesz także ustawić nasłuchiwanie CUPS na wszystkich dostępnych interfejsach sieciowych, aby móc uzyskać dostęp do interfejsu sieciowego CUPS z innych komputerów. Znajdź następującą linię.

    Listen localhost:631

    Zmień to na

    Port 631

    Tak więc CUPS będzie nasłuchiwał na wszystkich interfejsach sieciowych. Następnie znajdź następujące wiersze.

    <Location />
      Order allow,deny
    </Location>

    Powyższa konfiguracja umożliwia dostęp do interfejsu sieciowego CUPS tylko z hosta lokalnego. Aby zezwolić na dostęp z innych komputerów w tej samej sieci, dodaj Allow @LOCAL do konfiguracji jak poniżej.

    <Location />
      Order allow,deny
      Allow @LOCAL
    </Location>

    Dodaj go również do katalogu /admin, aby umożliwić zdalne administrowanie z sieci lokalnej.

    <Location /admin>
      Order allow,deny
      Allow @LOCAL
    </Location>

    Możesz także zezwolić na konkretny adres IP, na przykład:

    <Location />
      Order allow,deny
      Allow 192.168.0.101
    </Location>

    Zapisz i zamknij plik. Następnie uruchom ponownie CUPS, aby zmiany zaczęły obowiązywać.

    sudo systemctl restart cups

    Zauważ, że jeśli włączyłeś zaporę sieciową UFW w Ubuntu, musisz zezwolić klientom w tej samej sieci na dostęp do portu 631 na twoim urządzeniu Ubuntu. Na przykład moja prywatna sieć używa zakresu sieci 192.168.0.0 ~ 192.168.0.255, więc uruchamiam następujące polecenie.

    sudo ufw allow in from 192.168.0.0/24 to any port 631

    Interfejs sieciowy CUPS jest dostępny pod adresem https://localhost:631. Nie musimy używać interfejsu sieciowego w tym artykule, ale jeśli chcesz z niego korzystać, musisz dodać swoje konto użytkownika do grupy lpadmin, aby wprowadzać zmiany w interfejsie internetowym CUPS.

    sudo adduser your_username lpadmin

    Krok 2: Zainstaluj sterownik drukarki w systemie Ubuntu

    Musisz zainstalować sterownik na Ubuntu, aby mógł rozpoznać i używać drukarki. Jeśli masz drukarkę HP, możesz łatwo zainstalować sterownik za pomocą następującego polecenia.

    sudo apt install hplip

    Polecam również zainstalowanie pakietu printer-driver-gutenprint, który zawiera sterowniki CUPS dla Canon, Epson, HP i kompatybilnych drukarek.

    sudo apt install printer-driver-gutenprint

    Jeśli masz inne drukarki, możesz znaleźć sterowniki na openprinting.org.

    Po zainstalowaniu sterownika może być konieczne ponowne podłączenie drukarki do portu USB komputera z systemem Ubuntu. Aby sprawdzić, czy sterownik działa poprawnie, możesz utworzyć plik tekstowy na Ubuntu:

    echo "Ten poradnik dziala!" > file.txt

    Następnie uruchom następujące polecenie, aby wydrukować ten plik tekstowy z wiersza poleceń.

    lp file.txt

    To bardzo podstawowa metoda, więc nie martw się teraz o jakość drukowania.

    Krok 3: Udostępnij drukarkę CUPS przez protokół Bonjour/IPP

    Instalowanie Avahi-daemon

    CUPS może ogłaszać swoją obecność w sieci za pośrednictwem protokołu mDNS (multicast DNS) i DNS-SD (DNS Service Discovery), znanego również jako Bonjour. W tym celu należy zainstalować i uruchomić demona avahi, czyli usługę podobną do usługi Apple Bonjour, która umożliwia komputerom automatyczne wykrywanie współdzielonych urządzeń i usług w sieci lokalnej.

    sudo apt install avahi-daemon

    Start avahi-daemon.

    sudo systemctl start avahi-daemon

    Włącz automatyczne uruchamianie w czasie rozruchu.

    sudo systemctl enable avahi-daemon

    Avahi-daemon nasłuchuje na porcie UDP 5353. Otwórz go w zaporze.

    sudo ufw allow 5353/udp

    Drukowanie bez sterownika IPP

    Bonjour służy do anonsowania drukarki w sieci lokalnej. Aby klienci i serwer CUPS komunikowali się ze sobą, potrzebny jest protokół IPP (Internet Printing Protocol). Zaletą protokołu IPP jest to, że klienci mogą korzystać z udostępnionej drukarki bez instalowania jakichkolwiek sterowników na własnych urządzeniach. CUPS obsługuje IPP zaraz po wyjęciu z pudełka, więc nie musisz robić nic więcej, aby udostępniać drukarkę CUPS przez IPP.

    Print Friendly, PDF & Email