Anfängerfragen - Linux Neuling? Hier ist der richtige Platz für deine Fragen (2)

  • Ersteller Gelöschtes Mitglied 45455
  • Erstellt am
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Besten Dank damit hats geklappt :)
 
Kann ich eigentlich zwei SSH Zugänge zu meinem Serverchen einrichten, mit verschiedenen Konfigurationen?
Ich möchte auf einem Custom Port mit bestimmten Usern über Passwort eine SSH Verbindung aufbauen können. Das habe ich momentan so am laufen.
Jetzt würde ich aber gerne über den Standard Port mit bestimmten Usern über Key-Authentication eine SSH Verbindung aufbauen können.

Das ganze aber so, dass man über den Standard Port auch nur mit Key-Authentication und nicht mit Passwort eine Verbindung aufbauen kann. Es ist also nicht damit getan, einfach mehrere Ports zu erlauben und Key- sowie Passwortauthentifizierung zuzulassen.

Weiss jemand ob/wie das möglich ist?
 
sshd -f /dein/config/file

Solls automatisch gehen musst du die entsprechenden Scripte für upstart / systemd etc. aber von Hand anpassen.
 
ich möchte zu jeder Zeit beide Zugänge aktiv haben.
Also immer den Service manuel starten ist nicht.

Müsste quasi 2 mal den sshd am laufen haben, ums mal so auszudrücken
 
Der obige Befehl startet dir einen zweiten ssh-Server mit dem config file dass du angibst.
Du musst aber den zweiten ssh-Server manuell in "Autostart" (upstart / systemd etc.) eintragen.

Zu erwähnen welche Distribution zu benutzt könnte dazu beitragen nicht so allgemeine antworten zu erhalten ;)
 
Achso, ich dachte damit würde der laufende deamon nur mit einem anderen Configfile ausgestattet. So wie du das sagst, wäre das aber eigentlich genau das, was ich möchte.


Benutze übrigens Crunchbang.
 
Kann mir jemand von euch helfen?

Ich habe einen Ubuntu Server mit nginx und habe die Standard-Config, wo ich nur den root-path auf /var/www/xyz geändert habe, wo meine Webseite liegt.

Nun läuft auf dem Server noch subsonic, welcher auf domain:4040 erreichbar ist.

Wie konfiguriere ich nun, dass subdomain.domain.com umgeleitet wird auf domain:4040?
 
Ganz einfach. :)

Code:
server {
    listen 80;
    listen [::]:80;
    server_name subdomain.domain.com;
    return 301 http://domain.com:4040$request_uri;
}
 
Das ist ein Virtual Host bzw. bei nginx ein Server Block das bedeutet ruft man subdomain.domain.com auf kommt ein 301 zurück dahin wo du willst.

Ruft du normal deine seite auf also: domain.com dann ist alles wie bisher
 
Nope. Dieser Serverblock lauscht auf Port 80 für IPv4 und IPv6 und nur auf die Domain "subdomain.domain.com". Sollte so ein Request reinkommen wirft Nginx eine 301 und leitet auf "domain.com:4040" weiter.

Edit: Dürften wir mal deine gesamte /etc/nginx/nginx.conf und deine Virtual Hosts sehen? Glaube du hast deinen Server ohne vHost konfiguriert. :d

Edit2: Ach nee, du schreibst ja Standardconfig. Dann änder dir mal Folgendes ab, damit es zumindest halbwegs ordentlich ist.
1. In /etc/nginx/sites-enabled den Link "000-default.conf" löschen.
2. In /etc/nginx/sites-available eine neue Datei mit dem Namen deiner Domain und der .conf-Endung erstellen, beispielsweise example.org.conf
3. In diese Datei deinen vHost eintragen. Der könnte beispielsweise so aussehen:

Code:
server {
	listen 80;
	listen [::]:80 ipv6only=on;

	root /var/www/example.org/public;
	index index.php;

	server_name example.org;

	charset utf-8;

	location / {
		try_files $uri $uri/ /index.php$is_args$args;
	}

	location ~ \.php$ {
		try_files $uri =404;
		fastcgi_pass php;
		fastcgi_index index.php;
		fastcgi_param APP_ENV production;
		include fastcgi_params;
	}
}

4. Von dieser Datei einen Symlink in /etc/nginx/sites-enabled erstellen (cd /etc/nginx/sites-enabled && ln -s ../sites-available/example.org).
5. (sudo) service nginx restart

Dann hast du zumindest mal nen sauberen vHost-Eintrag. Danach erstellst du eine Datei "subsonic.example.org" in /etc/nginx/sites-available und trägst dort den Serverblock aus Post #2379 ein. Auch von dieser Datei wieder einen Symlink nach sites-enabled. Dann hast du genau die Config die du möchtest.
 
