# [SOLVED][PRINT/cups] połączenie z lokalnej sieci

## professor1234

Witam,

Mam mały problem z cups. Otóż mam drukarkę podłączoną do mojego routerka, która jest drukarką sieciową (dodatkowo oczywiście mam sambę).

Drukarka działa widzą ją komputery z sieci - nawet drukuje  :Wink:  Jakkolwiek nie mogę się połączyć z serwerem cups przez LAN. wpisuję adres serwera http://192.168.1.1:631 ale niestety dostaję radosny komunikat z przeglądarki: Problem loading page : Firefox can't establish a connection to the server at 192.168.1.1:631.

W iptables mam regułę:

iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 631 -j ACCEPT

iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 631 -j ACCEPT

Może ktoś podrzucić pomysł na rozwiązanie, swoją drogą z routerka przez localhost:631 działa. Swoją drogą mam jeszcze serwer Apache'a postawionego i tenże działa.

Z góry dziękiLast edited by professor1234 on Sat Sep 17, 2011 7:12 pm; edited 1 time in total

----------

## gryf

Zobacz /etc/cups/cupsd.conf na routerze. Prawdopodobnie masz domyślne ustawienia, które zezwolą na dostęp do administracji tylko z localhosta.

----------

## professor1234

No właśnie nie za bardzo już wiem co w tym pliku dopisać...

Poniżej zawartość cupsd.conf

```

ServerName PrintServer

ServerAdmin root@PrintServer

# Log general information in error_log - change "info" to "debug" for

# troubleshooting...

LogLevel info

MaxClients 100

#BrowseAddress @IF(wlan0)

# Administrator user group...

SystemGroup lpadmin

# Only listen for connections from the local machine.

Listen 192.168.1.*:631

Listen localhost:631

Listen /var/run/cups/cups.sock

# Show shared printers on the local network.

Browsing On

BrowseOrder allow,deny

BrowseAllow all

# Default authentication type, when authentication is required...

DefaultAuthType Basic

# Restrict access to the server...

<Location />

Order deny,allow

Deny from All

Allow from 192.168.1.*

Allow from 127.0.0.1

Allow from @LOCAL

Allow from @IF(wlan0)

</Location>

# Restrict access to the admin pages...

<Location /admin>

  Encryption Required

  Order deny,allow

Allow From 192.168.1.*

Allow From 127.0.0.1

</Location>

# Restrict access to configuration files...

<Location /admin/conf>

  AuthType Default

  Require user @SYSTEM

  Order allow,deny

</Location>

# Set the default printer/job policies...

<Policy default>

  # Job-related operations must be done by the owner or an administrator...

  <Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job>

    Require user @OWNER @SYSTEM

    Order deny,allow

  </Limit>

  # All administration operations require an administrator to authenticate...

  <Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>

    AuthType Default

    Require user @SYSTEM

    Order deny,allow

  </Limit>

  # All printer operations require a printer operator to authenticate...

  <Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Accept-Jobs CUPS-Reject-Jobs>

    AuthType Default

    Require user @SYSTEM

    Order deny,allow

  </Limit>

  # Only the owner or an administrator can cancel or authenticate a job...

  <Limit Cancel-Job CUPS-Authenticate-Job>

    Require user @OWNER @SYSTEM

    Order deny,allow

  </Limit>

  <Limit All>

    Order deny,allow

  </Limit>

</Policy>

#

# End of "$Id: cupsd.conf.in 7199 2008-01-08 00:16:30Z mike $".

#

```

----------

## SlashBeast

```
Listen 192.168.1.*:631

Listen localhost:631

Listen /var/run/cups/cups.sock 
```

Pierwsza linijka raczej powinna wpuszczac z sieci lokalnej.

Sprawdz 

```
netstat -lnptu | grep cups
```

U mnie jest to

```
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      5673/cupsd          

tcp6       0      0 ::1:631                 :::*                    LISTEN      5673/cupsd          

udp        0      0 0.0.0.0:631             0.0.0.0:*                           5673/cupsd
```

Dostep tylko z localhosta.

----------

## professor1234

Zmieniłem sekcję Listen na:

```

*:631

```

I działa wprawdzie nie jest to rozwiązanie a raczej półśrodek.

Przejrzałem loga z tym co miałem poprzednio i poniżej interesujący fragment:

