GNU/Linux >> Belajar Linux >  >> Linux

“530 Sesi non-anonim harus menggunakan enkripsi” – saat menggunakan curl

Masalahnya

“Sesi non-anonim harus menggunakan enkripsi” terjadi saat menjalankan perintah curl sebagai pengguna root:

# curl -v -k --ftp-ssl --ftp-pasv ftp://192.168.X.X:990/ --user hcpa:XXX
* About to connect() to 192.168.X.X port 990 (#0)
* Trying 192.168.X.X... connected
* Connected to 192.168.X.X (192.168.X.X) port 990 (#0)
< 220 FTP SERVER INFOVALMER.
> USER hcpa
< 530 Non-anonymous sessions must use encryption.
* Access denied: 530
* Closing connection #0
curl: (67) Access denied: 530

Namun itu berfungsi saat menjalankan perintah curl yang sama dengan pengguna non-root:

# exit
logout
# su - testuser
$ curl -v -k --ftp-ssl --ftp-pasv ftp://192.168.X.X:990/ --user hcpa:XXX
* About to connect() to 192.168.10.1 port 990 (#0)
* Trying 192.168.X.X... connected
* Connected to 192.168.X.X (192.168.X.X) port 990 (#0)
< 220 FTP SERVER INFOVALMER.
> AUTH SSL
< 234 Proceed with negotiation.
* Initializing NSS with certpath: /etc/pki/nssdb
* warning: ignoring value of ssl.verifyhost
* skipping SSL peer certificate verification
* NSS: client certificate not found (nickname not specified)
* SSL connection using SSL_RSA_WITH_3DES_EDE_CBC_SHA
* Server certificate:
* subject: ,CN=ftp-infovalmer,OU=VALORADOR,O=INFOVALMER,L=BOGOTA,ST=CUNDINAMARCA,C=CO
* start date: sep 10 22:11:55 2015 GMT
* expire date: sep 09 22:11:55 2018 GMT
* common name: ftp-infovalmer
* issuer: @ ,CN=ftp-infovalmer,OU=VALORADOR,O=INFOVALMER,L=BOGOTA,ST=CUNDINAMARCA,C=CO
> USER hcpa
< 331 Please specify the password.
> PASS XXX
< 230 Login successful.

Solusinya

Tambahkan $LD_LIBRARY_PATH variabel lingkungan di /root/.bash_profile .

/usr/bin/curl mencari direktori /apps/MATLAB/v81/bin/glnxa64/ saat mencari library libcurl.so.4:

# ldd /usr/bin/curl
linux-vdso.so.1 => (0x00007fffc9f7d000)
libcurl.so.4 => /apps/MATLAB/v81/bin/glnxa64/libcurl.so.4 (0x00007f291de7b000) <-----
libidn.so.11 => /lib64/libidn.so.11 (0x0000003201600000)
libldap-2.4.so.2 => /lib64/libldap-2.4.so.2 (0x00000033afc00000)
librt.so.1 => /lib64/librt.so.1 (0x00000033ab400000)
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00000032bba00000)
libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00000032bc200000)

Dalam keadaan normal, /usr/bin/curl seharusnya mencari direktori /usr/lib64/ saat mencari perpustakaan libcurl.so.4:

# ldd /usr/bin/curl
linux-vdso.so.1 => (0x00007fff8dbe1000)
libcurl.so.4 => /usr/lib64/libcurl.so.4 (0x00000033ac400000) <-----
libidn.so.11 => /lib64/libidn.so.11 (0x0000003201600000)
libldap-2.4.so.2 => /lib64/libldap-2.4.so.2 (0x00000033afc00000)
librt.so.1 => /lib64/librt.so.1 (0x00000033ab400000)
libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00000032bba00000)
libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00000032bc200000)

1. Menambahkan variabel lingkungan $LD_LIBRARY_PATH di /root/.bash_profile akan memengaruhi semua aplikasi yang berjalan sebagai pengguna root, jadi hapus LD_LIBRARY_PATH di /root/.bash_profile terlebih dahulu;

2. Kemudian tentukan jalur pencarian run-time saat mengkompilasi aplikasi matlab, silakan berkonsultasi dengan vendor aplikasi matlab dan periksa apakah ada cara untuk mencapainya.

Atau
Setel LD_LIBRARY_PATH saat menjalankan program, misalnya:

# LD_LIBRARY_PATH= ./app_test

"LD_LIBRARY_PATH=[PATH]b" hanya berlaku saat menjalankan perintah di atas, tidak akan memengaruhi aplikasi lain.


Linux
  1. Gunakan Beberapa Sesi Byobu, Sambil Mengabaikan Sesi Tmux yang Tidak Terkait?

  2. Bagaimana cara mengatur curl untuk menggunakan proxy secara permanen?

  3. Menggunakan ikal untuk mengirim email

  1. Menggunakan sertifikat klien dalam perintah Curl

  2. Kesalahan saat menggunakan glibc versi terbaru

  3. Penggunaan / saat menggunakan cd

  1. Apa itu Perintah cURL Dan Bagaimana Cara Menggunakannya?

  2. Mengotomatiskan Permintaan Web Menggunakan Curl?

  3. Pemeriksaan Kesehatan Halaman Web Menggunakan Curl?