2012-03-05, 11:09
  #1
Medlem
FractalDimensions avatar
Hej!

Jag har låst mig ute från min server när jag ändrade SSH porten.
Har haft problem med folk som kör bruteforce attack och tänkte att det är bäst att flytta den från standardporten.
Glömde dock öppna porten i brandväggen (ufw) och kommer därmed inte åt SSH.

Jag har försökt köra sudo via PHP med följande:

<?php
$output = shell_exec('echo 'lösenord' | sudo -S ufw disable');
echo "<pre>$output</pre>";
?>

och även för att försöka skriva över SSH-konfigurationen:

<?php
$output = shell_exec('echo 'lösenord' | sudo -S echo 'Port 22 > /etc/ssh/sshd_config');
echo "<pre>$output</pre>";
?>

...men inget av de fungerar...

Skulle verkligen uppskatta om någon kunde komma med förslag eller en lösning.

Mvh.
Citera
2012-03-05, 11:27
  #2
Medlem
Blir nog väldigt svårt om inte apache eller vilken använder webbservern nu görs under, ligger i sudoers.
Är det en VPS du hyr utav ett företag kanske du kan be dom manuellt gå in i servern (om dom har tillgång, och ändra tillbaks till standardporten)
__________________
Senast redigerad av ath0 2012-03-05 kl. 11:30.
Citera
2012-03-05, 11:41
  #3
Medlem
FractalDimensions avatar
Jag har den hos Citynetwork, så det kostar mkt & be de gå in i serverhallen..
Nä, www-data är inte sudoer, usch, det hade jag glömt....

Fan också......
Finns det inget sätt & ta sig in om man har root-lösen?
Jag har FTP access, men det är vsftp så inloggning sker via databas och inte unix.
Det enda jag behöver göra är att ändra i /etc/ssh/sshd_config, typ echo Port 22 > /etc/ssh/sshd_config

Fan fan fan fan....
Citera
2012-03-05, 12:07
  #4
Moderator
vhes avatar
Kan inget om PHP, men i teorin tycker jag följande borde funka:

Maskin A: Server du är utelåst från
Maskin B: Annan maskin med publikt IP du kontrollerar

1. Starta SSH-server på maskin B.
2. Skapa ett nyckelpar med okrypterad privat nyckel, och se till att denna nyckel får användas för att logga in som använvaren dude på maskin B.
3. Ladda upp privat nyckel till /var/www/.ssh/id_[rd]sa på maskin A.
4. Skriv PHP-script som m.h.a. den där shell_exec-grunkan SSH:ar till maskin B samt sätter upp en tunnel tillbaks sin egna SSH-port, ex: ssh -R:12345:localhost:10022 -l dude B (antar här att du kör SSH-demonen på port 10022 på maskin A)
5. SSH:a från maskin B via din tunnel in på maskin A. ssh -p 12345 localhost
6. Profit.
__________________
Senast redigerad av vhe 2012-03-05 kl. 12:11. Anledning: typo i filnamn på ssh-nyckel
Citera
2012-03-05, 12:35
  #5
Medlem
FractalDimensions avatar
Citat:
Ursprungligen postat av vhe
Kan inget om PHP, men i teorin tycker jag följande borde funka:

Maskin A: Server du är utelåst från
Maskin B: Annan maskin med publikt IP du kontrollerar

1. Starta SSH-server på maskin B.
2. Skapa ett nyckelpar med okrypterad privat nyckel, och se till att denna nyckel får användas för att logga in som använvaren dude på maskin B.
3. Ladda upp privat nyckel till /var/www/.ssh/id_[rd]sa på maskin A.
4. Skriv PHP-script som m.h.a. den där shell_exec-grunkan SSH:ar till maskin B samt sätter upp en tunnel tillbaks sin egna SSH-port, ex: ssh -R:12345:localhost:10022 -l dude B (antar här att du kör SSH-demonen på port 10022 på maskin A)
5. SSH:a från maskin B via din tunnel in på maskin A. ssh -p 12345 localhost
6. Profit.


Hehe, tack, men det fungerar inte heller.
SSH termineras på maskin A när den körs under PHP eftersom den inte får en TTY...
Citera
2012-03-05, 13:38
  #6
Moderator
vhes avatar
Citat:
Ursprungligen postat av FractalDimension
SSH termineras på maskin A när den körs under PHP eftersom den inte får en TTY...

Det där bör inte vara en showstopper. Hinner inte undersöka i detalj nu, men flaggorna -N och -n kan vara till hjälp. Rätt säker på att SSH skall gå att få att överleva utan en tty med rätt parametrar.

[edit]: Eller -T kanske?
__________________
Senast redigerad av vhe 2012-03-05 kl. 13:41.
Citera
2012-03-05, 18:56
  #7
Medlem
FractalDimensions avatar
Citat:
Ursprungligen postat av vhe
Det där bör inte vara en showstopper. Hinner inte undersöka i detalj nu, men flaggorna -N och -n kan vara till hjälp. Rätt säker på att SSH skall gå att få att överleva utan en tty med rätt parametrar.

[edit]: Eller -T kanske?

Tack för hjälpen. Schysst att du tog din tid.
Fick ringa supporten till slut & punga ut nästan 500 kr.
Det är dock fixat nu, men jag tänker säga upp servern och gå över till moln. Då har jag VNC oavsett vad som händer.

Billigare blir det också.
Citera

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Det är enkelt att registrera ett nytt konto

Bli medlem

Logga in

Har du redan ett konto? Logga in här

Logga in