Featured

Building and Training Your Own SLM

Creating an independent Small Language Model (SLM) is a rewarding project that bridges the gap between deep learning theory and practical, local application. By keeping your model local, you retain full control over your data and system architecture. Below is a structured approach to building and training your own model from the ground up on a local Ubuntu environment. Before you begin, ensure your development environment is optimized for local computation. A robust setup with a capable GPU (such as an NVIDIA RTX series) and sufficient RAM is recommended for efficient training. Use Ubuntu for a stable, customizable development environment. Verify your environment with the following commands:    * Update your package lists:  sudo apt update.    * Install pip:  sudo apt install python3-pip    *I nstall necessary libraries:  pip install torch tiktoken An SLM relies on the quality of its input data. For a personal AI, curated, factual...

How to Set Up an SFTP Server on Linux

SFTP (Secure File Transfer Protocol) is a secure alternative to FTP, allowing for encrypted file transfers over SSH. It is the preferred method for transferring files securely between machines. 

In Linux, setting up an SFTP server is simple, as it's often built into the default SSH server package. In this guide, we'll walk you through the process of setting up and configuring an SFTP server on Linux.



Most Linux distributions come with the OpenSSH package pre-installed. If it's not, you can easily install it:


For Debian/Ubuntu:


sudo apt update


sudo apt install openssh-server



For CentOS/Red Hat:


sudo yum install openssh-server



For Fedora:


sudo dnf install openssh-server



Configuring SFTP


You don't need to install a separate package for SFTP since it's integrated into the SSH server. However, you might want to configure specific directories for SFTP or restrict users.


To do this, edit the SSH configuration:


sudo nano /etc/ssh/sshd_config



To create an SFTP-only user group and set up a directory for them:


Match Group sftpusers

   ChrootDirectory /sftp/%u

   ForceCommand internal-sftp

   AllowTcpForwarding no

   PasswordAuthentication yes

   PermitRootLogin no



Make sure to create the `/sftp` directory and any user-specific directories within it, adjusting permissions accordingly.



To create an SFTP-only user:


sudo useradd -m -G sftpusers sftpuser

sudo passwd sftpuser

sudo mkdir /sftp/sftpuser

sudo chown sftpuser:sftpusers /sftp/sftpuser





Replace `sftpuser` with your desired username.



After making your configurations, restart the SSH server:


sudo systemctl restart sshd



Connect to your SFTP server using a client or the command line


sftp sftpuser@your_server

If everything is configured correctly, you should be able to log in and transfer files securely.

Comments