Portál AbcLinuxu, 3. května 2025 04:02

Dotaz: ssh connect v cgi skriptu

11.3.2010 11:27 vasek
ssh connect v cgi skriptu
Přečteno: 292×
Odpovědět | Admin
Na CentOS 2.6.18 mi běží apache a na něm jednoduchý cgi skript v Perlu. Ve skriptu se pokouším pomocí ssh spustit příkaz na jiném serveru (SLES), ale nedaří se mi. Příkaz ssh -vvv -i /var/www/id_rsa -l user server ls mi vrací chybu:

OpenSSH_4.3p2, OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008 Pseudo-terminal will not be allocated because stdin is not a terminal. debug1: Reading configuration data /etc/ssh/ssh_config debug1: Applying options for * debug2: ssh_connect: needpriv 0 debug1: Connecting to xx.xx.xx.xx [xx.xx.xx.xx] port 22. debug1: connect to address xx.xx.xx.xx port 22: Permission denied ssh: connect to host xx.xx.xx.xx port 22: Permission denied

sshd server na SLESu běží, z jiných stanic se bez problémů připojím. V hosts.allow mám sshd: ALL, ručně se z centosu taky připojím.

Httpd mi běží pod uživatelem apache, soubor s klíčem má přístupný, fingerprint ověřený. Pokud to ssh spustím z řádky pod uživatelem apache, vše běží bez problémů a dotazů.iptables i ip6tables jsou na centosu prázdné. tcpdump na serveru mi neukáže žádný paket, takže to něco zařezává na centosu. Ale nevím vůbec co.

Máte nějaký nápad?

Nástroje: Začni sledovat (2) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

30.11.2016 16:02 Andílek
Rozbalit Rozbalit vše Re: ssh connect v cgi skriptu
Odpovědět | | Sbalit | Link | Blokovat | Admin
1) Je potřeba udělat kontrolu nastavení:

getsebool -a | grep httpd_can

2) Mrknout na nastavení parametru

... httpd_can_network_connect --> off ...

3) Když je off, tak změnit na on

setsebool httpd_can_network_connect=1

,nebo pro trvalou změnu

setsebool -P httpd_can_network_connect=1

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.