Zuletzt bearbeitet:
Habs gerade getestet, das funktioniert. :)

Hier ist die config:

Code:
server {
	listen 80 default_server;
	listen [::]:80 default_server ipv6only=on;

#	root /usr/share/nginx/html;
	root /var/www/uugoma;
	index index.html index.htm;

	# Make site accessible from http://localhost/
	server_name localhost;

	location / {
		# First attempt to serve request as file, then
		# as directory, then fall back to displaying a 404.
		try_files $uri $uri/ =404;
		# Uncomment to enable naxsi on this location
		# include /etc/nginx/naxsi.rules
	}

	# Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
	#location /RequestDenied {
	#	proxy_pass http://127.0.0.1:8080;    
	#}

	#error_page 404 /404.html;

	# redirect server error pages to the static page /50x.html
	#
	#error_page 500 502 503 504 /50x.html;
	#location = /50x.html {
	#	root /usr/share/nginx/html;
	#}

	# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
	#
	#location ~ \.php$ {
	#	fastcgi_split_path_info ^(.+\.php)(/.+)$;
	#	# NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
	#
	#	# With php5-cgi alone:
	#	fastcgi_pass 127.0.0.1:9000;
	#	# With php5-fpm:
	#	fastcgi_pass unix:/var/run/php5-fpm.sock;
	#	fastcgi_index index.php;
	#	include fastcgi_params;
	#}

	# deny access to .htaccess files, if Apache's document root
	# concurs with nginx's one
	#
	#location ~ /\.ht {
	#	deny all;
	#}
}

server {
    listen 80;
    listen [::]:80;
    server_name megeza.uugoma.com;
    return 301 http://uugoma.com:4040$request_uri;
}

//Edit: Und natürlich noch die /etc/nginx/nginx.conf:

Code:
user www-data;
worker_processes 4;
pid /run/nginx.pid;

events {
	worker_connections 768;
	# multi_accept on;
}