```

I [19/Jun/2011:14:34:07 +0200] Scheduler shutting down normally.

I [19/Jun/2011:14:34:07 +0200] Saving job cache file "/var/cache/cups/job.cache"...

E [19/Jun/2011:14:34:07 +0200] Hostname lookup for "192.168.1.0/24" failed!

E [19/Jun/2011:14:34:07 +0200] Bad Listen address 192.168.1.0/24:631 at line 17.

I [19/Jun/2011:14:34:07 +0200] Listening to ::1:631 (IPv6)

I [19/Jun/2011:14:34:07 +0200] Listening to 127.0.0.1:631 (IPv4)

I [19/Jun/2011:14:34:07 +0200] Listening to /var/run/cups/cups.sock (Domain)

I [19/Jun/2011:14:34:07 +0200] Remote access is disabled.

I [19/Jun/2011:14:34:07 +0200] Loaded configuration file "/etc/cups/cupsd.conf"

I [19/Jun/2011:14:34:07 +0200] Using default TempDir of /var/spool/cups/tmp...

I [19/Jun/2011:14:34:07 +0200] Configured for up to 100 clients.

I [19/Jun/2011:14:34:07 +0200] Allowing up to 100 client connections per host.

I [19/Jun/2011:14:34:07 +0200] Using policy "default" as the default!

```

Widać problem w linii 3 i 4. Pytanie dlaczego...

Dzięki i pzdr

----------

## SlashBeast

Teraz zapoznaj sie z faq i zedytuj tytul tematu.

----------

## professor1234

Temat niestety dalej nie jest rozwiązany. Nie o to chodzi, że działa, tylko że nie działa jak powinno. Załóżmy że mam hipotetycznie dwie podsieci i z jednej chce mieć dostęp a z drugiej nie chce. (Pomijam fakt że oczywiście można to wyciąć na firewallu)

Pozdrawiam,

----------

## Bastian82

 *professor1234 wrote:*   

> Temat niestety dalej nie jest rozwiązany. Nie o to chodzi, że działa, tylko że nie działa jak powinno. Załóżmy że mam hipotetycznie dwie podsieci i z jednej chce mieć dostęp a z drugiej nie chce. (Pomijam fakt że oczywiście można to wyciąć na firewallu)
> 
> Pozdrawiam,

 

No przecież miałeś ustawić:

```
Listen 192.168.1.*/24:631
```

a nie

```
*:631
```

 *Quote:*   

> Widać problem w linii 3 i 4. Pytanie dlaczego...

 

A nie powinno być

```
192.168.1.0/24
```

----------

## professor1234

Problem właśnie polega na tym, że jak mam ustawione w configu tak jak napisałeś, czy jak ja miałem wcześniej (patrz wcześnijszy listing) to nie działa.

 *Quote:*   

> 
> 
> No przecież miałeś ustawić:
> 
> ```
> ...

 

Dopiero jak jest *:631 czyli nasłuchuje zewsząd, to wtedy jest ok. 

Pozdrawiam,

----------

## Bastian82

A tak:

```
Listen 192.168.1.0/24:631 
```

----------

## professor1234

Wróciłem do tematu po pół roku przerwy  :Wink:  ale ważne że z efektem.

Otóż to Listen, które tak każdy radośnie próbuje ustawić odnosi się konkretnie do adresu IP z które cupsd nasłuchuje a nie adresów z których ma słuchać. Czyli u mnie ma być po prostu 

```
Listen 192.168.1.1:631
```

 i tyle - żadnych gwiazdek, co więcej /maska też nie działa. Nie wiem czy jest pojedynczy przypadek u mnie, ale taka konfiguracja po prostu działa.

Dzięki za zainteresowanie.

Pozdrawiam

PS. Za chwilę nowy post zmiana czasu - zapewne znana i ktoś juz przerabiał  :Wink: 

----------

## Belliash

Listen wskazuje adres ip i ew port na ktorym ma nasluchiwac demon. Nie da sie tam wskazac zakresu adresow ip. Podaje sie tam tylko 1 adres ip (a nie zakres) ktory przypisany jest do tego smego hosta, na ktorym uruchamiany jest demon. Jezeli chcecie zeby demon byl widoczny we wszystkich sieciach do ktorych podlaczony jets host to musi nasluchiwac na wszystkich adresach. Wtedy nie uzywa sie gwiazdek tylko 0.0.0.0

----------

## professor1234

Moim zdaniem temat można zamknąć, jeszcze raz dzięki za zainteresowanie i podpowiedzi.

Moderatorzy, 

Może dałoby się dodać gdzieś ikonkę zamknięcia tematu, chce się Wam to samemu robić  :Wink: 

pzdr

----------

