Icecast change listener url YP Directory - icecast

I am looking for a solution to stop icecast publishing the icecast server listener link instead I want to publish a custom listener link that is a file hosted on our web server.
For example say the icecast server is on domain https://stream.example.com:8000/
I want if user is on icecast directory instead of seeing that as the listener URL they would be connected to https://www.example.com/stream.m3u
I don't know if this is possible?

I'm working on this as well, and I've gotten to this so far:
In icecast.xml, add this:
<!-- This is the hostname other people will use to connect to your server.
It affects mainly the urls generated by Icecast for playlists and yp
listings. You MUST configure it properly for YP listings to work!
-->
<hostname>www.example.com</hostname>
Also make sure you have an 80 listen-socket:
<!-- You may have multiple <listen-socket> elements -->
<listen-socket>
<port>80</port>
</listen-socket>
This will get you to http://www.example.com/{your-stream}. That's enough for https://dir.xiph.org to work, since it just links your stream, so your site's HTTPS redirect will function. This isn't enough for https://www.internet-radio.com, since it actually provides a web player, but I haven't been able to get https into the directories yet.

Currently, that is for Icecast 2.4.x, there is no way to publish to the YP directories using an https scheme for the stream URL, this will be possible in the upcoming Icecast 2.5 release.

Related

Running Django on a Linux Server using Apache with HTTPS

I've been trying to figure this out for a while now and nothing I've found has really been helping.
I've got a remote Linux server running with Apache installed, and right now everything going to the server is redirected to HTTPS through Apache. This all works fine and I can access the files I need to normally, but now I'd like to also add in a Django site to my server under a new "subdomain". (For example I'd like to still be able to access non-Django files as usual 'https://www.thesite.com/path/to/file.php' and also be able to access the Django site like 'https://www.thesite.com/djangosite/some/site/page')
Could someone please give me some direction as to how I'd be able to do this? I can supply more information if it's needed.
Thanks in advance!
Edit 1: The Django server seems to dislike connecting via HTTPS and I'm getting an error that it can only support HTTP, but I need it because I want the site to be secure, and currently Apache is redirecting all HTTP requests to HTTPS, so do I need some other method of making it work?
https://www.digicert.com/ssl-support/apache-multiple-ssl-certificates-using-sni.htm
Check out SNI and also potentially wild card certificates

Customizing the API Manager URL(s) - Windows

So i'm trying to change the default URL for WSO2 features i.e. Publisher, Carbon, Store from localhost to, lets say, myDomain.com.
I've looked for it in the WSO2 documentation but i keep finding this article over and over again
https://docs.wso2.com/display/AM210/Customize+the+API+Store+and+Gateway+URLs
The problem with this is that it has linux-based (i suppose) commands listed that cannot be applied to windows.
I've also tried to change the host < HostName > and < MGT HostName > tags in the carbon.xml of the WSO2 product but it does not respond and display the page AT ALL! just works with the localhost. thats it
Any ideas or options for the windows end? Thanks
1) Yes, the commands given in the doc are for linux. But what those commands do is installing nginx. So you can ignore those commands, and install nginx in windows.
NGinx configurations given in the doc will be the same for any OS.
2) If you add a hostname to <HostName> and <MGT HostName> tags, you need to have IP to hostname mapping somewhere. I think there is a host file in windows for that.

apache if header contains then pass it to another url(jboss server)

I want to check a http header in request, which is received on apache 2.2 and if it contains that header I would like to fire a new request to jboss whose ip is different from apache server's. Is this possible?
I have seen this doc
enter link description here
In the above link I can check if header exist, but how to create new request to another server with same header forwarded.
Any help is appreciated.
What you suggest would send a redirect response to the browser, and it would be the browser who would end up visiting your Jboss server.
I'm not sure if that's precisely what you want, but sounds like what you want is to get Apache to do that request to Jboss and then send the response to the browser. This would be the typical scenario with a web server (apache) and an application server (Jboss) where you normally don't access the application server directly.
What you want to make this work in apache is a reverse proxy.

Shibboleth bypass for IP range

I have Shibboleth configured on an IIS server and am using it protect a .NET application.
I need authenticated access for users accessing the application over the web and for that Shibboleth is working fine.
The application also hosts web services which need to be accessed by other applications in the same server and for that working with Shibboleth is a challenge since web service clients cannot deal with the log in page.
Is it possible to configure Shibboleth to ignore requests coming from the same server for example by checking the IP address?
It won't directly answer your question, but I can share a workaround I found and hope it can help with your problem too.
Define another website in IIS pointing to the same folder as the initial one, and make it only respond to a different domain (like something.local). Then in IP Address and Domain Restrictions, make sure only 127.0.0.1 is allowed to access it.
In C:\Windows\System32\drivers\etc open the file "hosts" in Notepad (running with Administrator privileges). Add the line "127.0.0.1 something.local" (no quotes; make sure the domain is the same one you defined before)
Now, make the webservices call the application by the new domain.

Whitelist http: content for Django application running SSL?

In my Djanog web application I have added SSL security. Now In the django application I have integrated an external API which is running over http://.
This is the error i get after calling the external API.
[blocked] The page at 'https://mywebsite.com' was loaded over HTTPS, but ran insecure content from 'http://api.external.com/moto.json?': this content should also be loaded over HTTPS.
Can anyone help me out here on how should i whitelist the required external domains. And I am running the application on Apache server. So will this have to be done in Apache settings or Django.
Unfortunately this is something that is being done at the browser as is not something you can control from your application or your web server.
Here is the help article from Chome that explains this behavior:
Websites that ask for sensitive information, such as usernames and
passwords, often use secure connections to transmit content to and
from the computer you're using. If you're visiting a site via a secure
connection, Google Chrome will verify that the content on the webpage
has been transmitted safely. If it detects certain types of content on
the page coming from insecure channels, it can automatically prevent
the content from loading and you'll see a shield icon Insecure content
shield icon appearing in the address bar. By blocking the content and
possible security gaps, Chrome protects your information on the page
from falling into the wrong hands.
The only way to stop this from happening is to access the API over HTTPS.