http {

	##
	# Basic Settings
	##

	sendfile on;
	tcp_nopush on;
	tcp_nodelay on;
	keepalive_timeout 65;
	types_hash_max_size 2048;
	# server_tokens off;

	# server_names_hash_bucket_size 64;
	# server_name_in_redirect off;

	include /etc/nginx/mime.types;
	default_type application/octet-stream;

	##
	# Logging Settings
	##

	access_log /var/log/nginx/access.log;
	error_log /var/log/nginx/error.log;

	##
	# Gzip Settings
	##

	gzip on;
	gzip_disable "msie6";

	# gzip_vary on;
	# gzip_proxied any;
	# gzip_comp_level 6;
	# gzip_buffers 16 8k;
	# gzip_http_version 1.1;
	# gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

	##
	# nginx-naxsi config
	##
	# Uncomment it if you installed nginx-naxsi
	##

	#include /etc/nginx/naxsi_core.rules;

	##
	# nginx-passenger config
	##
	# Uncomment it if you installed nginx-passenger
	##
	
	#passenger_root /usr;
	#passenger_ruby /usr/bin/ruby;

	##
	# Virtual Host Configs
	##

	include /etc/nginx/conf.d/*.conf;
	include /etc/nginx/sites-enabled/*;
}


#mail {
#	# See sample authentication script at:
#	# http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript
# 
#	# auth_http localhost/auth.php;
#	# pop3_capabilities "TOP" "USER";
#	# imap_capabilities "IMAP4rev1" "UIDPLUS";
# 
#	server {
#		listen     localhost:110;
#		protocol   pop3;
#		proxy      on;
#	}
# 
#	server {
#		listen     localhost:143;
#		protocol   imap;
#		proxy      on;
#	}
#}
 
Zuletzt bearbeitet:
Schau mal über deinem Post, habe meinen nochmals erweitert. Deine nginx.conf könntest du auch noch so abändern. Die ist zwar auch nicht perfekt, aber besser als das Standardgesülze:

Code:
user www-data;
worker_processes 1;
pid /run/nginx.pid;

events {
	worker_connections 1024;
}

http {

	##
	# PHP upstream
	##

	upstream php {
		server unix:/var/run/php5-fpm.sock;
	}

	##
	# Basic Settings
	##

	sendfile on;
	tcp_nopush on;
	tcp_nodelay on;
	client_body_timeout 12;
	client_header_timeout 12;
	keepalive_timeout 15;
	send_timeout 10;
	types_hash_max_size 2048;
	server_tokens off;

	server_names_hash_bucket_size 64;

	include /etc/nginx/mime.types;
	default_type application/octet-stream;

	##
	# Logging Settings
	##

	access_log /var/log/nginx/access.log;
	error_log /var/log/nginx/error.log;

	##
	# Buffers
	##

	client_body_buffer_size 10K;
	client_header_buffer_size 1k;
	client_max_body_size 8m;
	large_client_header_buffers 2 1k;

	##
	# Gzip Settings
	##

	gzip on;
	gzip_disable "msie6";
	gzip_proxied expired no-cache no-store private auth;
	gzip_comp_level 2;
	gzip_min_length 1000;
	gzip_types application/x-javascript text/css text/xml application/xml;

	##
	# Virtual Host Configs
	##

	# Dieser vHost leitet alle Domains, die nicht explizit in einem vHost deklariert sind, auf eine 404 um.

	server {
		listen 80;
		return 404;
	}

	include /etc/nginx/conf.d/*.conf;
	include /etc/nginx/sites-enabled/*;
}
 
Schau mal über deinem Post, habe meinen nochmals erweitert. Deine nginx.conf könntest du auch noch so abändern. Die ist zwar auch nicht perfekt, aber besser als das Standardgesülze:

Code:
user www-data;
worker_processes 1;
pid /run/nginx.pid;

events {
	worker_connections 1024;
}

http {

	##
	# PHP upstream
	##

	upstream php {
		server unix:/var/run/php5-fpm.sock;
	}

	##
	# Basic Settings
	##

	sendfile on;
	tcp_nopush on;
	tcp_nodelay on;
	client_body_timeout 12;
	client_header_timeout 12;
	keepalive_timeout 15;
	send_timeout 10;
	types_hash_max_size 2048;
	server_tokens off;

	server_names_hash_bucket_size 64;

	include /etc/nginx/mime.types;
	default_type application/octet-stream;

	##
	# Logging Settings
	##

	access_log /var/log/nginx/access.log;
	error_log /var/log/nginx/error.log;

	##
	# Buffers
	##

	client_body_buffer_size 10K;
	client_header_buffer_size 1k;
	client_max_body_size 8m;
	large_client_header_buffers 2 1k;

	##
	# Gzip Settings
	##

	gzip on;
	gzip_disable "msie6";
	gzip_proxied expired no-cache no-store private auth;
	gzip_comp_level 2;
	gzip_min_length 1000;
	gzip_types application/x-javascript text/css text/xml application/xml;

	##
	# Virtual Host Configs
	##

	# Dieser vHost leitet alle Domains, die nicht explizit in einem vHost deklariert sind, auf eine 404 um.

	server {
		listen 80;
		return 404;
	}

	include /etc/nginx/conf.d/*.conf;
	include /etc/nginx/sites-enabled/*;
}

Danke erstmal für die Hilfe.

Muss ich denn die config so ändern, wie du es geschrieben hast?

Das Problem bei der nginx-Installation war, dass ich die Standard-Sachen gelöscht habe und genau das gemacht habe, was du geschrieben hast (gemäss dieser Anleitung: https://thomas-leister.de/open-sour...tion-konfiguration-einrichtung-ubuntu-server/).
Danach ging die Webseite gar nicht...
 
Die Anleitung sieht ganz komisch aus. Allein schon wenn ich den Serverblock sehe wird mir flau im Magen. In der Anleitung da wird n vHost für ne Webseite ganz ohne PHP erstellt.

Genau so musst du es natürlich nicht machen. Aber das wäre sauberer als die Lösung, die du da scheinbar hast. ;)
 
Die Anleitung sieht ganz komisch aus. Allein schon wenn ich den Serverblock sehe wird mir flau im Magen. In der Anleitung da wird n vHost für ne Webseite ganz ohne PHP erstellt.

Genau so musst du es natürlich nicht machen. Aber das wäre sauberer als die Lösung, die du da scheinbar hast. ;)

Alles klar, danke.

Ich werde mir das in einer ruhigen Minute nochmal genau durchlesen und implementieren. :)

//Edit: So, jetzt habe ich die config-Sachen geändert, und die Webseite ist jetzt, wie letztes mal schon, nicht mehr verfügbar.

Hier die /etc/nginx/nginx.conf:

Code:
user www-data;
worker_processes 1;
pid /run/nginx.pid;

events {
	worker_connections 1024;
}

http {

	##
	# PHP upstream
	##

	upstream php {
		server unix:/var/run/php5-fpm.sock;
	}

	##
	# Basic Settings
	##

	sendfile on;
	tcp_nopush on;
	tcp_nodelay on;
	client_body_timeout 12;
	client_header_timeout 12;
	keepalive_timeout 15;
	send_timeout 10;
	types_hash_max_size 2048;
	server_tokens off;

	server_names_hash_bucket_size 64;

	include /etc/nginx/mime.types;
	default_type application/octet-stream;

	##
	# Logging Settings
	##

	access_log /var/log/nginx/access.log;
	error_log /var/log/nginx/error.log;

	##
	# Buffers
	##

	client_body_buffer_size 10K;
	client_header_buffer_size 1k;
	client_max_body_size 8m;
	large_client_header_buffers 2 1k;

	##
	# Gzip Settings
	##

	gzip on;
	gzip_disable "msie6";
	gzip_proxied expired no-cache no-store private auth;
	gzip_comp_level 2;
	gzip_min_length 1000;
	gzip_types application/x-javascript text/css text/xml application/xml;

	##
	# Virtual Host Configs
	##

	# Dieser vHost leitet alle Domains, die nicht explizit in einem vHost deklariert sind, auf eine 404 um.

	server {
		listen 80;
		return 404;
	}

	include /etc/nginx/conf.d/*.conf;
	include /etc/nginx/sites-enabled/*;
}

und die /etc/nginx/sites-available/uugoma.com.conf:

Code:
server {
	listen 80;
	listen [::]:80 ipv6only=on;

	root /var/www/uugoma;
	index index.php;

	server_name uugoma.com www.uugoma.com;

	charset utf-8;

	location / {
		try_files $uri $uri/ /index.php$is_args$args;
	}

	location ~ \.php$ {
		try_files $uri =404;
		fastcgi_pass php;
		fastcgi_index index.php;
		fastcgi_param APP_ENV production;
		include fastcgi_params;
	}
}

in /etc/nginx/sites-enabled ist einfach nur ein Link:

Code:
uugoma.com -> /etc/nginx/sites-available/uugoma.com.conf

Im Control Panel von dem VServer sehe ich nun auch Port 80 als zu.
Wie bekomme ich das jetzt hin?
 
Zuletzt bearbeitet:

Anhänge

  • error.png
    error.png
    7,5 KB · Aufrufe: 45
PHP5-FPM ist auf dem Server installiert?

Ja, ist installiert.

Wie gesagt, im control Panel vom Hoster sehe ich Port 80 als offline. Hat das vllt was mit der Firewall zu tun? Mit der Standard-Config ging es ja.

Code:
 iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

iptables sagt nix, und ufw ist gar nicht installiert.
 
Dann schau dir mal den Nginx Error Log unter /var/log/nginx/error.log an, da steht mit Sicherheit was drin.
 
Dann schau dir mal den Nginx Error Log unter /var/log/nginx/error.log an, da steht mit Sicherheit was drin.

Muss ich gemäss diesem Log /etc/nginx/sites-enabled/default löschen?

Code:
/var/log/nginx/error.log
2015/02/17 14:52:51 [error] 2137#0: *182 open() "/var/www/uugoma/images/pic00.jpg" failed (13: Permission
denied), client: 95.91.234.32, server: localhost, request: "GET /images/pic00.jpg HTTP/1.1", host: "uugom
.com", referrer: "http://uugoma.com/"
2015/02/17 22:32:56 [emerg] 10419#0: "proxy_pass" directive is not allowed here in /etc/nginx/sites-enabl
d/default:78
2015/02/17 22:34:11 [emerg] 2109#0: bind() to 0.0.0.0:4040 failed (98: Address already in use)
2015/02/17 22:34:11 [emerg] 2109#0: bind() to 0.0.0.0:4040 failed (98: Address already in use)
2015/02/17 22:34:11 [emerg] 2109#0: bind() to 0.0.0.0:4040 failed (98: Address already in use)
2015/02/17 22:34:11 [emerg] 2109#0: bind() to 0.0.0.0:4040 failed (98: Address already in use)
2015/02/17 22:34:11 [emerg] 2109#0: bind() to 0.0.0.0:4040 failed (98: Address already in use)
2015/02/17 22:34:11 [emerg] 2109#0: still could not bind()
2015/02/17 22:35:25 [emerg] 10447#0: "proxy_pass" directive is not allowed here in /etc/nginx/sites-enabl
d/default:79
 
In /etc/nginx/sites-enabled sollten natürlich nur die Seiten sein, die du auch nutzen willst, also "uugoma.com.conf" und "subsonic.uugoma.com.conf". Die default muss da weg. Der Log ist aber von gestern Abend. Mehr steht da nicht drin?
 
Nein, mehr steht nicht drin.

uugoma.com.conf ist jetzt alleine in dem Verzeichnis, trotzdem geht es nicht...
subsonsic.uugoma.com.conf gibt es noch nicht.
 
Zuletzt bearbeitet:
Okay, dann bin ich so langsam an meiner Wissensgrenze angelangt. Sowas hatte ich noch nie. :confused:
 
Stoppe mal den nginx, und überprüfe ob wirklich alle Prozesse sich beendet haben, ggf die Prozesse killen.

Code:
pgrep -fl nginx

Danach nginx wieder starten und bitte mal die Ausgabe von dem folgenden Befehl posten:

Code:
netstat -anp | grep  :80.*LISTEN
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh