Selamat Siang,

Posting kali ini, setelah mencoba untuk membuat akses SFTP user hanya bisa di folder yang kita berikan.

User tersebut tidak boleh maen ke folder-folder lainnya.

Requirement:
  • RHEL 6 atau OpenSSH 5.1

*) Kenapa saya menulis requirement tersebut, hal inilah yang menjadi landasan ane mencari tutorial dan bisa mencoba cara ini. Yaitu karena server saya masih menggunakan RHEL 5.5 sedangkan ada kebutuhan user untuk akses SFTP :)

Step-Step:
    1. Mempersiapkan User dan Group
    2. Mempersiapkan Directory
    3. Membuat file init.d untuk sftp
    4. Membuat file config untuk sftp
    5. Membuka firewall untuk port sftp
    6. Akses SFTP

1. Mempersiapkan User dan Group
useradd -G sftpusers -d /ftransferdata -s /sbin/nologin ftransfer

    Keterangan:
       useradd: command untuk membuat user baru
       -G: Parameter untuk  memasukkan user yang baru dibuat ke Group tertentu
       -d: lokasi home direktory,
       -s: Shell option, set ke nologin, agar user tersebut tidak bisa login menggunakan SSH
       ftransfer: nama user yang dibuat

2. Mempersiapkan Directory
-- Jail Directory
(1) cd /home
(2) mkdir datasftp datasftp/ftransfer
(3) chown -R root.root datasftp
(4) chmod -R 755 datasftp/
 
-- User Directory
(5) cd /home/datasftp/ftransfer
(6) mkdir ftransferdata
(7) chown ftransfer.sftpusers ftransferdata/
(8) chmod 755 ftransferdata/


   Keterangan:
   -- Jail Directory: Directory milik root, directory ini yang akan menjadi "/"-nya user SFTP
   (2) : Membuat directory datasftp dan directory user SFTP di dalam folder datasftp,
           dalam hal ini directory yang dibuat adalah "ftransfer"
   (3) : Merubah kepemilikan directory atas datasftp dan directory user (ftransfer) menjadi root
   (4) : Merubah akses folder atas dadtasftp dan folder user (ftransfer)
   -- User Directory: Directory yang akan diakses user (full akses)
   (6) : Membuat directory sesuai dengan home directory user yang dibuat pada step pertama
   (7) : Merubah kepemilikan atas directory menjadi milik user ftransfer dan group sftpusers
   (8) : Merubah hak akses atas directory


3. Membuat file init.d untuk sftp
vi /etc/init.d/sftpd

Isi file tersebut dengan:
#!/bin/bash
#
# chkconfig: 35 60 25
# description: OpenSSH chrooted sftp only daemon
#
# Note that /usr/sbin/sftpd is simply a symlink to /usr/sbin/sshd;
# You are going to need to CREATE that symlink before using this script.
#

pidfile='/var/run/sftpd.pid'

case "${1}" in

start  ) exec -a /usr/sbin/sftpd /usr/sbin/sshd -f /etc/ssh/sftpd_config
         ;;
stop   ) kill -9 $(cat ${pidfile})
         ;;
restart) ${0} stop
         sleep 3
         ${0} start
         ;;
*      ) echo "Usage: ${0} (start|stop|restart)"
         ;;

esac

exit 0

 Rubah kepemilikan dan akses file tersebut:
chown root.root /etc/init.d/sftpd
chmod 755 /etc/init.d/sftpd

4. Membuat file config untuk sftpd
vi /etc/ssh/sftpd_config

    Isikan dengan:
Port 9022
Protocol 2
AddressFamily inet

SyslogFacility AUTHPRIV
LogLevel INFO

PermitRootLogin no

RSAAuthentication no
PubkeyAuthentication no
RhostsRSAAuthentication no
HostbasedAuthentication no
PasswordAuthentication yes
PermitEmptyPasswords no
ChallengeResponseAuthentication no
KerberosAuthentication no
GSSAPIAuthentication no

UsePAM no

PidFile /var/run/sftpd.pid

ChrootDirectory /home/datasftp/%u
Subsystem sftp internal-sftp
    *)SFTP diset mengunakan port 9022.
    Rubah kepemilikan dan akses file tersebut:
chown root.root /etc/ssh/sftpd_config
chmod 600 /etc/ssh/sftpd_config

5.  Membuka Firewall untuk akses sftp
     -A INPUT -p tcp -m state --state NEW -m tcp --dport 9022 -j ACCEPT
     Port yang dibuka mengikuti port SFTP yang sudah diset pada point 4.

6. Akses SFTP dengan user yang sudah dibuat
sftp -oPort=9022 ftransfer@localhost
    Masukkan password jika diminta
    Keterangan:
    sftp: Akses sftp
    -oPort: Parameter untuk menggunakan port
    9022: Port SFTP yang sudah diset pada point 4.
    ftransfer: User SFTP
    localhost: Alamat server, jika diakses dari server lain bisa menggunakan hostname/IP

    Tampilan:
[root@APPZBXTST02 ~]# sftp -oPort=9022 ftransfer@localhost
Connecting to localhost...
ftransfer@localhost's password:
sftp> pwd
Remote working directory: /ftransferdata
sftp> ls
sftp> cd /home
Couldn't canonicalise: No such file or directory
sftp> exit
    Keterangan:
    "Remote working directory: /ftransferdata" : working directory hanya sesuai yang diset di awal
    "Couldn't canonicalise: No such file or directory" : tidak dapat keluar dari home directory

