Skip to main content

nginx proxy server localhost / loadbalancer permission denied

Ketika terjadi permaslasahan pada configurasi memang sangat menyebalkan tapi dari situ lah kita akan mendapat ilmu baru, pda kasus ini terjadi permasalahan "Permission denied" service yang di pakai nginx sebagai "loadbalancer" port default yang dipakai 80 tetapi dikarenakan webserverA dan webserverB menggunakan port 8080 kesulitan untuk forwarding ke webserver. cara pengecekan ya sebagaiberikut.


1. Lakukan dari luar curl -i 127.0.0.1:8080 jika terjadi seperti berikut ini.

     curl -i 127.0.0.1:8080
     HTTP/1.1 502 Bad Gateway
     Server: nginx
     Date: Wed, 08 Jul 2020 18:00:06 GMT
     Content-Type: text/html
     Content-Length: 150
     Connection: keep-alive
     <html>
     <head><title>502 Bad Gateway</title></head>
     <body>
     <center><h1>502 Bad Gateway</h1></center>
     <hr><center>nginx</center>
     </body>
     </html>

2. Cek log error pada service loadbalancer dan lalukan analisa. disini terlihat "Permission denied" bahwasan nya port 8080 belum bisa forwarding ke webserver.

2020/07/09 03:48:38 [crit] 5692#0: *1 connect() to 127.0.0.1:8080 failed (13: Permission denied) while connecting to upstream, client: 127.xxx.xxx, server: 127.0.0.1, request: "GET /favicon.ico HTTP/1.1", upstream: "http://10.20.21.42:8080/favicon.ico", host: "127.0.0.1:8080", referrer: "http://12.0.0.1:8080/"

3. Lakukan audit pada server loadbalacer.

     sudo cat /var/log/audit/audit.log | grep nginx | grep denied

"type=AVC msg=audit(1594280921.426:2062): avc:  denied  { name_connect } for  pid=5692 comm="nginx" dest=8080 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:http_cache_port_t:s0 tclass=tcp_socket permissive=0"


4. Dari permasalahan diatas port 8080 belum dapat di terus kan atau belum mendapat hak akses maka ketik perintah berikut ini.

  "/usr/sbin/setsebool httpd_can_network_connect true"

*semoga artikel ini dapat membantu*

sumber : https://stackoverflow.com/questions/23948527/13-permission-denied-while-connecting-to-upstreamnginx
https://stackoverflow.com/questions/25235453/nginx-proxy-server-localhost-permission-denied

Comments

Popular posts from this blog

Generating your SSH key in Windows

Pembahasan ini adalah kelanjutan dari " Creating a User Account " bisa teman-teman baca-baca pada halaman sebelum nya disini . Bagian ini saya membahas bagaimana cara nya membuat Public keys pada windows sehingga ketika login sudah tidak menggunakan password dan sangat memudahkan akan tetapi ketika Generate publik keys  di windows tidak bisa digunakan dari Terminal Linux , jika ingin supaya bisa dipergunakan di windows dan linux maka harus membuat public keys di linux. Untuk pembahasan Generate di linux akan saya bahas di slide selanjutnya dan bisa dibaca disini . Step 1. Download Putty terlebih dahulu disini  sesuaikan ke Opetaring System teman-teman Step 2. Setelah di download dan di instal buka Putty Key Generator, key comment, key pass dan confirm pass available bisa di isi ataupun tidak. dan pada saat melakukan Generate kursor temen-temen selalu digerakan supaya bisa sampai terbuat seperti dibawah ini. Step 3. Copy isi dari Public keys yang sudah dibuat dan paste pad...

Creating a User Account

Cara menambahkan user baru pada linux dengan menggunakan private key sangat mudah dan berikut ini cara nya : 1. Tambahkan nama user sesuai pada script dibawah ini     useradd nama_user -m -s /bin/bash 2. Masuk kedalam direktori user     cd /home/nama_user 3. Buat folder .ssh     mkdir .ssh 4. Berikan privilages pada folder tempat public key     chmod 0700 .ssh/ 5. Tambahkan authorized_keys yang mana ini akan berisi public key     touch .ssh/authorized_keys 6. Berikan privilages pada authorized_keys     chmod 0644 .ssh/authorized_keys 7. Berikan kepemilikan folder user     chown -R nama_user .ssh 8. Buka authorized_keys yang sudah di buat diatas lalu masukan blic key user  dan selanjut nya di simpan    nano .ssh/authorized_keys 9.  Cara menyimpan jika menggunaka perintah "nano" pada linux maka "ctrl+x" lalu ketik "Y" dan enter 10. Jika menggunakan perintah "vi" pada centos maka tekan "Esc" lalu "shi...