Demikian pengalaman ane hari ini, semoga tulisan ane bisa bermanfaat terutama untuk ane disaat ane lupa, hehe..



Sumber:
Article by:
http://www.linuxquestions.org/questions/blog/anomie-152469/running-an-sftp-only-daemon-on-rhel5-3495/ 

Picture by:
http://cliparts.co/cliparts/ATb/Ko6/ATbKo65Mc.jpg

Single mode sangat bermanfaat dan wajib diketahui oleh seorang Server Administrator. Single mode biasanya digunakan untuk kebutuhan:
  • Troubleshooting saat server tidak bisa me-load OS
  • Reset super user password
  • dan lain lain
Kenapa bisa melakukan hal-hal diatas??
Single mode memungkinkan untuk dapat masuk ke system operasi tanpa ada permintaan login dan otomatis akan masuk sebagai super user.

Berikut Step yang dilakukan untuk dapat masuk ke Single Mode untuk System Operasi Linux, disini saya menggunakan RHEL 6.5, cara ini bisa digunakan juga untuk CentOS (versi gratisannya RHEL).

1. Interrupt boot process dengan menekan sembarang tombol hingga muncul GRUB menu seperti berikut ini.

 
2. Tekan huruf "e" (tanpa tanda petik) 1 kali untuk mengedit GRUB menu

3. Pilih yang ada tulisannya /vmlinuz

4. Tekan huruf "e" (tanpa tanda petik) 1 kali lagi untuk mengedit

5. Tambahkan huruf "s" atau ketik "single" (tanpa tanda petik) lalu tekan Enter

6. Tekan huruf "b" (tanpa tanda petik) untuk boot

7. Done, saat ini kita sudah masuk ke Single Mode, sesuai penjelasan di atas, tanpa login dan kita sudah menjadi user root.


Sama halnya dengan koneksi LAN dimana kita memerlukan MAC address untuk dapat mengenalkan perangkat kita ke switch. Untuk dapat menghubungkan antara Server dengan SAN switch kita memerlukan suatu ID untuk dapat mengenalkan perangkat kita ke SAN switch. Dalam hal ini kita memerlukan apa yang disebut WWN (world wide name).
Berikut cara yang dapat digunakan untuk dapat melihat wwn dari port HBA kita, kali ini saya menggunakan system operasi Linux Red Hat Enterprise Linux 5.4

Step pertama yang dilakukan adalah melihat ada berapa host (port) yang kita miliki.
cat /sys/class/fc_host
ls











Selanjutnya untuk melihat informasi di dalam host, masuk ke salah satu folder host (contoh: host1):
cd host1
ls
*) informasi dari wwn dapat dilihat pada file dengan nama port_name

Atau kita dapat melihat secara langsung dimanapun working directori kita dengan menggunakan command:
cat /sys/class/fc_host/hostX/port_name


*) dimana X adalah nama host dari port HBA kita.



Demikian, semoga dapat memberikan sedikit ilmu untuk rekan-rekan.
Jika ada komentar, koreksi, silahkan meninggalkan pesan atau menghubungi saya melalui kontak di atas.

Sama halnya dengan koneksi LAN dimana kita memerlukan MAC address untuk dapat mengenalkan perangkat kita ke switch. Untuk dapat menghubungkan antara Server dengan SAN switch kita memerlukan suatu ID untuk dapat mengenalkan perangkat kita ke SAN switch. Dalam hal ini kita memerlukan apa yang disebut WWN (world wide name).
Berikut cara yang dapat digunakan untuk dapat melihat wwn dari port HBA kita pada server AIX.

1. Lihat terlebih dahulu ada berapa adapter di server tersebut
lscfg | grep fcs*
 *) dari informasi diatas, server kita mempunyai 6 port HBA dengan nama fcs0, fcs1, fcs2, fcs3, fcs4 dan fcs5


2. Jalankan command loop berikut untuk melihat list secara langsung wwn dari port HBA

for i in {0..5};do
echo fcs$i
lscfg -vl fcs$i | grep Network
done
 


Demikian yang dapat saya share kali ini, semoga membantu dan jika ada kekurangan, kekeliruan, mohon tidak segan untuk menegur saya.



Sama halnya dengan koneksi LAN dimana kita memerlukan MAC address untuk dapat mengenalkan perangkat kita ke switch. Untuk dapat menghubungkan antara Server dengan SAN switch kita memerlukan suatu ID untuk dapat mengenalkan perangkat kita ke SAN switch. Dalam hal ini kita memerlukan apa yang disebut WWN (world wide name).
Berikut cara yang dapat digunakan untuk dapat melihat wwn dari port HBA kita:

Windows Server 2000 dan Windows Server 2003
- Download fcinfo.exe di: fcinfo
- Jalankan command berikut pada command prompt
fcinfo

Hasil dari script tersebut adalah:
 *) jika memerlukan informasi detail bisa ditambahkan /details menjadi:
fcinfo /details


Windows Server 2008
Bawaan dari system operasi, untuk membukanya arahkan:
Start > Administrative Tools > Storage Explorer
Hasilnya adalah sebagai berikut:





















Windows Server 2012
Storage Explorer sudah di tiadakan pada Windows Server 2012, sebagai penggantinya kita dapat menggunakan PowerShell untuk mendapatkan WWN. Command yang digunakan pada powershell adalah:
Get-InitiatorPort